hx由4.20升至4.45,鸿蒙app无法真机白屏。GetOHDeviceInfo handle is nullptr; libdeviceinfo_ndk.z.so

hx由4.20升至4.45,鸿蒙app无法真机白屏。GetOHDeviceInfo handle is nullptr; libdeviceinfo_ndk.z.so

操作步骤:

  1. 使用hbuildx4.45(检查更新,已是最新)创建项目,点击运行到鸿蒙真机。

  2. unpackage\debug\app-harmony-xxxx拷贝出来,进行配置相关,成功在真机上运行初始项目。

  3. 将原始uni仓库中的package.json依赖更新为:

    {
      "dependencies": {
        "@dcloudio/uni-app": "3.0.0-4040520250104002",
        "@dcloudio/uni-app-harmony": "3.0.0-4040520250104002",
        "@dcloudio/uni-app-plus": "3.0.0-4040520250104002",
        "@dcloudio/uni-components": "3.0.0-4040520250104002",
        "@dcloudio/uni-h5": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-alipay": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-baidu": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-jd": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-kuaishou": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-lark": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-qq": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-toutiao": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-weixin": "3.0.0-4040520250104002",
        "@dcloudio/uni-mp-xhs": "3.0.0-4040520250104002",
        "@dcloudio/uni-quickapp-webview": "3.0.0-4040520250104002",
        "@dcloudio/uni-ui": "^1.5.3",
        "@types/fs-extra": "^11.0.4",
        "@types/lodash-es": "^4.17.12",
        "@vant/weapp": "^1.11.4",
        "@vueuse/core": "^10.9.0",
        "@vueuse/integrations": "^10.9.0",
        "@vueuse/shared": "^10.9.0",
        "async-validator": "^4.2.5",
        "axios": "^1.6.8",
        "archiver": "^7.0.1",
        "canvas-to-svg": "^1.0.3",
        "date-fns": "^3.6.0",
        "dateformat": "^5.0.3",
        "dijkstrajs": "^1.0.3",
        "fs-extra": "^11.2.0",
        "lodash-es": "^4.17.21",
        "mitt": "^3.0.1",
        "moment": "^2.30.1",
        "pinia": "2.0.36",
        "postcss-url": "^10.1.3",
        "svg64": "^2.0.0",
        "swiper": "^11.1.1",
        "uqrcodejs": "^4.0.7",
        "vite-plugin-remote-assets": "^0.4.1",
        "vue": "^3.5.12",
        "vue-awesome-swiper": "^5.0.1",
        "vue-demi": "^0.14.7",
        "vue-i18n": "^9.10.2",
        "weapp-polyfill": "^3.2.2",
        "weapp-qrcode": "^1.0.0",
        "wechat-utils": "0.0.1"
      },
      "devDependencies": {
        "@dcloudio/types": "^3.4.8",
        "@dcloudio/uni-automator": "3.0.0-4040520250104002",
        "@dcloudio/uni-cli-shared": "3.0.0-4040520250104002",
        "@dcloudio/uni-stacktracey": "3.0.0-4040520250104002",
        "@dcloudio/uni-uts-v1": "3.0.0-4040520250104002",
        "@dcloudio/vite-plugin-uni": "3.0.0-4040520250104002",
        "@douyin-microapp/typings": "^1.2.2",
        "@typescript-eslint/eslint-plugin": "^7.4.0",
        "@typescript-eslint/parser": "^7.4.0",
        "@vue/compiler-sfc": "^3.4.21",
        "@vue/runtime-core": "^3.4.21",
        "@vue/tsconfig": "^0.1.3",
        "eslint": "^8.57.0",
        "eslint-plugin-vue": "^9.24.0",
        "http-server": "^14.1.1",
        "js-base64": "^3.7.7",
        "minimist": "^1.2.8",
        "miniprogram-api-typings": "^3.12.2",
        "miniprogram-ci": "^1.9.15",
        "prettier": "3.2.5",
        "qrcode": "^1.5.4",
        "rollup-plugin-postcss": "^4.0.2",
        "sass": "^1.72.0",
        "strip-json-comments": "3.1.1",
        "tt-ide-cli": "^0.1.25",
        "typescript": "^4.9.5",
        "vite": "5.2.8",
        "vite-copy-plugin": "^0.4.0",
        "vite-plugin-replace-image-url": "^1.1.1",
        "vue-tsc": "^1.8.27"
      }
    }
    
  4. pnpm run build项目,打包后的文件替换到新的鸿蒙基座中,运行到真机。

  5. 对hx4.20鸿蒙基座中部分代码有过改动。但未对hx4.45基座进行过类似改造,可以参考试试…

