我正在开发主屏幕替换应用程序。我有一个 Activity 设置为默认,我想覆盖(在某种意义上)双击主页按钮时发生的事情。到目前为止,我在 Home Activity 的 onResume()
方法中有代码,用于检测 Home 按钮是否被快速连续点击两次。所以基本上,我有代码可以在双击主页按钮时运行。
问题是,在我的代码之上,有一个应用程序,用户可以在双击主页按钮时启动的设置中进行设置。所以我的代码都运行了,这个应用程序也启动了。似乎没有办法覆盖系统双击主页按钮(根据我在 SO 上阅读的内容),但是有没有办法调出选择器对话框,用户可以在其中选择要在双击时启动的应用程序,并提示他选择“无”?或者类似于用户被带到他自己的设置并被敦促更改它们的东西?
编辑:或者,如果我可以在我的 Activity 运行时覆盖双击主页按钮(我可能错过了一些东西)不做任何事情,那该怎么做?
最佳答案
以下代码位于主屏幕替换 Activity 的 onResume() 上,允许您在连续点击两次主屏幕时运行一段代码。 int detectDoubleTap = 0;//将其定义为外部类中的静态变量或在 onCreate() 中将其定义为全局变量
if (System.currentTimeMillis() - detectDoubleTap < 250) {
// Code to be run on double tap
}
detectDoubleTap = System.currentTimeMillis();
虽然这工作正常,但似乎(回答我的问题)没有任何方法可以强行覆盖用户已设置为双击启动应用程序的任何内容。因此,如果有双击启动的应用程序,上面的代码将运行,并且该应用程序将启动。
关于android - 在 Android 中双击主页按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18235871/