用Java处理来自google助手的深层链接

用Java处理来自google助手的深层链接,java,android,actions-on-google,app-actions,Java,Android,Actions On Google,App Actions,希望处理来自谷歌助手的深层链接。因为我目前只有一个模拟器,所以我在测试它时遇到了麻烦(据我所知,它需要一个真正的设备)。也就是说,我想知道我是否以正确的方式处理它。我对Kotlin不熟悉,我的代码在试图集成时变成了意大利面条,所以我把它放在我现有的启动程序活动中,只是为了现在尝试引导它。manifest和actions.xml的设置与健身应用程序教程类似 我这样做对吗 if (mAuth.getCurrentUser() != null) { data =

希望处理来自谷歌助手的深层链接。因为我目前只有一个模拟器,所以我在测试它时遇到了麻烦(据我所知,它需要一个真正的设备)。也就是说,我想知道我是否以正确的方式处理它。我对Kotlin不熟悉,我的代码在试图集成时变成了意大利面条,所以我把它放在我现有的启动程序活动中,只是为了现在尝试引导它。manifest和actions.xml的设置与健身应用程序教程类似

我这样做对吗

        if (mAuth.getCurrentUser() != null) {
            data = this.getIntent().getData();
            if (data != null && data.isHierarchical()) {
                uriData = data.toString();
                containsStart = containsIgnoreCase(uriData,"start");
                containsRun = containsIgnoreCase(uriData,"run");
                if(containsStart && containsRun) {
                    Intent intent = new Intent(getApplication(), RunActivity.class);
                    intent.putExtra("runStart", true);
                    startActivity(intent);
                }
                }
            else {
                checkUserAccType();
            }
            //Else, if there is no current user, start the Authentication activity
        } 

关于代码的一些观察和建议:

  • 而不是使用
    containsIgnoreCase
    使用
    getPath()
    并匹配路径
  • 此外,对于活动参数,请使用URL查询参数,而不是
    containsIgnoreCase
  • 开始活动或片段。我假设
    startActivity
    checkUserAccType
    将处理该部分
  • //否则。。。第节应该在下面一行
  • 认证。看起来不错。您似乎是通过
    getCurrent
    方法签名来使用Firebase