所以我的应用几乎不依赖WebView。它几乎就像特定网站的浏览器一样,但是我解析所有HTML等。WebView包含指向网站不同部分的链接。我希望用户使用我的应用来显示它们(因为网站的移动版本很丑陋,这就是为什么我创建了一个显示一切都很好的客户端),但是Google chrome也可以做到这一点,并建议在浏览器中打开这些链接。当然,用户可以打开与我的应用程序的链接,然后点击“记住我的选择”,但这看起来并不好。我希望android至少在我的应用中发生这种情况时才打开与我的应用的链接。我使用意图过滤器来建议我的应用
<intent-filter android:label="@string/app_name">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<!-- Accepts URIs that begin with "http://www.example.com/gizmos” -->
<data
android:host="mysite.com"
android:pathPrefix="/prefix/"
android:scheme="https" />
<!-- note that the leading "/" is required for pathPrefix -->
</intent-filter>
我可以以某种方式强制android使用我的应用程序将其打开吗?还是告诉用户选择我的应用,并要求他在应用打开时“记住我的选择”?由于它通常不是应用程序的行为,因此用户可能会感到困惑,因为他可以使用Google chrome在网站客户端中打开其他内容。
答案 0 :(得分:0)
如你所说
例如,他点击了我客户中的某项
我认为您可以使用action_view在intent中添加packageName。例如
Uri uri = Uri.parse("******");
Intent intent = new Intent(Intent.ACTION_VIEW,uri);
intent.setPackage("ur app's pkgname");
startActivity(intent);