我只是想知道如何在手机浏览器中启动一个Intent来打开一个特定的URL并显示它。
有人能给我一个提示吗?
我只是想知道如何在手机浏览器中启动一个Intent来打开一个特定的URL并显示它。
有人能给我一个提示吗?
当前回答
在某些情况下,URL可能以“www”开头。在这种情况下,您将得到一个例外:
android.content.ActivityNotFoundException: No Activity found to handle Intent
URL必须始终以“http://”或“https://”开头,因此我使用以下代码片段:
if (!url.startsWith("https://") && !url.startsWith("http://")){
url = "http://" + url;
}
Intent openUrlIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
startActivity(openUrlIntent);
其他回答
要打开URL/网站,请执行以下操作:
String url = "http://www.example.com";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
这是Intent.ACTION_VIEW的文档。
来源:从应用程序内打开Android网络浏览器中的URL
短版本
startActivity(new Intent(Intent.ACTION_VIEW,
Uri.parse("http://almondmendoza.com/android-applications/")));
也应该起作用。。。
Intent browserIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.google.com"));
startActivity(browserIntent);
向浏览器发送意向以打开特定URL:
String url = "https://www.stackoverflow.com";
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(url));
startActivity(i);
可以更改为短代码版本。。。
Intent intent = new Intent(Intent.ACTION_VIEW).setData(Uri.parse("http://www.stackoverflow.com"));
startActivity(intent);
or
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.stackoverflow.com"));
startActivity(intent);
甚至更短!
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.stackoverflow.com")));
有关Intent的更多信息
=)
来自XML
如果您在视图上显示了网址/URL,并且希望它可以链接并将用户引导到特定网站,您可以使用:
android:autoLink="web"
以同样的方式,您可以使用autoLink的不同属性(电子邮件、电话、地图等)来完成您的任务。。。