我正在为网站创建应用,并且我创建了链接重定向器活动(仅限http://*.domain.com网址),如果网址支持则重定向到活动。如果不支持则应在浏览器中打开链接。它工作正常,但是当用户设置应用程序默认应用程序时,单击活动选择器中的“始终”按钮,应用程序将循环播放。活动开放,检查链接支持,如果不支持使用Intent.ACTION_VIEW
标志打开意图,则活动再次打开。
问题:如何在浏览器中打开链接(可能是默认设置),而不是我的应用,为网址设置默认值。
我在浏览器中尝试打开网址的方法:
private void unsupportedLink() {
Toast.makeText(this, R.string.unsupported_link, Toast.LENGTH_LONG).show();
Intent openUrl = new Intent(Intent.ACTION_VIEW, Uri.parse(url.toString()));
startActivity(openUrl);
finish();
}
清单中的活动:
<activity
android:name=".util.UrlHandler"
android:label="@string/app_name"
android:theme="@android:style/Theme.Translucent.NoTitleBar">
<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:pathPattern="/.*"
android:host="m.domain.com" />
<data
android:scheme="http"
android:pathPattern="/.*"
android:host="www.domain.com" />
</intent-filter>
</activity>