- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我遇到了这个异常
"java.lang.NoClassDefFoundError: Failed resolution of: Landroid/webkit/SafeBrowsingResponse" while implementing webview in android.
我在网上搜索了合适的解决方案,但没有找到任何有用的东西。
我的 XML 文件是这样的
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<include layout="@layout/toolbar_title" />
<im.delight.android.webview.AdvancedWebView
android:id="@+id/mWebview"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
</RelativeLayout>
我针对这个 XML 的 java 代码是
public class PaymentActivity extends ParentActivity implements AdvancedWebView.Listener {
// private WebView webView;
private AdvancedWebView mWebView;
ProgressDialog dialog;
UserModel userModel;
SessionManager sessionManager;
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_payment);
ButterKnife.bind(this);
setActionBar("Payment");
sessionManager = new SessionManager(this);
userModel = sessionManager.getUserInformation();
mWebView = findViewById(R.id.mWebview);
mWebView.setListener(this, this);
mWebView.getSettings().setJavaScriptEnabled(true);
String planType = getIntent().getStringExtra("planType");
String url = "www.google.com";
dialog = new ProgressDialog(this);
dialog.setMessage("Loading");
dialog.setCancelable(false);
mWebView.loadUrl(url);
}
@Override
public void onPageStarted(String url, Bitmap favicon) {
dialog.show();
}
@Override
public void onPageFinished(String url) {
dialog.dismiss();
}
@Override
public void onDownloadRequested(String url, String suggestedFilename, String mimeType, long contentLength, String contentDisposition, String userAgent) {
}
@Override
public void onExternalPageRequest(String url) {
}
@Override
public void onPageError(int errorCode, String description, String failingUrl) {
}
我的compileSdkVersion是26
,minSdkVersion是17
,targetSdkVersion是22
。我正在 Android 8.0 API 26
上测试这段代码。
在这方面的任何帮助将不胜感激。
最佳答案
根据documentation ,这个类是在Android level 27中添加的。你正在尝试在level 26测试平台上使用它。自然地,平台无法加载它不知道的类......。
关于java.lang.NoClassDefFoundError : Failed resolution of: Landroid/webkit/SafeBrowsingResponse 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51381482/
我在我的 Activity 中使用 webview。 我不知道什么时候,但我收到以下错误消息。 即使我搜索这个,我也没有太多信息。 虽然这不是一个严重的错误,但我想修复它,以免收到这样的消息。 如果有
我遇到了这个异常 "java.lang.NoClassDefFoundError: Failed resolution of: Landroid/webkit/SafeBrowsingResponse
我在我的应用程序中使用 WebView,同时加载内容警告日志来自 logcat,如下所示 Caused by: java.lang.ClassNotFoundException: Didn't fi
我是一名优秀的程序员,十分优秀!