私はweb-view
会社にベースアプリと他のネイティブアプリを持っています。必要に応じてユーザーを他のアプリにリダイレクトするために使用universal links
していました (他のアプリはまだサポートuniversal links
しています - からのリンクを押すことでそれらを実行できますApple Notes app
)。WKWebView
最近、 (から) に移行しましたUIWebView
。これにより、より優れたエクスペリエンスが提供されます。しかし、更新Universal Links
が機能しなくなった後、ユーザーがアプリ内のリンクを押しても他のアプリを起動できません。
ドキュメントによると:
「ユニバーサル リンクを使用すると、iOS 9 ユーザーは、メール、メッセージ、および他のアプリ。"
WKWebView
を取り扱っていないようですUniversal Links
。私の質問は、特別な設定が欠けているのでしょうか、WKWebView
それともWebKit
バグですか? 提供されたとおりにWebビューを作成しています:
WKWebViewConfiguration *config = [[WKWebViewConfiguration alloc] init];
config.allowsInlineMediaPlayback = YES;
config.processPool = // Here I'm using shared process pool
self.webView = [[WKWebView alloc] initWithFrame:CGRectZero configuration:config];
self.webView.translatesAutoresizingMaskIntoConstraints = NO;
self.webView.clipsToBounds = YES;
self.webView.allowsBackForwardNavigationGestures = YES;
if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"9.0")) {
self.webView.allowsLinkPreview = YES;
}
[self addSubview:_webView];
問題を示すために、単純なアプリ ( https://github.com/apan06/UniversalLinks - 非常に単純な初期化) で単純なリポジトリを作成しました。2 つの Web ビューがありますWKWebView
。UIWebView
両方とも、リンクのみが存在する単純な html を使用しTwitter
ます。WKWebView
ページをロードするだけTwitter
です。一方、アプリをUIWebView
開きTwitter
ます。ただ覚えておいてください:-Twitter
アプリがインストールされたデバイスでテストしTwitter app
ます。Twitterを持っていないか気に入らない場合は、リンクを変更できます-私はでテストしていましiPhone 6
たiOS 9.2.1
ありがとう!