在implementation之后,我能够成功确认Google Bot可以通过Android Studio测试(工具> Android> Google App索引测试)为我的应用编制索引。根据Google Search Console,我的应用已超过200页被编入索引。但这里遵循问题
如果已安装该应用,则点击Google搜索结果即可打开该应用。但如果未安装该应用程序,则会转到该网站(即搜索结果中没有安装按钮)。
Firebase的所有其他工作原理:应用邀请,深层链接,分析。
所以我问,有没有人在那里实际上让Firebase应用程序索引工作?如果是这样,怎么真的?
我的应用程序是一个带有Spinner的Activity,用户通过从微调器中选择一个项目来选择内容。并且当用户做出选择时填充片段。当然要索引,我在填充片段时调用AppIndex.AppIndexApi.start(client, getAction())
,当用户选择不同的内容时我调用AppIndex.AppIndexApi.end(client, getAction())
并重复开始。
此外,我没有使用Digital Asset Links
,而是通过Search Console
将我的应用与我的网站相关联。
答案 0 :(得分:2)
少数事情:
Google抓取总是失败。 Firebase应用程序索引测试失败。
您可能需要检查您网站的robots.txt 不阻止Google机器人抓取您的API。
如果已安装该应用,则点击Google搜索结果即可打开该应用。但如果未安装该应用程序,则会转到该网站(即搜索结果中没有安装按钮)。
要实现以下屏幕截图中显示的应用安装流程,您实际上需要在您的网站上实施Web App Manifest。
答案 1 :(得分:0)
我已在我的项目中实现了应用程序索引。前几天它没有显示任何安装按钮。尝试将您的网站链接作为搜索控制台中的属性加上应用程序包名称作为search console中的属性
类似问题的https://productforums.google.com/forum/#!topic/webmasters/Mqo_GOJO2pE链接。
答案 2 :(得分:0)
需要的包和类
import com.google.firebase.appindexing.Action;
import com.google.firebase.appindexing.FirebaseUserActions;
import com.google.firebase.appindexing.FirebaseAppIndex;
import com.google.firebase.appindexing.Indexable;
import com.google.firebase.appindexing.builders.Actions;
String TITLE = "your screen title";
static Uri BASE_URL = "your site uri";
String webPath = "application route";
String APP_URI = BASE_URL.buildUpon().appendPath(webPath).build().toString();
Indexable indexPage = new Indexable.Builder().setName(TITLE).setUrl(APP_URI).build();
FirebaseAppIndex.getInstance().update(indexPage);
FirebaseUserActions.getInstance().start(Actions.newView(TITLE, APP_URI)); // call on opening the view
FirebaseUserActions.getInstance().end(Actions.newView(TITLE, APP_URI)); // call on closing the view
现在,您的应用屏幕将被编入索引并通过网址打开 在web app / html页面中添加以下行
<meta property="al:android:url" content="" />
<meta property="al:android:app_name" content="" />
<meta property="al:android:package" content="" />
<meta property="al:web:url" content="" />
<link rel="alternate" href="" />