问题标签 [android-app-indexing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
443 浏览

ios - Google App Indexing - 如何测试它?

我已经从谷歌教程Google App Indexing中实现了关于 App Indexing 的所有内容。我现在如何测试 safari 中的搜索结果?我应该发布应用程序/我可以在开发环境中测试它而不提交到 iTunes 连接吗?

谢谢

0 投票
0 回答
459 浏览

android - AppIndexing 抓取时应用程序崩溃

我们注意到我们的 android 崩溃报告工具中的应用程序崩溃激增。它开始发生在大约一周前(1 月 7 日)。遇到崩溃的设备报告为运行 Android 4.4.4 (eng.hendriks.20151229.110347) 的 Calypso AppCrawler。

这是堆栈跟踪:

java.lang.ClassNotFoundException:在路径上找不到类“com.app.package.here.Module$$ModuleAdapter$ProvideApplicationProvidesAdapter”:DexPathList[[zip file“/system/framework/com.google.android.maps.jar ", 压缩文件 "/system/framework/android.test.runner.jar", 压缩文件 "/data/app/com.google.android.apps.appcrawler.espressocrawler-1.apk", 压缩文件 "/data/ app/com.app.package.here-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.google.android.apps.appcrawler.espressocrawler-1, /data/app-lib/com.app .package.here-1, /vendor/lib, /system/lib]] 在 dalvik.system.BaseDexClassLoader.findClass()(BaseDexClassLoader.java:56) 在 java.lang.ClassLoader.loadClass()(ClassLoader.java: 497) 在 com.app.package.here 的 java.lang.ClassLoader.loadClass()(ClassLoader.java:457)。Module$$ModuleAdapter.getBindings()(Module$$ModuleAdapter.java:31) at com.app.package.here.Module$$ModuleAdapter.getBindings()(Module$$ModuleAdapter.java:16) at dagger.ObjectGraph$ DaggerObjectGraph.makeGraph()(ObjectGraph.java:185) 在 dagger.ObjectGraph$DaggerObjectGraph.access$000()(ObjectGraph.java:138) 在 dagger.ObjectGraph.create()(ObjectGraph.java:129) 在 com.app。 package.here.Application.buildObjectGraphAndInject()(Application.java:247) 在 com.app.package.here.Application.onCreate()(Application.java:126) 在 android.app.Instrumentation.callApplicationOnCreate()(Instrumentation. java:1007) 在 android.app.ActivityThread.handleBindApplication()(ActivityThread.java:4328) 在 android.app.ActivityThread 的 android.support.test.runner.MonitoringInstrumentation.callApplicationOnCreate()(MonitoringInstrumentation.java:323)。在 android.os.Handler.dispatchMessage()(Handler.java:102) 在 android.app.ActivityThread$H.handleMessage()(ActivityThread.java:1256) 访问 $1500()(ActivityThread.java:135)。 os.Looper.loop()(Looper.java:136) 在 android.app.ActivityThread.main()(ActivityThread.java:5001) 在 java.lang.reflect.Method.invokeNative()(Method.java:-2 ) 在 java.lang.reflect.Method.invoke()(Method.java:515) 在 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()(ZygoteInit.java:785) 在 com.android.internal。 os.ZygoteInit.main()(ZygoteInit.java:601) 在 dalvik.system.NativeStart.main()(NativeStart.java:-2)ActivityThread.main()(ActivityThread.java:5001) 在 java.lang.reflect.Method.invokeNative()(Method.java:-2) 在 java.lang.reflect.Method.invoke()(Method.java:515 ) 在 dalvik.system 的 com.android.internal.os.ZygoteInit.main()(ZygoteInit.java:601) 的 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()(ZygoteInit.java:785)。 NativeStart.main()(NativeStart.java:-2)ActivityThread.main()(ActivityThread.java:5001) 在 java.lang.reflect.Method.invokeNative()(Method.java:-2) 在 java.lang.reflect.Method.invoke()(Method.java:515 ) 在 dalvik.system 的 com.android.internal.os.ZygoteInit.main()(ZygoteInit.java:601) 的 com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run()(ZygoteInit.java:785)。 NativeStart.main()(NativeStart.java:-2)

它似乎不会影响我们的任何用户,但显然这里出了点问题。我想知道是否有人以前遇到过这个问题?任何解决方法,修复?

0 投票
1 回答
1062 浏览

android - 不在 Google Play 中的应用的应用索引

您是否必须将您的 android 应用程序放在 Google Play 中才能进行应用程序索引?或者,一旦启用了深层链接,任何可下载的 Android 应用程序都可以被编入索引?

干杯,艾伦

0 投票
1 回答
210 浏览

android - Google App Indexing:如何映射我的网站链接和应用深层链接

我是一名 Android 开发人员,我被要求在我最近开发的应用程序中实现应用程序索引。该应用程序是此网络酒店搜索引擎的应用程序版本:https ://www.hotelsclick.com ,并且已经上线:https: //play.google.com/store/apps/details?id=com.towers。酒店点击

现在,我知道为了告诉谷歌我的应用程序深层链接,最好的办法是在网站 URL 和应用程序 URI 之间建立对应关系。

在网站中,我可以链接到特定酒店(即https://www.hotelsclick.com/?hotel_id=135738),我认为这对应用索引很有用,因为我可以告诉谷歌,当用户在移动搜索时对于那家酒店,很可能是按名称而不是 ID ;-),他可以被重定向到我的应用程序的特定活动,将该 ID 作为参数传递。我猜 URI 可能类似于 myappbaseuri://hotel_id/135738,对吧?

现在,我想到了一些问题:

1- 谷歌会自动将hotelsclick.com/?hotel_id=something 查询映射到 myappbaseuri://hotel_id/something 吗?如果没有,我应该在哪里告诉他以及如何告诉他?当然,我不想通过 ID 指定 ID,而且我想它也不需要......

2- 目前该应用程序并没有实现网站的所有功能,并且每个网站页面都没有相应的活动。我应该将应用程序中没有匹配屏幕的网站的所有 url 放入 .noindex 文件吗?有没有办法告诉谷歌只对应的页面,因此忽略其余的应用程序索引?

感谢您提供的任何答案。我希望我没有以错误的方式获得所有主题,并且问题不是题外话

0 投票
1 回答
780 浏览

android - Android 应用索引 - 使用 GET 参数(如 www.abc.com?parameter=value)对 url 进行深度链接

我正在创建一个意图过滤器,以便过滤我的应用程序网址,例如https://www.hotelsclick.com/?hotel_id=135738

我在文档中看到我应该创建一个意图过滤器,例如

此意图过滤器应过滤 URL,例如“ http://example.com/gizmos?1234http://example.com/gizmos/1234http://example.com/gizmos/toys/1234

这很好,但是...我的 URL 不同,它就像http://example.com?toys=1234,因为它在主页中有一个命名的 GET 参数,即hotel_id。

如何过滤此类 URL?是否有更多参数可以放入意图过滤器定义中?

编辑:我将以下意图过滤器放入我的 Manifest.xml

我可以通过提供这个 ADB 命令打开应用程序

adb shell am start -a android.intent.action.VIEW -d " http://hotelsclick.com?hotel_id=135738 " com.towers.hotelsclick

但它不适用于使用深度链接工具自行生成的页面:https ://developers.google.com/app-indexing/webmasters/test?hl=it

我在editText中输入了网页的以下URI:“android-app://com.towers.hotelsclick/hotelsclick.com?hotel_id=135738”,我得到了这个页面:https ://applinktest.appspot.com/app -link.html?url=android-app%3A%2F%2Fcom.towers.hotelsclick%2Fhotelsclick.com%3Fhotel_id%3D135738

如您所见,页面中的链接是intent://#Intent;scheme=hotelsclick.com?hotel_id=135738;package=com.towers.hotelsclick;end 我希望这个intent-link由应用程序本身打开在我之前用于 adb 命令的同一部手机上单击移动设备时。但它不起作用,直接把我带到谷歌游戏商店,建议从那里打开应用程序

在此处输入图像描述

那么,既然我可以通过 ADB 使意图过滤器工作,但不能通过正确的链接,我可以说我成功了吗?

谢谢

0 投票
1 回答
251 浏览

android - android应用索引api描述字段

官方教程非常清楚地解释了如何让应用程序的特定页面出现在谷歌自动完成中。当我按照描述进行操作时,我可以从自动完成建议返回到应用程序中的页面。自动完成建议具有应用程序图标以及在 中设置的名称.setName(mTitle)。不过,我不清楚扮演什么角色.setDescription(mDescription)。这个描述在哪里可见?如果应用程序被列为结果,它会显示在搜索结果中吗?

0 投票
1 回答
69 浏览

android - 使用 google play services 版本 6 的 android 自动补全:查看 viewEnd

教程清楚地展示了如何使用 google play services 版本 7+ 记录页面视图的开始和结束。我被迫使用没有开始和结束方法的版本 6。我已经获得了使用版本 6 API 的自动完成功能,但我不确定这些不同的方法是否会丢失一些功能。

在链接教程使用start的地方,我正在使用view

链接教程使用end的地方,我使用viewEnd

除了无法使用 view/viewEnd 设置描述之外,start/end 与 view/viewEnd 之间是否有任何功能差异?

0 投票
1 回答
211 浏览

android - Google App 索引 API 弃用

嗨,我想为 android 实现 google app indexing。但是文档令人困惑。几个月前,我使用以下指南实现了本地自动完成: https ://codelabs.developers.google.com/codelabs/app-indexing/#0

现在我想启用谷歌搜索功能,该文档声称谷歌系统将抓取我的清单文件并基于意图过滤器进行索引,这是该文档的片段:

https://developers.google.com/app-indexing/android/publish#add-app-indexing-api-calls

所以我很困惑,这两个链接有什么区别?我应该在我的代码中同时包含它们还是前面的链接只是旧版本的处事?

0 投票
1 回答
729 浏览

android - 如何为 Android 实施 Google App 索引

我应该如何正确地为 android 实现 google app indexing。我的意思是我应该分别关心本地自动完成和网络搜索吗?这里有两个网址:

https://codelabs.developers.google.com/codelabs/app-indexing/#0

https://developers.google.com/app-indexing/android/publish#add-app-indexing-api-calls

我应该使用哪一个?这两个指南之间有什么本质区别?第一个仅用于自动完成,第二个仅用于对网页进行排名吗?

0 投票
1 回答
2126 浏览

android - Android Studio 检测到 GoogleApiClient 的内存泄漏

我创建了一个包含一个类的新项目,并使用以下代码从该示例中获取: https ://developers.google.com/app-indexing/android/publish#add-app-indexing-api-calls

当我旋转设备几次,然后在 Android Studio 中单击 Dump Java Heap,然后单击 Analyse。我将得到一个结果,表明我的 MainActivity 已泄漏。

我创建这个示例项目的原因是因为我有一个存在内存泄漏问题的现有应用程序(StrictMode 和 Android Studio 这么说),我的结论是导致问题的是我的 AppIndex 代码。

它是 Android Studio 中的错误还是真正的内存泄漏?

}