デバイス:iPhone 5/iOS 9.
iOSアプリがあり、これをwebsiteから起動する必要があります。カスタムURLスキームを介してそれを行うことができました。
Webサイトの「Open App」ボタンをクリックすると、「SafariはMyAppを開きたい」という警告ダイアログが表示されます。
[〜#〜] ok [〜#〜]をクリックすると、すべてが問題ありません。アプリはウェブサイトから完全に起動します。
キャンセルをクリックすると、最初はアプリを起動できなくなりますが、これは正しいです。
Webサイトで「Open App」ボタンをもう一度クリックすると、同じ「SafariがMyAppを起動したい」という警告ダイアログが表示されますもう一度、- これは起きていません。
代わりに、「ページを開くことができません-アドレスが無効であるためSafariはページを開くことができません」というダイアログが表示されます。
私の想定では、Webサイトでそのリンク(カスタムURLスキームを介してアプリを起動できる)をクリックするたびに、「safariがMyAppを開きたい」という警告ダイアログが常に表示されます。
ここに何が欠けていますか?事前にあなたの助けに感謝します。
これは既知の動作です。
facebook://feeds
をタップして開いた場合、Safariはそのためのfacebook
スキームをブラックリストに登録しませんSafariタブ。そのタブでfacebook://profile
、facebook://feeds
、facebook://settings
などを開くことができます。
ただし、[キャンセル]をクリックすると、そのスキームでそのタブのみのURLを使用できなくなります。つまり、 facebook://profile
を開くことができます。これは、そのタブでブラックリストに登録されているためです。
新しいタブを開いて、もう一度試してください。そのタブのブラックリストに登録されなくなります。
ただし、Apple=がユーザーに次のようなオプションを要求した場合は、はるかに優れていたはずです。
一度拒否します。常に拒否します。常に許可する
しかし、彼らがそうするなら、ユーザーがホスト/スキームごとに動作をカスタマイズするための代替方法を提供する必要があると思います。明らかにAppleはそれを許可したくない。