アップロードする手順は何ですかApple-app-site-associationサーバー内のファイル。 stg1.example.comは、ユニバーサルリンクを行う必要があり、そのルートパスにファイルをアップロードする必要があるWebサイトです。iOSのユニバーサルリンク用にアップロードするサービスを作成する方法。サーバーにjsonフォーマット済みファイルをアップロードする方法は?
Apple-app-site-association
ファイルは、https://stg1.example.com/Apple-app-site-associationで、リダイレクトなしでHTTPS
経由でアクセスできる必要があります。
ファイルは次のようになります。
{
"applinks": {
"apps": [ ],
"details": [
{
"appID": "{app_prefix}.{app_identifier}",
"paths": [ "/path/to/content", "/path/to/other/*", "NOT /path/to/exclude" ]
},
{
"appID": "TeamID.BundleID2",
"paths": [ "*" ]
}
]
}
}
例のデモファイル
{
"applinks": {
"apps": [],
"details": [
{
"appID": "M8HBL5W4VV.com.Universal-Links",
"paths": [ "/iOS-Universal-Links/*"]
}
]
}
}
[〜#〜] note [〜#〜]-追加しない.json
からApple-app-site-association
ファイル名。
キーは次のとおりです:apps
:値として空の配列が必要であり、存在する必要があります。これは、Appleが望んでいる方法です。details
:辞書の配列で、WebサイトでサポートされているiOSアプリごとに1つです。各辞書には、アプリ、チーム、バンドルIDに関する情報が含まれています。
パスを定義するには3つの方法があります:Static
:特定のリンクを識別するために、サポートされているパス全体がハードコーディングされています。/static/termsWildcards
:*を使用して、動的パスを一致させることができます。/books/*は、任意の著者のページへのパスと一致します。 ?特定のパスコンポーネント内、たとえばbooks/1? IDが1で始まる書籍と一致させるために使用できます。Exclusions
:パスの前にNOTを付けると、そのパスは一致から除外されます。
配列内でパスが言及される順序は重要です。以前のインデックスは優先度が高くなります。パスが一致すると、評価は停止し、他のパスは無視されます。各パスでは大文字と小文字が区別されます。
アプリでサポートされる各ドメインは、独自のApple-app-site-associationファイルを利用可能にする必要があります。各ドメインによって提供されるコンテンツが異なる場合、ファイルのコンテンツもそれぞれのパスをサポートするように変更されます。それ以外の場合は、同じファイルを使用できますが、サポートされているすべてのドメインでアクセスできる必要があります。
Appleアプリ検索検証ツールでサーバーを検証する
iOS 9 Search APIのWebページをテストします。 URLを入力すると、ApplebotはWebページをクロールし、最適な結果を得るための最適化方法を示します https://search.developer.Apple.com/appsearch-validation-tool/
Webサイトのコードは https://github.com/vineetchoudhary/iOS-Universal-Links/tree/gh-pages のgh-pagesブランチにあります。
HTTPS
サーバーではない場合)注:サーバーがHTTPS
を使用してコンテンツを提供し、アプリケーション設定にジャンプする場合、この部分をスキップできますガイド。
アプリがiOS 9をターゲットにしており、サーバーがHTTPS
を使用してコンテンツを提供している場合、ファイルに署名する必要はありません。そうでない場合(たとえば、iOS 8でHandoffをサポートする場合)、承認された認証局からのSSL
証明書を使用して署名する必要があります。
注:これは、AppleがApp Storeにアプリを送信するために提供する証明書です。提供する必要があります。サードパーティによって、HTTPS
サーバーに使用するのと同じ証明書を使用することをお勧めします(必須ではありません)。
ファイルに署名するには、まず単純な.txtバージョンのファイルを作成して保存します。次に、ターミナルで次のコマンドを実行します。
cat <unsigned_file>.txt | openssl smime -sign -inkey example.com.key -signer example.com.pem -certfile intermediate.pem -noattr -nodetach -outform DER > Apple-app-site-association
これにより、現在のディレクトリに署名されたファイルが出力されます。 example.com.key
、example.com.pem
、およびintermediate.pem
は、認証機関によって利用可能になるファイルです。
注:ファイルが署名されていない場合、Content-Type
of application/json
。それ以外の場合は、application/pkcs7-mime
。