繁体   English   中英

Android 重新启动时运行应用程序导致 android 默认主屏幕未激活

[英]Android Running app on reboot causing android default home screen not activate

所以我有一个应用程序,我希望它在设备重新启动时立即运行。 为此,我向 MainActivity 添加了主页和默认类别。

<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />

但是在这样做之后,由于默认主屏幕没有启动,它需要点击主页按钮两次 go 回到主屏幕。 我知道我可以通过监控主页按钮点击操作来处理这个问题,比如关注。

override fun onAttachedToWindow() {
    super.onAttachedToWindow()
    this.window.setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);
}

override fun onKeyDown(keyCode: Int, event: KeyEvent?): Boolean {
    if (keyCode == KeyEvent.KEYCODE_HOME) {
        //open defualt home screen intent
    }
    return super.onKeyDown(keyCode, event)
}

但是,如果用户去其他地方(比如说从状态栏打开设置)然后单击主页按钮。 这个问题会再次发生。

因此有没有办法避免这种情况? 也许考虑在设备重新启动时在后台运行默认主屏幕,但老实说我不知道解决方案。

将自己设置为 HOME 意味着您声称自己是启动器应用程序 - 替代主屏幕。 同时运行 2 个启动器应用程序会使系统感到困惑。 不要那样做。 如果要在启动时启动,请使用 BOOT_COMPLETE 侦听器并从中启动 Activity。 仅当您正在编写替代主屏幕或信息亭应用程序时才应使用您使用的方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM