javascript - Cordova ( ionic ): Splashscreen only works one time on Android

标签 javascript android cordova ionic-framework splash-screen

我通过将插件添加到我的 Ionic 应用程序中,使用 Cordova 插件创建了一个 Splashscreen:

cordova plugin add org.apache.cordova.splashscreen

当我在我的 Android 手机上安装该应用程序并首次运行时,我看到启动画面正在运行。但是,如果我按后退按钮退出应用程序,然后重新打开应用程序,这次我看不到启动画面,而是直接进入主屏幕。我认为这是因为当我按下后退按钮时应用程序没有完全关闭(退出)。因此,如果我转到仍在运行的应用程序列表并手动关闭我的应用程序(从正在运行的应用程序列表),那么下次我打开我的应用程序时,我会再次看到启动画面。

我尝试在按下后退按钮时退出应用程序:

function onLoad() {
    document.addEventListener("deviceready", onDeviceReady, true);
}

function onDeviceReady() {
    document.addEventListener("backbutton", onBackKeyDown, false);
}
function onBackKeyDown()
{
 navigator.app.exitApp();
}

在我的 JavaScript 代码中,但它没有帮助。 对此有什么好的解决方案?

最佳答案

启动画面用于在应用加载时显示默认图像,我们不希望用户在应用启动时因黑屏而感到沮丧。结果,android 在 coldstart 上显示启动画面(应用程序在被杀死时正在启动)。您通常不需要在 hotstart 上显示闪屏,但如果需要,您可以使用由闪屏 cordova 插件公开的以下 JavaScript 方法:

navigator.splashscreen.show();
navigator.splashscreen.hide();

只需确保在平台 就绪 时调用这些。或者,您可以使用 ngCordova 为此提供可注入(inject)服务 api:http://ngcordova.com/docs/plugins/splashscreen/

处理恢复事件:

document.addEventListener('deviceready', function () {
  document.addEventListener('resume', yourAsyncResumeCallback, false);
});

关于javascript - Cordova ( ionic ): Splashscreen only works one time on Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36669627/

相关文章:

java - 在 Android Studio 中初始化 TextToSpeech 类

android - 通过随机键检索子值-Firebase

javascript - Cordova iOS - 插件未加载

javascript - 在移动屏幕上以 HTML 格式获取溢出(放大)图像的可见部分(坐标)

javascript - 透视 CSS3 不工作

javascript - 在 SVG 中嵌入 javascript 和 CSS

javascript - Cordova - window.history.back() 不适用于 iOS 9 中的 HTML 后退按钮

javascript - Mongoose 子文档 : cannot call method call to of undefined

android - GoogleJsonResponseException : 401 Unauthorized calling endpoint with OAuth2 protection

file - 无法在 Phonegap 中使用 inappbrowser 下载文件?