当前位置: 首页 > news >正文

分模板网站和定制网站wordpress页面调用分类文章的方法

分模板网站和定制网站,wordpress页面调用分类文章的方法,网站建设vs网络推广,微信 文章 wordpress目录 一、项目背景 1.1 需求 1.2 设备 1.3 解决方案 二、WebViewUpgrade 接入 2.1 支持版本 2.2 接入 2.2.1 导入项目(我使用的是这个) 2.2.2 implementation 2.3 使用 2.4 WebView 相关推荐 一、项目背景 1.1 需求 项目需要使用WebView加载合作方公司的Url(里面功…目录 一、项目背景 1.1 需求 1.2 设备 1.3 解决方案 二、WebViewUpgrade 接入 2.1 支持版本 2.2 接入 2.2.1 导入项目(我使用的是这个) 2.2.2 implementation 2.3 使用 2.4 WebView 相关推荐 一、项目背景 1.1 需求 项目需要使用WebView加载合作方公司的Url(里面功能比较多) 使用了ES6(ECMAScript 6.0以下简称 ES6是 JavaScript 语言的下一代标准已经在 2015 年 6 月正式发布了所以也被叫作ES2015) JavaScript 使用的函数要求 chrome 最低版本是85。 一系列原因导致WebView加载该链接报错合作方那边因为某些原因不想改变现有的代码实现等。需要我们自行解决那就开整呗。 1.2 设备 Android 8.1 WebView 版本 60.xxxx.xxxx.xx好吧忘记版本了页面打不开) Android 8.1 WebView 版本 61.0.3163.98(页面打不开) Android 11  WebView 版本 83.0.4103.120视频无法播放厂商给的答复是不支持具体原因没说 查看版本号 可以进入设置-开发者模式-Webview实现可以看到 Webview 内核版本号。 adb 命令 adb shell pm dump com.android.webview|grep version adb shell pm dump com.android.webview|grep versionversionCode410412053 minSdk21 targetSdk30versionName83.0.4103.120signaturesPackageSignatures{48d4530 version:3, signatures:[63b96fc5], past signatures:[]} 1.3 解决方案 1.腾讯X5内核还是加载失败以为是集成错误。特意使用微信打开该链接也是加载失败。 2.更新安装包因为内嵌WebView的是com.android.webview。 2.1 下载了包名为 95.0.4638.50-463805003_minAPI21版本的包进行覆盖安装-报错提示签名文件不一致。 2.2 下载com.android.google.weview_95.0.4638.74_APKPure安装成功了加载还是报错。而且在WebView实现-不可选择com.android.google.webview。 3.修改framework-res.apk中配置允许WebView实现选择com.android.google.webview。这种操作不太合适2C需要root权限修改系统文件一不留神就可能产生其他问题。 4.使用 WebViewUpgrade这个还是比较强大的对WebView内核进行升级。已解决低版本无法加载url、视频无法播放的问题。 二、WebViewUpgrade 接入 WebViewUpgrade的创建者遇到的问题华为机上因为WebView内核的Chromium版本低于107无法播放H265视频的情况为了解决上述问题可以用JS实现H265播放但是会比较卡就想不能让WebView用应用内的APK作为内核。 2.1 支持版本 com.google.android.webview122.0.6261.64 com.android.webview113.0.5672.136 com.huawei.webview14.0.0.331 com.android.chrome122.0.6261.43 com.amazon.webview.chromium118-5993-tv.5993.155.51 当然你也可以找到其他版本下载安装即可。例如 com.android.webview我觉得113版本太高那么你可以下载一个95版本的。或者你不想使用com.android.webview 改用com.google.android.webview也是可以的。 2.2 接入 2.2.1 导入项目(我使用的是这个) 将Demo的core和download-source模块直接导入到自己项目修改core中 implementation androidx.appcompat:appcompat:1.6.1的版本。 2.2.2 implementation implementation io.github.jonanorman.android.webviewup:core:0.1.0// 不需要下载APK时使用 implementation io.github.jonanorman.android.webviewup:download-source:0.1.0// 需要下载APK使用如果是低版本可能会报错。core中 implementation androidx.appcompat:appcompat:1.6.1的版本比较高需要兼容的SDK版本也比较高。 解决方案 1.提高项目 SDK 版本。 2.使用exclude。 以上两种方式都可以。 2.3 使用 设置 private void setWebView(){UpgradeInfo upgradeInfo  new UpgradeInfo(com.android.webview,113.0.5672.136,https://mirror.ghproxy.com/https://raw.githubusercontent.com/JonaNorman/ShareFile/main/com.android.webview_113.0.5672.13_armeabi-v7a.zip,网络);String  systemWebViewPackageName  WebViewUpgrade.getSystemWebViewPackageName();if (systemWebViewPackageName ! null systemWebViewPackageName.equals(upgradeInfo.packageName) VersionUtils.compareVersion( WebViewUpgrade.getSystemWebViewPackageVersion(),upgradeInfo.versionName)  0) {//Toast.makeText(getApplicationContext(), system webView is larger than the one to be upgraded, so there is no need to upgrade, Toast.LENGTH_LONG).show();return;}UpgradeSource upgradeSource  upgradeInfo.toUpgradeSource(RobotApplication.getInstance());if (upgradeSource  null) {return;}WebViewUpgrade.upgrade(upgradeSource);updateUpgradeWebViewStatus();} } 这里我使用的是网络下载: 包名com.android.webview; 版本号113.0.5672.136 下载内核地址https://mirror.ghproxy.com/https://raw.githubusercontent.com/JonaNorman/ShareFile/main/com.android.webview_113.0.5672.13_armeabi-v7a.zip //更新状态private void updateUpgradeWebViewStatus() {if (WebViewUpgrade.isProcessing()) {LogUtils.e(WebVIewUpgrade,Upgrading...);} else if (WebViewUpgrade.isFailed()) {LogUtils.e(WebVIewUpgrade,Fail...);} else if (WebViewUpgrade.isCompleted()) {LogUtils.e(WebVIewUpgrade,complete...);}int process  (int) (WebViewUpgrade.getUpgradeProcess() * 100);LogUtils.e(WebVIewUpgrade,Processing:-----process  %);Throwable throwable  WebViewUpgrade.getUpgradeError();if (throwable ! null) {LogUtils.e(WebVIewUpgrade,Throwable.message:  throwable.getMessage()  \nstackTrace:  Log.getStackTraceString(throwable));}} public class UpgradeInfo {public String title;public String url;public String packageName;public String versionName;public String extraInfo;public UpgradeInfo(String packageName, String versionName, String url, String extraInfo) {this.title  packageName  \n  versionName;this.extraInfo  !TextUtils.isEmpty(extraInfo) ? extraInfo : ;if (!extraInfo.isEmpty()) {this.title  this.title  \n  extraInfo;}this.url  url;this.packageName  packageName;this.versionName  versionName;}public UpgradeInfo(String packageName, String versionName, String url) {this(packageName, versionName, url, );}Nullablepublic UpgradeSource toUpgradeSource(Context context) {UpgradeSource upgradeSource  null;if (this.extraInfo.equals(网络)) {upgradeSource  new UpgradeDownloadSource(context,this.url,new File(context.getFilesDir(), this.packageName  /  this.versionName  .apk));} else if (this.extraInfo.equals(内置)) {upgradeSource  new UpgradeAssetSource(context,this.url,new File(context.getFilesDir(), this.packageName  /  this.versionName  .apk));} else if (this.extraInfo.equals(安装包)) {upgradeSource  new UpgradePackageSource(context,this.packageName);}return upgradeSource;} public class MainActivity extends BaseActivity implements , UpgradeCallback {Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setWebView();}private void setWebView(){......}//更新中Overridepublic void onUpgradeProcess(float percent) {updateUpgradeWebViewStatus();}//更新完成Overridepublic void onUpgradeComplete() {updateUpgradeWebViewStatus();}//更新失败Overridepublic void onUpgradeError(Throwable throwable) {updateUpgradeWebViewStatus();} } 注意这个代码尽量前置如果无法前置需要保证其他地方先不要对WebView进行操作。如果操作了会导致初始化失败。 可以先试用Demo尝试功能是否可用再集成到自己的项目中。 2.4 WebView 执行完上面的操作后你就正常操作WebView即可。上面我只是列举了网上下载的例子(第一次下载只要文件存在无需重复下载)还支持内置/安装包的形式我这是应用包体太大不适合内置。 这种方式是可行的但是也有一些小的前置条件需要注意如果无法前置会导致使用失败。怎么前置才能做到万无一失就需要根据实际情况来判断了。 相关推荐 Android System WebView 各版本下载地址(翻)https://www.apkmirror.com/apk/google-inc/android-system-webview/WebView java.lang.NoSuchMethodException:callDrawGLFunction-CSDN博客文章浏览阅读5.7k次。5.1系统上WebView初始化报错Caused by: java.lang.NoSuchMethodException: callDrawGLFunction [long]at java.lang.Class.getMethod(Class.java:664)at java.lang.Class.getMethod(Class.java:643)at com.android.webview.chromium.WebViewDelegateFactory$Api21CompatibilityDele_java.lang.nosuchmethodexception: android.view.displaylistcanvas.calldrawglfuhttps://shuaici.blog.csdn.net/article/details/78459486
http://www.laogonggong.com/news/122129.html

