应用索引"在App中打开"不起作用

时间:2015-04-23 04:23:14

标签: android indexing deep-linking android-app-indexing

所以,我试图实现应用程序索引以允许"在应用程序中打开"谷歌搜索功能(在Chrome应用中)。

我已经从google docs https://developers.google.com/app-indexing/实施了以下部分:

  1. 将Deep Linking添加到您的应用

    <activity
        android:name=".DeepLinkActivity">
        <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="http"
                android:host="dl.mysite.com"
                android:pathPattern="/" /> <!-- Home page -->
        </intent-filter>
    </activity>
    
  2. 连接您的应用

    我已经通过网站管理员和Play控制台验证并批准了该网站。

  3. 提供深层链接

    <link rel="alternate" href="android-app://com.MyApp.MyApp/http/dl.mysite.com/" />
    
  4. 我已经尝试过测试我的链接&#34; android-app://com.MyApp.MyApp/http/dl.mysite.com/"在https://developers.google.com/app-indexing/webmasters/test中,该链接会打开我的应用主页。 但是,与我的网站在谷歌搜索结果中相对应的列表(在Chrome应用中)没有&#34;在应用中打开&#34;功能

    我想要这个&#34;在应用程序中打开&#34;功能。我很感激任何帮助。

3 个答案:

答案 0 :(得分:2)

尝试此解决方案

<activity ... android:launchMode="singleTask">
[...]
<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:host="@string/domain"
                    android:scheme="https"
                    android:pathPattern=".*" />
                <data
                    android:host="@string/domain"
                    android:scheme="http"
                    android:pathPattern=".*" />
</intent-filter>

Different behaviors in Open in App from browsers and other applications to my webView app

答案 1 :(得分:0)

回答类似问题解决了这个问题。

App Indexing Android - "<link>" in "<head>" doesn't work

引用,&#34;它只能从谷歌搜索结果页面开始工作。如果您的网站已正确编入索引并显示在Google搜索结果中,请检查Google的缓存内容中是否存在网站的网页来源:http://webcache.googleusercontent.com/search?q=cache:yourwebsite.com

此外,如果它在Google Play开发者控制台的BETA TESTING中,您可能需要将apk移至PRODUCTION。&#34;

答案 2 :(得分:0)

android-app://...是正常的深层链接,与App Indexing不同。

App Indexing include http://... and https://... urls only!

如果您希望App Indexing能够正常工作, 您需要的是网站上的/.well-known/assetlinks.json

这称为Google / Firebase应用索引-https://firebase.google.com/docs/app-indexing

Android Studio中内置了一个 App Links Assistant ,可帮助您生成assetlinks.json文件并测试URL。