【问题标题】:Cordova splash screen not hiding on android device but app is working fine in Chrome webviewCordova 闪屏未隐藏在 android 设备上,但应用程序在 Chrome webview 中运行良好
【发布时间】:2025-12-05 18:00:01
【问题描述】:

在我的 Android (6.0.1) 设备上运行我的Ionic 3 应用程序时,该应用程序卡在Cordova 启动屏幕上,尽管我可以通过 Chrome WebView 使用它(它可以工作很好)。

更奇怪的是,安装后第一次运行应用程序时,问题不会出现,只有在我关闭它并再次运行它(后退按钮或从任务列表滑动)后才会出现。

Chrome WebView 控制台中当然没有错误。我还尝试在控制台中运行:
navigator.splashscreen.hide();
它不起作用。

挖掘更多

我还意识到,当问题发生时,我在config.xml 中设置的关于启动画面的任何首选项都会被忽略。 例如在第一次运行时:
<preference name="ShowSplashScreenSpinner" value="false" />
确实可以正常工作,没有微调器,并且启动画面会在一段时间后隐藏。如果我在控制台中运行:
navigator.splashscreen.show();
会再次显示初始屏幕,而 .hide() 会隐藏它。

在随后的运行中,无论偏好如何,微调器都会显示。甚至更奇怪的是:
navigator.splashscreen.show();
确实显示了没有微调器的启动画面(我猜是在现有的之上),而.hide() 回到带有微调器的启动画面。

到目前为止我尝试过的事情没有成功:

  • npm install -g cordova@latest
  • npm install -g ionic@latest
  • 将 package.json 中的依赖项更新为最新版本
  • 删除 node_modules 和平台文件夹并再次运行npm install
  • 运行cordova platform rm android && cordova platform add android
  • 删除 package-lock.json 并再次运行 npm install
  • 从我的代码中完全删除了启动画面插件Cordovapackage.json(并删除了 node_modules 和平台文件夹),但仍然显示死亡启动画面!

这是我的环境:

cli packages:
    @ionic/cli-utils  : 1.13.1
    ionic (Ionic CLI) : 3.13.2
global packages:
    cordova (Cordova CLI) : 7.1.0
local packages:
    @ionic/app-scripts : 3.0.0
    Cordova Platforms  : none
    Ionic Framework    : ionic-angular 3.7.1
System:
    Android SDK Tools : 26.1.1
    Node              : v7.2.0
    npm               : 5.5.1
    OS                : Windows 10

如果有帮助,还有我的 package.jsonconfig.xml

有什么想法吗?

【问题讨论】:

  • 你为什么使用没有 ionic-native 包装器的 corova 插件?
  • 我确实在我的 app.component.ts 中使用了 Ionic 原生包装器:this.splashScreen.hide();。我在尝试调试时只在控制台中使用了navigator.splashscreen.hide()
  • 只是想确认一下。在访问插件之前您是否等待platform.ready() 事件?
  • 如果您正在执行此操作,您可以包含您的 app.component.ts 吗?
  • 这是我的 app.component.ts pastebin.com/mKSajB9M

标签: android cordova ionic2 ionic3


【解决方案1】:

从一个新项目开始,复制我的src/文件夹,仔细安装所有插件并测试应用程序我发现问题是由Ionic Pro插件引起的。

以下修复了它: ionic cordova plugin rm cordova-plugin-ionic --save

【讨论】:

  • 删除 Ionic Pro 也解决了我的问题!谢谢。
最近更新 更多