アプリをBranch.ioと統合しているときにSafariで問題が発生しました(iOS 11でこれをテストしましたが、他のバージョンでも問題が発生する可能性があります)。
基本的に、アプリをインストールし、SafariまたはChromeでクイックリンクを開くと、すべてが正常に機能し、アプリでリンクを開くよう求めるプロンプトが表示されます。ただし、アプリをアンインストールして、Safariのリンクをタップすると、次のメッセージが表示されます。
[OK]ボタンをタップすると、必要な動作であるAppstoreを開くためのプロンプトが表示されます。 「アドレスが無効なため、Safariでページを開くことができません」というメッセージが表示されないようにする方法はありますか?アプリをインストールせずにChromeでリンクを開いてみましたが、すべて正常に動作します。
公式のセットアップガイドを使用してURIスキームを入力しましたが、ユニバーサルリンクを自分で処理しているため無効にしました。これが問題を引き起こしている可能性がありますか?
アーロンfrom Branch.io here
アプリがインストールされていない場合、BranchはURIスキームを介してアプリを起動しようとしているため、おそらくこのエラーが発生しています。 iOS 9.2以降、AppleはディープリンクのURIスキームを公式にサポートしなくなりました。開発者は、iOSで同等の機能を得るためにユニバーサルリンクを実装することを強くお勧めします。
具体的には、カスタムURIスキームには重大な欠点があります。最も顕著なのは、次の2つの状況を簡単に処理できないことです。
このため、ブランチダッシュボードでユニバーサルリンクを有効にすることをお勧めします。必要なことは、バンドルIDとアプリプレフィックスを指定するだけです。BranchがAASAファイルをホストします。
私もこの問題を抱えていましたが、Branch TestアプリのTestセクションの指示に従って、Safariの警告なしにアプリを開くことができました。
https://github.com/BranchMetrics/ios-branch-deep-linking/tree/master/Branch-TestBed-Swift#test
1. If the app was installed on the test device already:
* Delete the app from the device
* Clear Safari web content, history and cookies (Settings > Safari > Clear History and Website Data)
* Reset the device's IDFA (Settings > Privacy > Advertising > Reset Advertising Identifier...)
2. Create a Marketing link from the Branch dashboard
3. Paste the link into Notes on an iPhone
4. Tap the link - you will get redirected to the web page
5. ...
それが誰かを助けることを願っています。
Appleダッシュボード: https://developer.Apple.com/account/ios/identifier/bundle からのこれらのIDとプレフィックス
短い場合は、ファイルhttps://yourdomain.com/.well-known/Apple-app-site-association
(.jsonなし)を作成します。
ファイルの内容(それは私のもので、どちらのオブジェクトが正確に必要かわからないので、両方を追加しました):
{
"applinks": {
"apps": [],
"details": [
{
"appID": "YOURPREFIX.com.your.id",
"paths": [ "*" ]
},
{
"appID": "com.your.id",
"paths": [ "*" ]
}
]
}
}
エラーがなく、アプリを自動的に開くことで、基本的な作品リンクの誰かを助けることを願っています。