android 在待机状态下显示某一个activity
来源:互联网 发布:淘宝直播是不是很赚钱 编辑:程序博客网 时间:2024/06/06 15:49
问题描述:有报警信息到来时,需要立即显示提示dialog。程序在系统非待机状态时提示对话框会正常显示,但是当系统处于待机休眠状态时,在受到报警提示信息之后,对话框并不会正常显示出来。
解决方法:在需要显示的那个activity的onCreate方法中写上如下语句
public void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);// if (wakeLock == null) {// PowerManager pm = (PowerManager)// getSystemService(Context.POWER_SERVICE);// wakeLock = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK, "my tag");// wakeLock.acquire();// }// this.requestWindowFeature(Window.FEATURE_NO_TITLE);Log.i("INFO", "onCreate() in DismissLock");pm = (PowerManager) getSystemService(Context.POWER_SERVICE);km = (KeyguardManager) getSystemService(Context.KEYGUARD_SERVICE);kl = km.newKeyguardLock("INFO");wl = pm.newWakeLock(PowerManager.FULL_WAKE_LOCK| PowerManager.ACQUIRE_CAUSES_WAKEUP| PowerManager.ON_AFTER_RELEASE, "INFO");wl.acquire(); // wake up the screenkl.disableKeyguard();// dismiss the keyguardthis.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD| WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,WindowManager.LayoutParams.FLAG_FULLSCREEN| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD| WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON| WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);setContentView(R.layout.activity_event_alert);}在onDestroy方法中写上如下语句
public void onDestroy() {Log.i(TAG, "onDestroy");wl.release();kl.reenableKeyguard();super.onDestroy();}在manifest中配置权限:
<uses-permission android:name="android.permission.WAKE_LOCK" /> <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />写好以上语句之后基本上已经可以在待机状态下显示了。
但是我遇到的问题是,在报警到来后任然不能正常显示提示对话框。查了好久,终于在stackoverflow上看到了一篇介绍的文章点击打开链接,正如这片文章中所说的我在manifest中将需要显示的那个对话框设置成android:screenOrientation="portrait",于是我将这句话删除,然后程序能够在正常运行。待机状态能够正常提示了。
可参考下这个http://stackoverflow.com/questions/9554950/activity-to-be-displayed-even-when-phone-is-in-locked-mode?answertab=active#tab-top
和http://developer.android.com/reference/android/os/PowerManager.html
- android 在待机状态下显示某一个activity
- android 锁屏状态下显示activity
- 为什么android在待机状态下网络连接会中断的?
- Android待机状态更新
- 待机状态下唤醒电脑的方法
- android Activity窗体显示状态设置
- android 在待机休眠状态 解除屏幕锁定 并点亮屏幕
- Android锁屏状态下弹出activity
- Android锁屏状态下弹出activity
- Android锁屏状态下弹出activity
- Android锁屏状态下弹出activity
- Android锁屏状态下弹出activity
- Android锁屏状态下弹出activity
- dialog在非activity下显示解决方案
- Android在待机模式下,无法获得传感器数据的解决办法。
- Windows Vista待机状态下使用多少内存?
- Android activity在屏幕显示方向设置
- Android应用程序--获取待机、唤醒、关机、网络状态变化消息
- iPhone开发之音频知识
- Android动画(图片闪烁、左右摇摆、上下晃动等效果)
- Request.QueryString 不能像使用方法那样使用不可调用
- JavaScript 页面跳转的几种方式
- GCD介绍(一): 基本概念和Dispatch Queue
- android 在待机状态下显示某一个activity
- hdu 1158 Employment Planning(DP)
- http协议备份
- vmware添加新硬盘 挂载新硬盘 硬盘扩容
- [HBase] Hbase Coprocessors
- 按某一字段分组取最大(小)值所在行的数据
- xcode3.2.x和xcode4.2.1在lion上并存
- Android Binder设计与实现 – 设计篇
- <红泪集> 之 爸爸