私はFirebaseDynamic Linkを使用してアプリを共有し(> = IOS 9)、イベントにユーザーを招待しています(つまり、アプリをお持ちの場合はDeepLinkでイベントに参加でき、お持ちでない場合は参加します)イベントに参加する前に、アプリをダウンロードするためにアプリストアに送信します)。
Firebaseのドキュメントの手順に従います:
これが最初のインストールでリンクを取得するための私のコードです:
didFinishLaunchingWithOption
:
FIROptions.default().deepLinkURLScheme = "com.jerem.ProjectAlphaSasasa"
// "com.jerem.ProjectAlphaSasasa" is my app bundle Identifier
FIRApp.configure()
firebaseのドキュメントに基づいて、最初に開いたときに、次の関数を使用しています。
//MARK: First entry
//when your app is opened for the first time after installation on any version of iOS.
func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any]) -> Bool {
print("00000000000000000")
FIRCrashMessage("Link during first installation")
downloadEventWithDeepLink = true
downloadUrl = url
return application(app, open: url, sourceApplication: nil, annotation: [:])
}
//same as previous but for older version ios 8 (not relevant)
func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
let dynamicLink = FIRDynamicLinks.dynamicLinks()?.dynamicLink(fromCustomSchemeURL: url)
if let dynamicLink = dynamicLink {
downloadEventWithDeepLink = true
downloadUrl = dynamicLink.url
return true
}
return false
}
私の場合、downloadEventWithDeepLink
は、ユーザーがアプリにログインした後にチェックするフラグ(グローバル)です(そこでdownloadUrl変数を使用します)。セットアップで何が間違っていますか?
また、デバッグ方法もわかりません。 XcodeでAppstoreの最初のインストールをシミュレートする方法はありますか?以前の関数(Open Url)が呼び出されているかどうかを確認するには?
ご協力いただきありがとうございます!
実装をテストするには、アプリを削除してリンクをクリックします。AppStoreに移動したら、そこからアプリをインストールせず、代わりにXcodeからインストールすると、動的リンク呼び出しが受信されます。
推奨事項として、それについてはあまり心配しないでください。動的リンクがインストールされている場合にアプリが開くかどうかのテストに集中する必要があります。アプリが起動したときと閉じたときに機能することをテストします。
アプリへのリダイレクトで問題が発生した場合は、バンドルIDをURLタイプに登録し、[機能]タブでドメインを_applinks:your_dynamic_links_domain
_として追加したことを確認してください。カスタムドメインを使用している場合は、それをinfo.plistに登録する必要もあります。
プロジェクトでFIROptions.default().deepLinkURLScheme
変数を設定したことがなく、すべて正常に機能します