android - Android错误:getDefinedWebViewPackageName没有这样的方法
问题描述
我收到一条错误消息;
/com.myapp,name E/WebViewFactory: No such method for getDefinedWebViewPackageName:
java.lang.NoSuchMethodException: getDefinedWebViewPackageName []
据我所知,此错误Logcat
不会影响应用程序的运行。
- 这是什么错误?和
- 我们怎样才能摆脱它?
对于 Webview,JavaScript 由
webview.getSettings().setJavaScriptEnabled(true);
并且,测试设备是使用 8.1 版的 Android One
解决方案
因为您直接无法知道使用 getDefinedWebViewPackageName 并给出异常的方法或代码行。尝试找出是否有任何第三方库使用它。因为在我的情况下,razorpay 结帐预加载方法正在使用这个:
checkout.preload(getContext().getApplicationContext());
在 Fragment 和 getContext() 方法中返回空上下文,因此我收到 Android 错误:getDefinedWebViewPackageName 没有这样的方法。 为此,我在片段的 onAttach 方法中将上面的代码行称为:
@Override
public void onAttach(@NonNull Context context) {
super.onAttach(context);
checkout.preload(context);
}
这解决了这个问题。
推荐阅读
- java - 子点击侦听器在可展开列表视图中不起作用
- ruby-on-rails - 无法写入未知属性“parent_id”、has_one 和 belongs_to
- apache-kafka - 读取 ksql 中的管道分隔值
- javascript - 通过替换在另一个对象中找到的属性名称来创建新对象
- django - Django - 注释多个 Sum() 对象会给出错误的结果
- spring - 无法读取配置属性
- sqlite - 无法使用带有 QML 事务的 Qt 删除 SQLite 数据库
- mysql - 为什么 Mysql 8.0.19 解释显示查询没有在“where tinyint”上使用索引,但“where tinyint = true”使用了索引
- javascript - 未处理的承诺拒绝:错误:网络错误
- cmd - 使用“如果存在”在 Wix 中执行 CustomAction