相关文章:

  • html音乐网站源码做的网站侵犯美的商标赔偿多少钱
  • 济南天桥区做网站公司网站建设app开发学习
  • 当今做网站的流行趋势培训公司网站建设
  • 给个网站做导航违法吗网站怎么对接微信支付宝
  • 网站的对比建设家具网站
  • 产看网站权重竞价网站服务器
  • 营销型网站免费模板下载校园网站建设的维护
  • 网站开发做表格示例北京公司模板网站好
  • 如何用html做班级网站网站目录编辑审核的注意事项
  • 网站托管网站建设竞价托管沈阳关键词排名首页
  • 做的好的微信商城网站婚纱摄影照片
  • seo关键词报价查询靖江seo收费贵吗
  • 贵阳微网站建设公司wordpress文章怎么生成标签
  • 怎么做分享网站广告投放平台有哪些
  • 做巧克力的网站wordpress 教程主题
  • 学院网站建设项目的活动分解注册安全工程师报考官网
  • 网站后台重置密码怎么做镇江建设局网站
  • 网站底部版权怎么做html视频播放器代码
  • 响应式自适应织梦网站模板网站建设有什么理论依据
  • 寺庙建设网站的意义凡客网上做的网站能否更改域名
  • 杭州网站建设方案服务公司网站设计要学什么
  • 网站推广设计做哪些荣成住房和城乡建设部网站
  • 水果零售电子商务网站综合评价与建设研究html页面 wordpress
  • 电子商务网站策划书布局设计广告设计公司前台
  • 温州市网站建设哪家公司好百度信息流是什么
  • 商标网站建设网站建设 个体经营范围
  • 专门做选择题的网站可以免费发外链的论坛
  • 网站建设与管理是课程成都网站优化页面
  • 做网站的项目开发计划书深互动平台登录
  • 51网站空间相册在哪里注册登录