预期结果:

展示页面

实际结果:

错误日志如下:

03-04 21:37:11.944   32598-32598   C0391B/com.you...letHap/AceWeb  com.youca...alletHap  I     [(100000:100000:scope)] OnRootLayerChanged width : 1256, height : 2667  
03-04 21:37:11.944   32598-32598   C04500/com.you...WalletHap/cef  com.youca...alletHap  I     [nodict][browser_contents_delegate.cc:926] invokeVisualStateCallback success: 1  
03-04 21:37:11.944   32598-32598   C04500/com.you...WalletHap/cef  com.youca...alletHap  I     [nodict][browser_contents_delegate.cc:1235] CefBrowserContentsDelegate::OldPageNoLongerRendered  
03-04 21:37:11.944   32598-32598   C04500/com.you...tHap/chromium  com.youca...alletHap  I     [nodict][nweb_handler_delegate.cc:1264] NWebHandlerDelegate::OnPageVisible  
03-04 21:37:11.944   32598-32598   C0391B/com.you...letHap/AceWeb  com.youca...alletHap  I     [(-2:100000:singleton)] WebClientImpl::OnPageVisible override enter  
03-04 21:37:11.944   32598-32598   C0391B/com.you...letHap/AceWeb  com.youca...alletHap  I     [(100000:100000:scope)] WebDelegate::OnPageVisible, web id = 1  
03-04 21:37:11.944   32598-32598   C0391B/com.you...letHap/AceWeb  com.youca...alletHap  I     [(100000:100000:scope)] JSWeb::OnPageVisible uiCallback enter  
03-04 21:37:11.945   32598-32598   C0391B/com.you...letHap/AceWeb  com.youca...alletHap  I     [(100000:100000:scope)] JSWeb::OnPageVisible async event execute  
03-04 21:37:11.947   32598-32598   C04500/com.you...tHap/chromium  com.youca...alletHap  I     [nodict][nweb_handler_delegate.cc:1218] NWebHandlerDelegate::OnLoadEnd  
03-04 21:37:11.947   32598-32598   C04500/com.you...tHap/chromium  com.youca...alletHap  I     [nodict][nweb_handler_delegate.cc:1222] NWebHandlerDelegate:: Mainframe OnLoadEnd  
03-04 21:37:11.947   32598-32598   C04500/com.you...tHap/chromium  com.youca...alletHap  W     [nodict][arkweb_native_object.cc:78] NativeArkWeb load end callback is nullptr  
03-04 21:37:11.947   32598-32598   C04500/com.you...tHap/chromium  com.youca...alletHap  I     [nodict][content_subresource_filter_throttle_manager.cc:595] [AdBlock] subresource map.size():0  
03-04 21:37:11.947   32598-32598   C04500/com.you...WalletHap/cef  com.youca...alletHap  W     [nodict][icon_helper.cc:97] No icon sizes available for URL: data:,  
...

更多关于hx由4.20升至4.45,鸿蒙app无法真机白屏。GetOHDeviceInfo handle is nullptr; libdeviceinfo_ndk.z.so的实战教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

你提到代码使用新版 ide 创建的项目能够正常运行,修改原始工程后出现问题。首先缩小问题范围,修改的内容分步骤操作,先明确你的问题发生范围,区分是编译产物有变动,还是你的二次改动不兼容。
你提供报错是鼠标复制的吧,内容不完整,报错日志提供单独的 txt 文档放到 zip 里上传一下,提供简单的复现工程我可以运行一下,提供更多信息,有助于定位和解答你的问题。

更多关于hx由4.20升至4.45,鸿蒙app无法真机白屏。GetOHDeviceInfo handle is nullptr; libdeviceinfo_ndk.z.so的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


编译产物没有问题,win重启电脑就好了…

回到顶部