Google 加上深层链接

Google Plus deeplinking

我试图通过 google 加深 link 我的申请。根据 this 指南,我为我的应用实施了深度 linking。但是没有用。 在过去的两天里,我根据其他一些例子做了很多尝试来改变我的实现,但仍然没有用。现在我的解决方案如下所示:

AndroidManifest.xml

<activity android:name="com.silkwallpaper.ParseDeepLinkActivity">

        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="silk-paints.com" android:host="deeplink"/>
        </intent-filter>
    </activity>

分享给google

  private static final String DEEP_LINK_URL = "silk-paints.com://deeplink/";

  public static void shareGP(final Activity activity, final TrackEntity track) {
    Intent shareIntent = new PlusShare.Builder(activity).addStream(Uri.parse(track.urlShare))
                                                        .setText(DEEP_LINK_URL)
                                                        .setType("text/plain")
                                                        .setContentUrl(Uri.parse(track.urlShare))
                                                        .setContentDeepLinkId(DEEP_LINK_URL)
                                                        .getIntent();

    activity.startActivityForResult(shareIntent, GP_REQUEST_CODE);
  }

但我得到的只是 post 在我的 Google+ 页面中。单击此 post 不会将我重定向到应用程序。我做错了什么?

根据 documentation 的说法:如果您有可以 link 访问的网站,您应该将 URL 用于内容 URL 和深度-link 标识符,以便 Google 可以检索代码段数据供您在共享 post.
中使用 所以你可以试试这个:

AndroidManifest.xml:

<intent-filter>
    <action android:name="com.google.android.apps.plus.VIEW_DEEP_LINK" />
    <data android:scheme="vnd.google.deeplink" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
</intent-filter>

与深度分享linking

Intent shareIntent = new PlusShare.Builder(this)
        .setText("Check out: http://silk-paints.com/")
        .setType("text/plain")
        .setContentUrl(Uri.parse("http://silk-paints.com/"))
        .setContentDeepLinkId("http://silk-paints.com/")
        .getIntent();

startActivityForResult(shareIntent, 0);

另请查看 Handling incoming deep links