From 778f6bb79f27d47715ff4cb9340376de6d228b46 Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Thu, 3 Jul 2025 22:18:02 +0800 Subject: [PATCH] :sparkles: Android deeplinking --- android/app/src/main/AndroidManifest.xml | 11 ++++- ios/Runner.xcodeproj/project.pbxproj | 13 ++++- ios/Runner/Info.plist | 62 ++++++++++++------------ web/.well-known/assetlinks.json | 12 +++++ 4 files changed, 64 insertions(+), 34 deletions(-) create mode 100644 web/.well-known/assetlinks.json diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index 7ddd838..694cefd 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -41,7 +41,16 @@ - + + + + + + + + + + diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index c738591..85d5728 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -3,7 +3,7 @@ archiveVersion = 1; classes = { }; - objectVersion = 54; + objectVersion = 77; objects = { /* Begin PBXBuildFile section */ @@ -525,10 +525,14 @@ inputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist", ); + inputPaths = ( + ); name = "[CP] Copy Pods Resources"; outputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist", ); + outputPaths = ( + ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; @@ -586,10 +590,14 @@ inputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); + inputPaths = ( + ); name = "[CP] Embed Pods Frameworks"; outputFileListPaths = ( "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); + outputPaths = ( + ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; @@ -772,6 +780,7 @@ ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Solian; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking"; IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -1202,6 +1211,7 @@ ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Solian; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking"; IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", @@ -1229,6 +1239,7 @@ ENABLE_BITCODE = NO; INFOPLIST_FILE = Runner/Info.plist; INFOPLIST_KEY_CFBundleDisplayName = Solian; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking"; IPHONEOS_DEPLOYMENT_TARGET = 13.0; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist index ec1da78..cfe81e5 100644 --- a/ios/Runner/Info.plist +++ b/ios/Runner/Info.plist @@ -2,16 +2,10 @@ - CLIENT_ID - 961776991058-stt7et4qvn3cpscl4r61gl1hnlatqkig.apps.googleusercontent.com - REVERSED_CLIENT_ID - com.googleusercontent.apps.961776991058-stt7et4qvn3cpscl4r61gl1hnlatqkig - PLIST_VERSION - 1 + AppGroupId + $(CUSTOM_GROUP_ID) BUNDLE_ID dev.solsynth.solian - ITSAppUsesNonExemptEncryption - CADisableMinimumFrameDurationOnPhone CFBundleDevelopmentRegion @@ -32,31 +26,46 @@ $(FLUTTER_BUILD_NAME) CFBundleSignature ???? + CFBundleURLTypes + + + CFBundleTypeRole + Editor + CFBundleURLSchemes + + ShareMedia-$(PRODUCT_BUNDLE_IDENTIFIER) + + + CFBundleVersion $(FLUTTER_BUILD_NUMBER) - CFBundleURLTypes - - - CFBundleTypeRole - Editor - CFBundleURLSchemes - - ShareMedia-$(PRODUCT_BUNDLE_IDENTIFIER) - - - + CLIENT_ID + 961776991058-stt7et4qvn3cpscl4r61gl1hnlatqkig.apps.googleusercontent.com + ITSAppUsesNonExemptEncryption + LSRequiresIPhoneOS NSCalendarsUsageDescription Grant access to Calander help us to shows Solar Calander with your own events. NSCameraUsageDescription Grant access to Camera will allow Solian take photo or video for your post. + NSFaceIDUsageDescription + Allow the Solar Network verify your ownership of the logged in account and continue your action quickly. NSMicrophoneUsageDescription Grant access to Microphone will allow Solian record audio for your post. NSPhotoLibraryAddUsageDescription Grant access to Photo Library will allow Solian download photo to album for you. NSPhotoLibraryUsageDescription Grant access to Photo Library will allow Solian upload photo or video for your post. + NSUserActivityTypes + + INStartCallIntent + INSendMessageIntent + + PLIST_VERSION + 1 + REVERSED_CLIENT_ID + com.googleusercontent.apps.961776991058-stt7et4qvn3cpscl4r61gl1hnlatqkig UIApplicationSupportsIndirectInputEvents UIBackgroundModes @@ -75,24 +84,13 @@ UISupportedInterfaceOrientations UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight UISupportedInterfaceOrientations~ipad - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight - - NSFaceIDUsageDescription - Allow the Solar Network verify your ownership of the logged in account and continue your action quickly. - AppGroupId - $(CUSTOM_GROUP_ID) - NSUserActivityTypes - - INStartCallIntent - INSendMessageIntent + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown diff --git a/web/.well-known/assetlinks.json b/web/.well-known/assetlinks.json new file mode 100644 index 0000000..9a70052 --- /dev/null +++ b/web/.well-known/assetlinks.json @@ -0,0 +1,12 @@ +[ + { + "relation": ["delegate_permission/common.handle_all_urls"], + "target": { + "namespace": "android_app", + "package_name": "dev.solsynth.solian", + "sha256_cert_fingerprints": [ + "57:0C:A4:E6:1F:57:DF:56:70:42:05:4B:43:E2:DD:9E:00:E6:77:C3:D8:3C:5F:D5:A0:05:59:30:5A:85:F9:BC" + ] + } + } +]