在Chrome / Firefox上运行方案时,应用程序无法打开

时间:2014-09-22 03:33:50

标签: android

我想使用方案启动我的Android应用,这是我的代码:

<activity
        android:name="com.myapp.SplashScreenActivity"
        android:alwaysRetainTaskState="true"
        android:label="@string/app_name"
        android:noHistory="true" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <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:host="www.myhost.com"
                android:pathPrefix="/company/"
                android:scheme="http" />
            <data
                android:host="myhost.com"
                android:pathPrefix="/company/"
                android:scheme="http" />
        </intent-filter>
    </activity>

然后在浏览器和结果上运行:myhost.com/company/:

  • 默认互联网浏览器:应用正常打开
  • Chrome:无效
  • Firefox:无效。

我不知道如何解决,请帮助我解释一下。

1 个答案:

答案 0 :(得分:0)

您不应该使用“http”作为方案,因为Chrome和Firefox可以处理这种类型的URL,他们不会调用其他应用来处理它。相反,您可以使用自定义方案,例如“myprotocol”,这些浏览器无法处理,他们会调用您的应用程序来处理它。您可以在Chrome上运行“myprotocol://myhost.com/company/”进行测试。