> shouldOverrideUrlLoading Webview Android
我需要解决Webview和方法ShouldOverrideUrlLoading的问题。
我想显示一条消息,指出用户没有在手机上安装twitter应用程序
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (url.startsWith("tel:")) {
Intent intent = new Intent(Intent.ACTION_DIAL,
Uri.parse(url));
startActivity(intent);
}else if(url.startsWith("http:") || url.startsWith("https:")) {
view.loadUrl(url);
}else if (url != null && url.startsWith("market://")) {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
} else if (url != null && url.startsWith("twitter://")) {
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
return true;
}else{
Toast.makeText(getApplicationContext(), "Twitter app is necessary", Toast.LENGTH_SHORT).show();
}
return false;
}
显示“应用程序意外停止,请重试”的错误
谁能帮忙?
你的twitter Intent
似乎有问题。 据我了解,你想Twitter应用程序发布的东西。 请咨询他们的API,了解如何使用Intent启动Twitter应用程序。 为了防止崩溃,您可以执行以下操作:
else if (url != null && url.startsWith("twitter://")) {
try{
view.getContext().startActivity(
new Intent(Intent.ACTION_VIEW, Uri.parse(url)));
} catch(ActivityNotFoundException e){
// do some stuff here, for example load the twitter url in the browser
}
return true;
链接地址: http://www.djcxy.com/p/41965.html
上一篇: > shouldOverrideUrlLoading Webview Android
下一篇: Creating an android app that simply launches a URL in the browser