[英]Android : prevent an app from opening its own links
我有一个可以打开特定网站的网络链接的应用程序。 为了方便使用,该应用程序还可以选择在用户的网络浏览器中打开应用程序的当前页面。 不幸的是,如果用户在打开应用程序的链接时选择“始终”选项,他将无法再从应用程序的网络浏览器中打开链接。 有没有解决的办法 ?
以下方法适用于所有隐式意图 - 不限于您关于浏览器的问题。
当您发出隐式意图(如 ACTION_VIEW)时,主机 Android 设备将检查是否有默认应用程序来处理该意图。 如果有默认应用,那么,默认情况下,android 会自动重定向到该应用。
但是,您可以强制应用选择器用于隐式意图。 为此,您需要使用Intent.createChooser()
方法。 看这个例子:
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url)); // only used based on your example.
String title = "Select a browser";
// Create intent to show the chooser dialog
Intent chooser = Intent.createChooser(intent, title);
// Verify the original intent will resolve to at least one activity
if (intent.resolveActivity(getPackageManager()) != null) {
startActivity(chooser);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.