【问题标题】:open android app using scheme not working使用方案打开 android 应用程序不起作用
【发布时间】:2016-06-11 20:05:23
【问题描述】:

我觉得自己很愚蠢,因为我发现了三个不同的问题,这些问题似乎与我的相同,但我无法让它发挥作用。我尝试了“使用意图过滤器打开 Android 应用程序不起作用”、“使用意图过滤器从 URL 打开 Android 应用程序不起作用”和“使用意图过滤器从 URL 打开 Android 应用程序在 4.1 版本 2 中不起作用”。我的应用程序使用 WebView 在我的移动网站上捕获活动,但我知道我的很多用户使用 Google 来启动他们的浏览器。我希望它启动我的应用程序。此外,当用户在浏览器中输入我的网站地址时,他们会得到一个选择对话框,让他们可以选择将我的应用程序用于我的网站。我的清单有以下内容:

    <activity android:name=".MainActivity">
        <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" />
            <data android:host="www.tennisrecruiting.net" />
            <!--<data android:pathPattern="/.*" />-->
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

我已经尝试过使用和不使用注释掉的行,以及模式“.*”,但它们都不起作用。也就是说,如果我在谷歌搜索中输入“tennisrecruiting”,然后点击一个选项,将我带到“http://tennisrecruiting.net”,手机会直接进入我的 Chrome 浏览器,而不要求使用我的应用程序。同样,如果我在我的 chrome 浏览器中输入“http://tennisrecruiting.net”作为目标 URL,chrome 只会打开我的网站,而不启动我的应用程序或询问用户选择。

我做错了什么 - 其他提问者似乎可以让它发挥作用,但我已经尝试了他们的所有解决方案,但它们对我不起作用。我在 Verizon 上有一个 Galaxy G6,Android 版本 6.0.1,内核版本 3.10.61

【问题讨论】:

    标签: android google-chrome android-intent


    【解决方案1】:

    我发现了自己的问题,但认为最好发布答案以防其他人遇到同样的问题。问题是我的设备上只有一个浏览器 Chrome,而且它当然注册了 http 方案。由于它是唯一的,我的设备将其视为所有 http 方案的首选应用程序。通过指定主机,我的方案更具选择性。解决方案是下载另一个浏览器,以便用户不喜欢任何浏览器,然后当 Google 导航到 http://tennisrecruiting.net 时,我的应用程序被列出以供选择。当我的移动网站进入 Chrome 时,我仍然没有得到转移或选择,但这并不奇怪。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-28
      • 2020-03-23
      相关资源
      最近更新 更多