当前位置:   article > 正文

鸿蒙3.0 APP混合开发闪退问题笔记_cordova 鸿蒙

cordova 鸿蒙

APP采用cordova混合开发, 鸿蒙2.0以及安卓操作系统正常使用,但是在鸿蒙3.0中出现APP闪退,对APP进行真机调试发现,鸿蒙3.0系统对crosswork插件存在兼容问题,这些问题会导致APP页面加载失败,进而导致App闪退

测试手机:Mate 30 Pro 5G 8G/256G

测试系统:HarmonyOS版本3.0.0

内核版本:5.10.43 HarmonyOS@localhost #1

补丁:2023年1月1日

核心问题:引入了crosswork问题

crosswork本身为了兼容老版本的手机,在android7之后会有闪退问题,在鸿蒙系统里如果有该插件会导致当页面中出现很多问题,比如:字体不识别闪退、存在input标签时闪退,如果要保留crosswork,可以做兼容处理。

编辑文件 /platforms/android/CordovaLib/src/org/apache/cordova/CordovaWebViewImpl.java

引入包 import android.os.Build;

在 line76 后添加

  1. if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
  2. className = "org.apache.cordova.engine.SystemWebViewEngine";
  3. }

如果没有sdk低,没有Build.VERSION_CODES.M,那就写死好了,23应该对应的Android 6.0

  1. if (Build.VERSION.SDK_INT >= 23) {
  2. className = "org.apache.cordova.engine.SystemWebViewEngine";
  3. }




在使用crosswork插件时,遇到的问题,把crosswork兼容或者删掉以下都不是问题,都恢复正常

1、字体

不认识的字体,直接报错

font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;

如果改为 : font-family: "Times New Roman",Georgia,Serif; APP正常,闪退消失

无法使用@font-face自定义字体

2、标签不规范

3、可以使用div,无法使用input标签

致命问题,只能在高版本禁止使用crosswork

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/257793?site
推荐阅读
相关标签
  

闽ICP备14008679号