android onResume is called before you unlock the phone
16lz
2022-01-04
最近遇到一个问题,android上运行app当锁定屏幕,然后解锁.
android 解锁屏幕之前会先调用onResume方法,有时候这并不是开发者想要的结果...比如声音在没解锁之前就播放 用户体验效果就有点差了...
解决这个问题有两个方法,直接上代码了...
1.
@Overridepublic void onWindowFocusChanged(boolean hasFocus) {if (hasFocus) { // todo something; } super.onWindowFocusChanged(hasFocus);}
2.
public class ExampleActivity extends Activity { @Override protected void onCreate() { IntentFilter filter = new IntentFilter(Intent.ACTION_SCREEN_ON); filter.addAction(Intent.ACTION_SCREEN_OFF); BroadcastReceiver mReceiver = new ScreenReceiver(); registerReceiver(mReceiver, filter); } @Override protected void onPause() { if (ScreenReceiver.wasScreenOn) { System.out.println("onPause() called because screen turned off."); } else { System.out.println("normal onPause() call"); } super.onPause(); } @Override protected void onResume() { if (!ScreenReceiver.wasScreenOn) { System.out.println("onResume() called when screen turns on"); } else { System.out.println("normal onResume() call"); } super.onResume(); }}
更多相关文章
- Android(安卓)AsyncTask完全解析,带你从源码的角度彻底理解
- android 登陆、提交数据或加载数据时提示页面
- Android(安卓)网络框架 Retrofit 源码解析
- Android截屏截图方法所有方法汇总(包括Activity、View、ScrollVie
- 自己封装的Android(安卓)sqlite-helper.jar包使用方法
- Android特色开发(1):传感器
- 关于Android分辨率的支持
- 浅谈Java中Collections.sort对List排序的两种方法
- Python list sort方法的具体使用