Android 如何从浏览器自动启动活动?

Android 如何从浏览器自动启动活动?,android,android-activity,browser,Android,Android Activity,Browser,我的应用程序中有一个活动 <activity android:name=".FromWebActivity" android:exported="true" android:screenOrientation="portrait"> <intent-filter> <action android:name="android.intent.action.VIEW"/> <category an

我的应用程序中有一个活动

<activity android:name=".FromWebActivity"
      android:exported="true"
      android:screenOrientation="portrait">
    <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="test"/>
    </intent-filter>
</activity>
在这个html中还有一个a标记

<a href="test://account">open my app</a>

当浏览器打开此页面时,一些设备(中兴S291 android 4.3)可以自动启动我的应用程序。其他设备(Nexus5Android 4.4.4;Nexus6Android 5.0.1)不能。我必须手动单击标签才能启动我的应用程序。为什么?


当我访问此页面时,我想自动打开我的应用程序。我该怎么做?有什么想法吗?

步骤1:创建一个活动,使用

Intent mIntent = new Intent(this, MainActivity.class);
startActivity(mIntent);
finish();
步骤2:在清单文件中声明上面创建的活动

<activity
        android:name="com.OpenMainActivity"
        android:screenOrientation="portrait" >
        <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="test" />
            <data android:host="account" />
        </intent-filter>
    </activity>


任何查询都可以恢复。

如果您添加了在标记单击时执行任务的功能,它将在标记单击时执行。
<activity
        android:name="com.OpenMainActivity"
        android:screenOrientation="portrait" >
        <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="test" />
            <data android:host="account" />
        </intent-filter>
    </activity>