所以,我试图实现应用程序索引以允许"在应用程序中打开"谷歌搜索功能(在Chrome应用中)。
我已经从google docs https://developers.google.com/app-indexing/实施了以下部分:
将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>
连接您的应用
我已经通过网站管理员和Play控制台验证并批准了该网站。
提供深层链接
<link rel="alternate" href="android-app://com.MyApp.MyApp/http/dl.mysite.com/" />
我已经尝试过测试我的链接&#34; android-app://com.MyApp.MyApp/http/dl.mysite.com/"在https://developers.google.com/app-indexing/webmasters/test中,该链接会打开我的应用主页。 但是,与我的网站在谷歌搜索结果中相对应的列表(在Chrome应用中)没有&#34;在应用中打开&#34;功能
我想要这个&#34;在应用程序中打开&#34;功能。我很感激任何帮助。
答案 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。