我正在尝试实施Firebase应用程序索引,而更新可索引的任务显示成功,搜索后索引也会显示在 In Apps 标签中Google App。根据我的理解,在Google App中搜索时,索引也应显示在自动完成建议中但未显示。我正在关注here的教程。以下是我用来索引内容的代码片段:
Indexable menuItemToIndex = Indexables.noteDigitalDocumentBuilder()
.setName(title)
.setText(text)
.setUrl(link)
.build();
Task<Void> task = FirebaseAppIndex.getInstance().update(menuItemToIndex);
task.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Log.d(TAG, "App index updated: " + title);
}
});
我使用的Firebase App Indexing库的版本也是
compile 'com.google.firebase:firebase-appindexing:10.0.1'
我有什么遗失的吗?
我正在测试运行在Stock 7.1.1
和Google App版6.9.36.21.arm64
上的Nexus 6P。
答案 0 :(得分:3)
Indexables需要使用Indexable.Builder每个项目构建(提示循环)...而DigitalDocumentBuilder是一个相当具体的实现,特别是对于数字文档。
Indexable recipe = new Indexable.Builder()
.setName("Brownie Recipe")
.setUrl("//acme.com/recipes/12345678")
.build();
FirebaseAppIndex.getInstance().update(recipe);
查看AppIndex文档或
构建并运行AppIndexing Quickstart:
git clone https://github.com/firebase/quickstart-android.git
。
教程(和问题)看起来有点过时了;当前版本为11.0.2
。
也com.google.android.gms
:play-services-appindexing
是必需的。
答案 1 :(得分:1)
更新完成后的项目后,您还需要使用与更新项目相同的网址创建相应的视图操作,就像在食谱应用程序中一样,然后才会显示为自动完成。
FirebaseUserActions.getInstance().start(Actions.newView(item.getTitle(),"http://example.com/item?id=5"))