2016-06-29 10 views
5

これまでに質問されていることは知っていますが、ここやAppleフォーラムやさまざまなハウツーウェブサイトで試したことがありますが、私の知恵の終わり。私は誰かがどこかでミスを見つけられることを願っています。ユニバーサルリンクが働くことができない

私はiPhone 6SでXCode 7.3.1とiOS 9.3.2を使っています。

会員センターのApp IDを ID:com.hotelplanner.hotelplanner

のApp IDは准を持っています。ドメインを有効にしました

Assocを使用した開発プロビジョニングプロファイル。ドメイン有効 iOSチームプロビジョニングプロファイル:com.hotelplanner.hotelplanner

XCodeビルド設定で選択したデバッグプロビジョニングプロファイルは、メンバーセンターで有効になっているアプリケーションドメインと一致します。 https://www.hotelplanner.com/.well-known/apple-app-site-association -vアプリnancysmithwpの$カール:

Xcodeの機能 関連するドメイン Applinks:www.hotelplanner.com

Xcodeの資格

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 
<plist version="1.0"> 
<dict> 
    <key>com.apple.developer.associated-domains</key> 
    <array> 
     <string>applinks:www.hotelplanner.com</string> 
    </array> 
</dict> 
</plist> 

リンゴアプリサイト会合 タイタンのカールダウンロードを *試す69.56.156.14 ... * www.hotelplanner.com(69.56.156.14)ポート443(#0)に接続 * TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384を使用してTLS 1.2接続 *サーバ証明書:* .hotelplanner.com *サーバ証明書:シマンテッククラス3セキュアサーバーCA - G4 *サーバ証明書:ベリサインクラス3公共プライマリ認証局 - G5

> GET /.well-known/apple-app-site-association HTTP/1.1 
> Host: www.hotelplanner.com 
> User-Agent: curl/7.43.0 
> Accept: * 
> 
< HTTP/1.1 200 OK 
< Content-Type: application/json 
< Last-Modified: Wed, 29 Jun 2016 14:05:46 GMT 
< Accept-Ranges: bytes 
< ETag: "f35d6255fd2d11:0" 
< Vary: Accept-Encoding,User-Agent 
< Server: HOTELPLANNER.COM 
< P3P: CP="NOI DSP COR LAW NID CUR ADMa OUR DELa IND PHY ONL UNI PUR COM NAV STA" 
< Date: Wed, 29 Jun 2016 17:24:51 GMT 
< Content-Length: 169 
< 
{ 
    "applinks": { 
    "apps": [], 
    "details": [ 
     { 
     "appID": "M57RZA2QX5.com.hotelplanner.hotelplanner", 
     "paths":[ "/Hotels" ] 
    } 
    ] 
    } 
} 

私は自分のiOSを設定しました9.0へのデプロイメントターゲットは、それを署名する必要はありません。

URL:www.hotelplanner.com/Hotels/2446-in-Nassau-Bahamas.htmlによると、検証ツールはhttps://search.developer.apple.com/appsearch-validation-toolになり、アプリサイトの関連付けファイルが渡されます。ディープリンクに失敗しました。ディープリンクに必要な情報を抽出できませんでした。

メモ内の同じリンクが常にSafariで開きます。リンクを長押しすると、私には選択肢はありません。

myAppDelegateにはアプリケーションがあります:continueUserActivity:restorationHandler が実装されています。

-(BOOL) application:(UIApplication*) application continueUserActivity:(nonnull NSUserActivity *)userActivity restorationHandler:(nonnull void (^)(NSArray * _Nullable))restorationHandler{ 

    if (userActivity.activityType == NSUserActivityTypeBrowsingWeb){ 
     NSLog(@"continueUserActivity"); 
    } 
    return NO; 
} 

デバイスでアプリケーションを起動すると、コンソールにエラーはありません。

追加する編集:
私はこれ以上の洞察力を得ることができるかどうかを確認するためにwebcredentialsを実装し、私はwww.hotelplanner.comが私の資格ではありません、コールバックでエラーが出るが、それはそこにある、とそれに対するターゲットチェックボックスが設定されます。また、資格ファイルのドメインを使用するように、最初のパラメータをNULLにしておくと、「ドメインが指定されていません」というエラーが表示されます。

entitlements

+0

はあなたが初めてインストール(最初にそれを削除して再インストール)のログXcodeのデバイスにおけるエラーの任意の並べ替えを得るのですか?このようなものは何ですか? 'Sep 21 14:27:01 Derricks-iPhone swcd [2044] :2015-09-21 02:27:01.878907 PM [SWC] ###拒否URL' https://examplecustomdomain.com/apple-app-site 'authメソッド' NSURLAuthenticationMethodServerTrust 'の-association:-6754/0xFFFFE59E kAuthenticationErr' –

+0

デバイスログに表示されるのは、1週間前のクラッシュです。アプリのインストール時に何も印刷されていないようです。 – Nancy

+0

ええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええええば、ここに私が見たいものがあります:https://www.youtube.com/watch?v=rHQZy_WFdEs –

答えて

1

私はXCodeのバグであるように思われ、過去に同様の問題を、持っていました。私はユニバーサルリンクを実装する前に同じデバイスを使ってビルドをテストしていましたが、実装しても機能しませんでした。それを再インストールするアプリ&をアンインストールすることで、私はリンクが動作するようになりました。

私の前提は、アプリケーションのインストール時にOSにリンクが作成されていることです。

+0

ありがとう、それは助けてくれませんでした。 – Nancy

0

あなたの状況に同じ問題があり、私は解決しました。 リンゴのアプリ検索API検証ツール(https://search.developer.apple.com/appsearch-validation-tool)、アクションが必要です ディープリンクに必要な情報を抽出できませんでした。推奨されるディープリンクの実装方法を学んでくださいが、それは動作します。

["/ Hotels"]から[paths]:["/ Hotels/*"]に変更します。

私はうまくいきます。

+0

ありがとうございますが、それは助けてくれませんでした。 – Nancy

+0

私はあなたのアプリケーションのデリゲートコードを見せてください –

+0

私はちょうど今そこに空のメソッドがあります.-(BOOL)アプリケーション:(UIApplication *)アプリケーションcontinueUserActivity :(非NSUserActivity *)userActivity restorationHandler :(null以外のvoid(^)(NSArray * _Nullable))restorationHandler { if(userActivity。アクティビティタイプ== NSUserActivityTypeBrowsingWeb){ NSLog(@ "continueUserActivity"); } \t return NO; } – Nancy

2

私は最終的にAppleに最初の技術サポートを依頼し、これを解決することができました。コード署名で、Any SDKの下のエントリは空でした。私はこれらのエントリを削除し、すべての魅力のように動作します。

Bad Code Signing Entitlements Section

関連する問題