需要应用索引启用样例代码部分



我在我的应用程序索引功能工作,并遵循谷歌开发者指南。我从指南中粘贴了以下内容:

// Create App Indexing Link objects
AppIndexingLink item1 = new AppIndexingLink(appUri1, webUrl1, this.findViewById(R.id.btn1));
AppIndexingLink item2 = new AppIndexingLink(appUri2, webUrl2, this.findViewById(R.id.btn2)); 

从上面的语句中,我们可以注意到参数。

My Query on this:

  1. 在那个文档中,他们提到web URL是可选的。但当我删除,给出编译错误,如果我使它为空(")给出NullPointerException(不确定空导致NullPointerException)

2。btn1和btn2,我们从哪里得到它们?我们为什么要把它们放在那里?. 如果我从我的项目中给出任何视图产生NullPointerException(这是使我不确定第一个的情况)。

如果任何一个有教程和示例代码,使应用程序索引,请提供它。

1-webUrl1是一个Uri类型的对象,你需要在使用你的google play url前解析一些url

2-btn1和btn2可以是用户正在查看的任何视图,例如图像视图或包含一些文本的文本视图

试试这个更简单的方法来集成appindex。

添加intentFilter到任何将要处理Appindex的activity,

  <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="www.yoursite.com"
                           android:pathPrefix="/"
                           />
      </intent-filter>

之后在这个activity的oncreate中你可以使用

    Uri data = getIntent().getData();

这个数据将给出完整的url登陆到你的应用程序。

   System.out.println("Data URL: "+data);  

你也可以用这个uri数据来获取主机名。

    if(data!=null)
    {
        String tmpData = data.toString();
        String hostName = data.getHost();
    }

确保你已经做了网站管理员工具的网站验证之前,你使应用程序的生活。

相关内容

  • 没有找到相关文章

最新更新