【问题标题】:android fragments and listener events of activity running in background (lock screen)在后台运行的活动的android片段和侦听器事件(锁定屏幕)
【发布时间】:2014-11-05 10:51:29
【问题描述】:

我正在开发一个安装程序,它在各种片段和服务中运行不同的安装步骤。如果手机被锁定,安装将停止,直到解决锁定屏幕,甚至侦听器回调都在等待用户输入。

我可以从后台服务中捕获意图,但只能使用 onNewIntent(Intent intent)。 onResume() 仅在用户交互后调用。 是否可以将活动强制到前台,即使手机被锁定,还是我需要在锁定的手机上使用不同的概念?

问候

【问题讨论】:

    标签: android background fragment listener lockscreen


    【解决方案1】:

    您是否尝试过后台进程的服务,如果您使用服务,那么它将持续可用,如果手机被锁定。做一些Service的研发可能对你有帮助。

    【讨论】:

      【解决方案2】:

      尝试在手机锁定时需要显示的活动中设置android:showOnLockScreen="true"

      然后在 Activity onCreate() 方法上尝试下面的代码

      protected void onCreate(Bundle savedInstanceState) {
          super.onCreate(savedInstanceState);
      
          setContentView(R.layout.activity_stop_alarm);
      
          Window wind = getWindow();
          wind.addFlags(WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
          wind.addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
          wind.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);
          wind.addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
      }
      

      【讨论】:

      • 它没有效果,但我找到了这个线程,它似乎工作。 How to show dialog even if the screen is locked? 我还测试了强大的锁屏安全性,如 PIN 或密码。我想知道如果设备被 SIM 卡锁定会发生什么。
      • 我已经编辑了答案。我曾经在锁定屏幕上显示我的警报活动,这对我有用。希望对您有所帮助。
      • 它更像是一种解决方法,我必须重新设计我的概念并将整个安装过程而不是其中的一部分放到后台服务中。谢谢。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-01-20
      • 2012-06-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-26
      相关资源
      最近更新 更多