邓琪昌
邓琪昌
  • 发布:2022-06-26 22:02
  • 更新:2022-06-29 10:05
  • 阅读:487

【报Bug】nvue页面使用native.js相关api后app启动时间非常慢10s+

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: Windows 10

HBuilderX类型: 正式

HBuilderX版本号: 3.4.15

手机系统: 全部

页面类型: nvue

vue版本: vue3

打包方式: 云端

项目创建方式: HBuilderX

测试过的手机:

小米,华为,魅族,OPPO...

示例代码:
<template>  
    <view>  
        <image src="/static/logo.png"></image>  
    </view>  
</template>  

<script setup>  
    // 修改安卓虚拟按键  
    var Color = plus.android.importClass("android.graphics.Color");  
    plus.android.importClass("android.view.Window");  
    var mainActivity = plus.android.runtimeMainActivity();  
    var window_android = mainActivity.getWindow();  
    window_android.setNavigationBarColor(Color.GREEN);  
</script>  

<style>  

</style>

操作步骤:

nvue页面做为启动首页中使用上面代码示例中的Native.js代码运行

预期结果:

在nvue页面做为启动首页情况下,使用Native.js相关api代码,APP的启动速度依旧快。

实际结果:

在nvue页面做为启动首页情况下,使用Native.js相关api代码,app启动速度10s+,太慢了。

bug描述:

nvue页面做为启动首页,使用Native.js的相关api代码,启动时间至少10s+。vue页面做为启动首页,启动时间1s+,测试小米,oppo,华为,魅族均是这种情况。nvue页面做为启动首页使用Native.js的相关api代码APP启动速度太慢了。已上传附件nvue/vue测试项目demo。

2022-06-26 22:02 负责人:无 分享
已邀请:
猫猫儿

猫猫儿 - 猫猫儿

plus.android.runtimeMainActivity() 获取需要较久时间,能不获取尽量先不获取,或者尝试加载完页面后再异步调用。如果必须马上获取可以在main.js获取,此时展示的是splash图

  • 邓琪昌 (作者)

    在main.js中获取使用也是一样的,这些操作都已经经过测试验证了。nvue做为启动首页,Native.js在main.js中使用或者在nvue启动首页面中使用,效果都是一样的。APP启动速度一样很慢10s+

    2022-06-26 23:31

  • 猫猫儿

    回复 邓琪昌: 这个操作本身就是很耗时的,放main.js目的是展示的不是白屏而是启动页,最佳的解决方案就是不在启动时就调用

    2022-06-26 23:42

  • 邓琪昌 (作者)

    回复 猫猫儿: nuve页面与vue页面分别做为首页启动,vue页面的启动时间比nvue页面启动时间都快很多。nvue和vue,主要差别是渲染层用不用webview,逻辑层都在v8里。nvue与vue使用相同的Native.js一对比,启动时间很明显nvue特别的慢。

    2022-06-27 08:32

DCloud_App_Array

DCloud_App_Array

我们是使用提交的示例应用测试没有发现两者启动速度有差别,请把安装包也上传一下。

  • 邓琪昌 (作者)

    测试应用apk压缩包超过10M上传不了,已私发至您的QQ。

    2022-06-28 20:22

2***@qq.com

2***@qq.com

我也遇到这个问题,和手机性能也有关心,老旧手机确实很慢,有个5-6秒吧,新手机会快一点,期待解决办法

要回复问题请先登录注册