2017-02-21 4 views
1

iOS開発の新機能です。私はユニバーサルリンクをiOS AppにASP.netアプリケーションで実装しています。
Associated Domainsの機能でアソシエートドメインを定義しました。 applinks:www.abcd.com
また、Apple Developer AccountのApp Idで設定します。私はアプリの作業はすべて設定されていると思う。apple-app-site-associationファイルを設定してサーバにアップロード

apple-app-site-associationファイルの問題だと思います。

私は今、私はここで立ち往生しています

{ 
    "applinks": { 
    "apps": [], 
    "details": [ 
    { 
     "appID": "8T8932TY.com.AppName”, 
     "paths": ["*"] 
    } 
    ] 
    } 
} 

以下のような単純なテキストファイルで、JSONを書かれています。私のアプリケーションはiOS 9以上をターゲットにしています。私はapple-app-site-associationという名前を付けてこのファイルを拡張したのは混乱しています。新しい証明書でサインインする必要があるかどうか。そしてそれをどのようにサーバー側にアップロードしますか?

私を助けてください。私はこれをたくさん探していますが、満足のいく回答は得られません。 AppIDの/ AppNameはのための実際の値に置き換えた場合

おかげ

答えて

3

あなたの例JSONは正常に見えます。あなたが扱うルートについては具体的にする必要があるかもしれませんが、それはあなた次第です。ルート上のすべてのリンクに対してアプリを開くのではなく、処理できるチャンスがあるルートだけを処理しようとする方がよいそれが真実でないと判明した場合には、ユーザーを再びSafariに蹴り出す。

apple-app-site-associationファイルにはファイル拡張子を含めないでください。サイトのルートであるhttps://example.com/apple-app-site-associationおよび/またはhttps://example.com/.well-known/apple-app-site-associationから配信する必要があります。

あなたはiOS 9以上をサポートしていると言っています。最初に確認された.well既知のルートを確認するための変更はiOS 9.3に付属しています。したがって、そのOSの下でサポートしたい場合は、両方の場所にファイルを置く。詳細については、this answerを参照してください。

ファイルが正しいMIMEタイプで配信されることも重要です。ユニバーサルリンクの場合はapplication/jsonとして配信され、署名/暗号化は必要ありません。通常、サーバーはファイル拡張子からMIMEタイプを判断するため、適切なMIMEタイプを提供するには、ウェブサーバーの設定に慣れていないと少し迷惑をかけることがあります。 iOSは拡張子の付いたURLをチェックしないので、拡張子を付けることはできません。また、(IIRC)のリダイレクトは許可されていないので、それを行うことで偽装することはできません。

これは、達成しようとしていることの要約ですが、その方法は使用しているWebサーバーによって異なります。 IISと思われるASPアプリケーションの場合は、this question and its answersがウェブサーバーを正しく設定するのに役立ちます。ファイルをそのサーバーのルートにアップロードする方法の詳細は、それをどのように設定したかによって大きく異なります。

+0

こんにちは@Josh私はapple-app-site-associationファイルのMIMEタイプを設定しました。すべての設定がよさそうだ。しかし、私が開いていないリンクアプリをクリックすると、そのURLはサファリで開きます。可能性のあるバグを提案してください。 –

+0

可能性のある問題はいくつかあります。ユニバーサルリンクが正しく設定されていても、Safariで追跡されたリンクがアプリにあなたを蹴飛ばすとは限りません。サポートされているリンクを使用して自分自身にiMessageを送信してください。 –

+0

[この回答](http://stackoverflow.com/a/32751734/1679697)には、実際にユニバーサルリンクに続くいくつかの可能性のある問題の詳細が記載されています。 –

4

このapple-app-site-associationファイルの拡張子はありません。これは単純なファイルです。あなたは、ファイルの場所を意味し、ドメインのトップレベルでそれをホストする必要があり、あなたがそれをホストしたら、あなたが参照してください詳細な情報については、このリンクにhttps://branch.io/resources/aasa-validator/

を使用して検証/確認することができますhttps://www.abcd.com/apple-app-site-association次のようになります。https://blog.branch.io/how-to-setup-universal-links-to-deep-link-on-apple-ios-9/

+0

バリデータを提供してチェックしましたが、すべてがうまく表示されていますが、1つのエラーが表示されています _www.abcxyz.com - このドメインにはいくつかの検証問題があります。あなたはここに欠けているものを私に助けてくれますか? 回答ありがとうございました –

+0

@DaveCバリデーションの問題がある場合、バリデーターは、 "...このドメインにはいくつかのバリデーションの問題があります" – Vasanth

関連する問題