java - Android java启动失去焦点

标签 java android startup

我正在编写一个简单的应用程序,以在 Android 启动时通过以太网启用 adb,并使用取消按钮来防止在网络上启用 adb。当 super 用户的弹出窗口出现时,如果立即单击,一切都很好,但如果我等待几秒钟并单击“确定”,则显示无法更新。

onCreate 使用 mHandler 来启动一个 runnable,用于倒计时器。当我使用 mHandler.postDelayed 尝试延迟启动过程时,显示永远不会更新。当我使用 mHandler.postAtFrontOfQueue 时,倒计时显示功能正常,但在 super 用户对话框之后,屏幕无法更新。

倒计时器使用mHandler.postAtTime重复调用runnable。我想我需要在可运行的开头放置一些东西来重置焦点,但我对 Android 仍然是新手,并且没有运气弄清楚什么会让它高兴。

当应用程序手动运行时,一切都是正确的。在第二个 Android 上,一切都是正确的。

最佳答案

我找到了解决该问题的方法,即从使用“android.intent.action.boot_completed”更改为使用“android.intent.action.MEDIA_MOUNTED”。

我观察到 boot_completed 发生在完全启动完成之前。有某种东西,不知道到底是什么,踩在了一切之上。当我尝试使用计时器 sleep 或启动可运行程序时,如果 sleep 或计时器超出了出现问题的时间,则 sleep 和计时器将永远不会返回,而不会进入可运行程序。通过切换到media_mounted,任何踩在东西上的东西都已经过去了。

我一直在考虑使用启动应用程序从 SD 执行 init.rc 文件,因此触发媒体安装对于这种需求是有意义的。

关于java - Android java启动失去焦点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18008237/

相关文章:

java - 将位图绘制到 Canvas 上重叠

java - 字段变量产生与递归局部变量不同的结果

java - 创建车辆程序

java - 使用 Android NDK 获取 ANDROID_ID - 过时的本地引用错误

android - 微调器在弹出窗口中显示为下拉列表?

macos - 检查点安全客户端 : "Connectivity with VPN services is lost" on Mac OS 10. 8

java - 测试 java 列表中的值

java - 将 Maven 项目作为依赖项添加到 Android Studio 应用程序

iphone - 在 iPhone 启动(引导)或关机后加载应用程序

linux - 如何每小时重启一个服务?