bor*_*ges 0 android android-notifications android-activity
我想在特定情况下仅在某个活动不可见时在我的应用中启动通知.
当我创建并销毁Activity时(使用onCreate/onDestroy),如果通过onPause/onResume方法可以看到此Activity,我设法在服务的绑定/取消绑定中执行此操作e,如下面的代码所示:
public void onCreate(Bundle savedInstanceState) {
// ...
bindService(...);
}
public void onDestroy() {
// ...
unbindService(mConnection);
}
public void onResume() {
// ...
// this method sets to true the Service's boolean which retain Activity's visibility.
mService.registerActivity(true);
}
public void onPause() {
mService.registerActivity(false);
}
Run Code Online (Sandbox Code Playgroud)
在服务上,我检查此布尔值以启动通知.
它适用于除特定情况之外的所有情况:在此活动中打开应用程序但启用了锁定屏幕.
通过我做的一些测试,当锁屏出现时,调用Activity.onPause方法.我希望锁定屏幕解锁后才调用Activity.onResume方法,但事实并非如此.当我按下电源按钮来召唤锁定屏幕时,已经调用了Activity.onResume方法.从这个意义上说,我所做的是不对的.
如何仅在用户解锁锁定屏幕时才调用Activity.onResume方法?或者......我怎样才能确定锁定屏幕已解锁且用户真的在看活动?
| 归档时间: |
|
| 查看次数: |
1419 次 |
| 最近记录: |