8

関連する質問が 1 つ見つかりました:新しい AppLinks を iOS または Android で動作させることはできませんが、私が直面している問題と完全に似ているかどうかはわかりません。したがって、私はこの質問を作成しました。

私が正しく理解している場合: https://developers.facebook.com/docs/applinks/ios

Facebook AppLinks は iOS でどのように機能しますか?

適切なメタデータを含む適切なアプリリンクをクリックすると:-

ケース 1:アプリがインストールされている場合:

期待されるアクション 1:アプリ内の特定のページに移動します。

ケース 2:アプリがインストールされていない場合:

期待されるアクション 2:ダウンロードするアプリのアプリ ストア ページに誘導されます。

これまでに行った構成は次のとおりです。

アプリのリンク URL: http://watchoverme.parseapp.com/

アプリリンクのメタデータ:

<html>
<head>
  <title>Watch Over Me</title>
<meta property="al:ios:app_store_id" content="431208868"/>
<meta property="al:ios:app_name" content="Watch Over Me" />
<meta property="al:ios:url" content="watchoverme://promotion" />
<meta property="al:web:url"
      content="https://itunes.apple.com/app/id431208868?mt=8" />
</head>
<body>
Yo!
</body>
</html>

アプリ側では、以下のスクリーン ショットのようなカスタム URL スキームを追加しました。 watchoverme アプリ リンク URL スキーム

これまでのところ、以下のいくつかのシナリオをテストしました:-

シナリオ 1:アプリリンクを開くための単一のボタンを備えた別の単純なアプリを作成しました。

ボタンのコード:-

- (IBAction)appLinkTapped:(UIButton *)sender {

    NSLog(@"appLinkTapped");

    UIApplication *app = [UIApplication sharedApplication];
    NSString *path = @"watchoverme://promotion";
    NSURL *ourURL = [NSURL URLWithString:path];
    /*
    if(![app
         canOpenURL:ourURL]){
        path = @"http://watchoverme.parseapp.com/";
        ourURL = [NSURL URLWithString:path];
    }*/

    [app openURL:ourURL];
}

結果 1: WatchOverMe アプリがインストールされていて、ボタンをタップすると、WatchOverMe アプリを開くことができます。偉大な!。しかし、WatchOverMe アプリがインストールされていない状態でボタンをタップしても、何も起こりません。アプリをダウンロードするには、iTunes App Store に移動する必要がありますか? それとも私は何か間違ったことをしましたか?

シナリオ 2:リンク ( http://watchoverme.parseapp.com/ ) を Facebook に投稿し、モバイルでリンクをタップしようとしました。

結果 2:アプリをインストールしているかどうかに関係なく、空白の Web サイトしか表示されません。

質問:上記の予想される applink の動作をトリガーできないまで、構成で何かが欠けていますか?

ありがとう

更新 #1

私を正しい方向に向けてくれたMing Liに感謝します。アプリリンクのしくみをもっとよく理解したい。それで、私はさらに多くのテストを行いましたが、ここに私が見つけたものがあります:-

Facebook アプリリンク

上記のスクリーンショットから:

ケース A : Watch Over Me アプリを使用してアプリ リンクを共有します (「Watch Over Me 経由」と表示されます)。

結果 A: Facebook アプリのリンクをタップしたとき。Watch Over Me アプリがインストールされている場合は、アプリにリダイレクトされます。アプリをインストールしていない場合は、ダウンロードするために iTunes App ストアにリダイレクトされます。それはうまくいっています!

ケース B:ステータス更新のみを使用してアプリ リンクを共有します。(Watch Over Me経由なし)

結果 B:空白の Web ページのみが開きます。

では、Applink は Facebook 経由で Applink を投稿した場合にのみ機能しますか? ステータス更新でアプリリンクを投稿していませんか?

アップデート #2

2014 年 9 月 1 日に再度テストしました。上記の両方のケースで問題なく動作しています。ミン・リーに感謝します。

4

2 に答える 2

7

Facebookで働いておらず、「あなたのアプリがモバイル専用であることを示す」ことの意味を理解している他のすべての人のために、私がテストから見つけたものは次のとおりです。

アプリが「モバイル専用」であり、Web プレゼンスがないかどうかのチェックとして、「al:web:should_fallback」メタ プロパティを使用しているようです。これは、 App Links 仕様で定義されている方法に基づいて判断できる限り意味がありませんが、私が知っていることは何ですか.

とにかく、Facebook の投稿をアプリのディープ リンクに直接移動し、Facebook によるランダムなアプリ リンクの UX 処理で耳障りな Web ビューを開かないようにしたい場合は、次のメタ プロパティを HTML ページに追加します。

<meta property="al:web:should_fallback" content="false" />

もちろん、これにより、アプリがインストールされていないユーザーをアプリ ストア以外に送信することができなくなります。ただし、webview は通常、そもそも Facebook の投稿の繰り返しにすぎないため、おそらく価値のあるトレードオフです。

于 2015-05-12T10:18:21.263 に答える