uni-app Android应用安装在Android5.1.1的POS机上,默认模板生成的应用一直停留在启动页无法进入,配置关闭splashscreen无效。

发布于 1周前 作者 bupafengyu 来自 uni-app

uni-app Android应用安装在Android5.1.1的POS机上,默认模板生成的应用一直停留在启动页无法进入,配置关闭splashscreen无效。

操作步骤

  1. 打开HBuildX 4.08版本,新建uni-app项目,选择默认模板,点击创建
  2. 空白项目新建成功,点击运行->运行到手机或模拟器->运行到Android App基座
  3. 选择POS真机,选择使用标准基座运行->运行
  4. 在POS机看应用启动

预期结果

可以正常显示应用首页,显示"Hello"

实际结果

HBuildX log显示:

18:14:26.278 项目 'empty_demo_1' 开始编译...  
18:14:27.801 请注意运行模式下,因日志输出、sourcemap 以及未压缩源码等原因,性能和包体积,均不及发行模式。  
18:14:27.816 编译器版本:4.08(vue3)  
18:14:27.820 正在编译中...  
18:14:29.617 项目 'empty_demo_1' 编译成功。  
18:14:29.629 ready in 2712ms.  
18:14:29.651 正在建立手机连接...  
18:14:30.439 手机端调试基座版本号为4.08, 版本号相同,跳过基座更新  
18:14:35.298 正在同步手机端程序文件...  
18:14:36.136 同步手机端程序文件完成  
18:14:37.849 正在启动HBuilder调试基座...  
18:14:38.849 应用【empty_demo_1】已启动

但是页面一直停留在启动页进入不了首页。

bug描述

【报Bug】系统版本为Android5.1.1的POS机上应用一直停留在启动页进不去,配置关闭splashscreen也没用。

img img

开发环境与版本信息

详情
产品分类 uniapp/App
PC开发环境操作系统 Mac
PC开发环境操作系统版本号 13.2.1
HBuilderX类型 正式
HBuilderX版本号 4.08
手机系统 Android
手机系统版本号 Android 5.1
手机机型 APOS A8
页面类型 vue
vue版本 vue2
打包方式 云端
项目创建方式 HBuilderX

4 回复

可以确认的是网络是正常的。同一个应用运行在华为Mate 9上没有问题,可以正常显示。



我也要运行到pos机上,但是现在查找不到设备,楼主运行之前是有做什么处理吗,因为我也没找到打开USB的地方

楼主有解决办法了吗, 我现在也遇到相同的问题了

针对您提到的uni-app应用在Android 5.1.1的POS机上启动时无法进入主界面,且配置关闭splashscreen无效的问题,这里提供一个可能的解决方案,通过代码层面的调整来尝试解决问题。请注意,由于Android 5.1.1版本较旧,可能存在一些兼容性问题,以下方案仅供参考。

首先,确保您已经在pages.json中正确配置了启动页面的跳转逻辑,并且尝试在manifest.json中关闭splashscreen。如果这些配置无效,您可以尝试以下步骤:

  1. 手动控制Splash Screen的隐藏: 在App.vueonLaunchonShow生命周期函数中,手动控制splash screen的显示和隐藏。uni-app提供了plus.navigator.splashscreen.hide()方法来隐藏启动屏。

    // App.vue
    export default {
      onLaunch: function () {
        // 延迟隐藏启动屏,确保应用资源加载完成
        setTimeout(() => {
          plus.navigator.splashscreen.hide();
          // 跳转到首页
          uni.navigateTo({
            url: '/pages/index/index' // 替换为您的首页路径
          });
        }, 2000); // 延迟时间可根据实际情况调整
      },
      // 其他生命周期函数...
    }
    
  2. 检查AndroidManifest.xml: 确保AndroidManifest.xml中没有错误地配置了多个启动Activity,或者splash Activity的配置有误。通常,uni-app会自动处理这部分配置,但手动检查总是一个好习惯。

  3. 兼容性问题处理: 由于Android 5.1.1较旧,可能存在一些API兼容性问题。如果上述方法无效,您可以尝试使用更基础的API或方法来实现启动屏的隐藏和页面跳转。例如,使用JavaScript的setTimeout结合window.location.href进行页面跳转(尽管这不是最佳实践,但在某些极端情况下可能有效)。

  4. 日志调试: 使用Android Studio或其他日志工具查看应用启动时的日志输出,寻找可能的错误信息或异常堆栈,这有助于定位问题。

  5. 升级uni-app框架: 确保您使用的uni-app框架版本是最新的,因为新版本可能修复了旧版本中的bug,提高了兼容性。

如果以上方法仍然无法解决问题,建议考虑在uni-app社区或相关开发者论坛发帖求助,提供详细的错误日志和配置信息,以便获得更具体的帮助。

回到顶部