我得到以下错误:
*E/AndroidRuntime: FATAL EXCEPTION: main
Process: xxx.mxxxa.xxx, PID: 10610
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.String.contains(java.lang.CharSequence)' on a null object reference*
在以下线路上:
public void onLoadResource (WebView view, String url) {
if (datingView.getUrl().contains("messages.php") && datingView.getUrl().contains("messages.php" +
"")){
bannerReklam.setVisibility(View.GONE);
}else if (datingView.getUrl().contains("upgrade.php") && datingView.getUrl().contains("upgrade.php" +
"")){
bannerReklam.setVisibility(View.GONE);
}else if (datingView.getUrl().contains("index.php") && datingView.getUrl().contains("index.php" +
"")){
bannerReklam.setVisibility(View.GONE);
}else if (datingView.getUrl().contains("join.php") && datingView.getUrl().contains("join.php" +
"") ){
bannerReklam.setVisibility(View.GONE);
}else{
bannerReklam.setVisibility(View.VISIBLE);
}
// if url contains string androidexample
// Then show progress Dialog
if (progressDialog == null && url.contains("instasquare")
) {
// in standard case YourActivity.this
progressDialog = new ProgressDialog(arkadasBulMain.this);
progressDialog.setMessage("Loading...");
progressDialog.show();
}
}
此问题导致应用程序停止。此错误发生在android 9.0以下的版本。
在某些情况下,datingView.getUrl()
返回null
。首先尝试检查null
,然后尝试使用contains
搜索项目。例如:
String datingUrl = datingView.getUrl();
if(datingUrl != null && datingUrl.contains("messages.php"))