gpt4 book ai didi

android - 通过谷歌搜索进行深度链接 - 它是如何工作的,以及在 list 中放什么?

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:54:10 25 4
gpt4 key购买 nike

背景

我需要研究如何与新的(?)Google 搜索深度链接功能集成。

问题

这似乎是一个相对较新的功能,但还不是很流行,所以我找不到很多关于它如何工作以及如何正确配置它的资源。

我尝试过的

我已经阅读了 Google 的一些网站并观看了它的一些视频:

据我所知,我需要注册应用程序,更改 Activity list 中的数据( Intent 处理),还要更改 Activity 的代码,但我不确定我是否了解这一切是如何工作的以及配置它的最佳方式是什么。

问题

即使阅读了那么多内容,我仍然想问一些有关使用 Google 搜索进行深度链接的问题:

  1. 首先是基本问题,以验证我是否了解它的全部内容:它允许通过“Google 搜索”应用程序为应用程序编制索引,但也必须安装这些应用程序。一旦用户点击“Google 搜索”应用中的某个项目,它就会转到您的应用,您会收到查询。这个对吗?除此之外还有什么吗?

  2. 他们写道 minSdkVersion 应该是 17 或以下 ( here )。为什么是“或以下”而不是“或以上”?

  3. 出于某种原因,示例的查询(如 here )只是简单的文本,但应用程序显示在那里。为什么显示? list 中的什么内容告诉 Google 搜索该应用可以处理此查询?代码示例显示 URL ...

  4. 是否可以在不注册的情况下通过 Google 搜索测试深层链接 (here)?我所发现的只是如何通过 adb 对其进行测试,但我不明白示例 ( here ) 中用户输入查询的位置。

  5. 深层链接是否需要用户可以通过网络浏览器访问的实际网站?我问这个是因为注册服务时有一个名为“验证网站”的步骤 (here)。

  6. 假设我想让用户通过应用搜索​​电话号码。我应该把“电话:”放在 list 中的“方案”(如图所示 here )部分吗?还是别的东西(或不止于此)? Google 搜索是否会准确知道何时显示该应用(例如,电话号码何时有效)?

  7. 是否可以在未安装应用程序的情况下使用此功能,以鼓励人们下载应用程序和/或通过真实网站进行搜索?

  8. 即使尝试测试它,我也失败了。 list :

        <intent-filter>
    <action android:name="android.intent.action.VIEW" />
    <!--should match to : https://somehost/search/?number=-->
    <data android:scheme="https"
    android:host="somehost"
    android:pathPrefix="/search/?" />
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.BROWSABLE" />
    </intent-filter>

代码:

    Intent intent = getIntent();
String action = intent.getAction();
Uri data = intent.getData();
Log.d("AppLog", "action:"+action+" data:"+data);

adb 命令(来自 here):

adb shell am start -W
-a android.intent.action.VIEW -d "somehost/search/?050" com.example.user.myappli
cation
Starting: Intent { act=android.intent.action.VIEW dat=somehost/search/?050 pkg=c
om.example.user.myapplication }
Error: Activity not started, unable to resolve Intent { act=android.intent.actio
n.VIEW dat=somehost/search/?050 flg=0x10000000 pkg=com.example.user.myapplicatio
n }

我什至尝试了完全相同的示例,但使用了不同的包名,但仍然无法正常工作。

这里有什么问题吗?

最佳答案

  1. Chrome 中的 Google 搜索应用和 google.com。用户需要登录。如果安装了应用程序,点击将深层链接到您的应用程序。

  2. 如果您的 minSdkVersion 是 15、16、17,那没问题。如果是 18,那就不行了。

  3. 如果您的应用已被 Google 编入索引,则指向您应用的深层链接可能会出现在安装了您的应用的用户的 Google 搜索结果中。当您通过网站标记、站点地图或连接您的网站将这些链接告知 Google 时,Google 就会了解您的应用支持的深层链接。在应用索引文档中查找“提供深层链接”。

  4. 要查看您的内容可能针对哪些查询显示,请转到新的 Search Console (g.co/searchconsole) 并登录。然后,您需要查看您的网站的流量类型从 Google 获得的内容以及您的内容针对哪些查询获得的展示次数和点击次数。如果您的应用支持相同的链接并且您已将这些应用深层链接提供给 Google,那么这些是您的应用深层链接应该显示的相同查询。

  5. 对于 App Indexing,网站是必需的 -- 需要通过站点地图、网站标记或验证您的网站来告知 Google 从 Web URL 到应用深层链接的映射。但是,如果您使用站点地图或标记,则无需验证您的网站。如果您只是在谈论您的应用支持深度链接,则不需要网站。

  6. 您可以为深层链接使用任何您想要的方案,所以我猜 tel: 应该可以工作(尽管我自己还没有尝试过)。但是,在您提供到您的网络内容的映射之前,Google 不会自动知道何时显示此电话号码。参见 #3。

  7. 是的。截至 2015 年 4 月,这已成为可能。请参阅对 #1 的回答中的链接。

  8. 一些建议:

    • 在 list 文件中,路径前缀为“/search”。
    • 对于 adb 命令,请尝试将您的链接指定为“https://somehost/search

如果这不起作用,您可能需要为您的主机输入一个网站,即您需要一个域。如果这不是您想要做的,只需创建一个用于测试目的的自定义方案,例如

    <data android:scheme="example"
android:host="gizmos" />

关于android - 通过谷歌搜索进行深度链接 - 它是如何工作的,以及在 list 中放什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29876972/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com