我们可能在实现notification的逻辑时,需要判断应用是在打开还是后台的状态,如果在后台状态,就发送Notification提醒。
/*** 判断程序是否打开*@return*/public static booleanisRunningInForeground() {
booleanisActivityFound = false;ActivityManager activityManager = (ActivityManager) MyApplication.getContext().getSystemService(Context.ACTIVITY_SERVICE);List services = activityManager
.getRunningTasks(1);if(services.get(0).topActivity.getPackageName().toString()
.equalsIgnoreCase(MyApplication.getContext().getPackageName().toString())) {
isActivityFound = true;}
returnisActivityFound;}
android:name="android.permission.GET_TASKS"/>
如果想判断别的应用,修改查询的app名
if(services.get(0).topActivity.getPackageName().toString()
.equalsIgnoreCase(查询的app包名)) {
isActivityFound = true;}