Android 需要启用应用程序索引的示例代码部分

Android 需要启用应用程序索引的示例代码部分,android,deep-linking,android-app-indexing,google-search-platform,Android,Deep Linking,Android App Indexing,Google Search Platform,我正在我的应用程序中开发应用程序索引功能,并遵循谷歌开发者指南。 从现在起,我坚持以下几点 // Create App Indexing Link objects AppIndexingLink item1 = new AppIndexingLink(appUri1, webUrl1, this.findViewById(R.id.btn1)); AppIndexingLink item2 = new AppIndexingLink(appUri2, webUrl2, this.findView

我正在我的应用程序中开发应用程序索引功能,并遵循谷歌开发者指南。 从现在起,我坚持以下几点

// 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)); 
从上述语句中,我们可以注意到参数

我对此提出质疑:

  • 在该文档中,他们提到web URL是可选的。但当我删除它时,会产生编译错误,如果我将其设为空(“”),则会产生NullPointerException(不确定空值是否会导致NullPointerException)
  • 2.btn1和btn2,我们应该从哪里获得它们?我们为什么要把它们放在那里。如果我从我的项目中给出任何视图,就会产生NullPointerException(这种情况使我无法确定第一个视图)


    如果任何人有教程和示例代码来启用应用程序索引,请提供它。它可能对我们有所帮助。

    1-webUrl1是Uri类型的对象,您需要解析一些url,比如使用google play url


    2-btn1和btn2可以是用户正在查看的任何视图,例如图像视图或包含某些文本的文本视图尝试这种更简单的集成appindex的方法

    将intentFilter添加到要处理Appindex的任何活动中

      <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>
    
    此数据将提供登录到应用程序的完整url

       System.out.println("Data URL: "+data);  
    
    您还可以使用此uri数据获取主机名

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

    确保在应用程序上线之前,您已经通过网站管理员工具进行了站点验证

    深度链接选项已启用。我的问题是什么时候“在应用程序中打开”或“安装了应用程序名称”或“打开应用程序名称应用程序”?在应用程序索引中我应该做什么?供你参考,我遵循谷歌开发者指南。你成功了吗?当我将信息添加到AppIndexApi.view中,并通过本机谷歌搜索搜索关键字时,我也遇到了同样的问题,但什么也没有发生。。
        if(data!=null)
        {
            String tmpData = data.toString();
            String hostName = data.getHost();
        }