我需要通过 packageName 检查 - 是否正在运行应用程序。在 v.21 之前,我只是得到正在运行的应用程序的列表并跳舞。但现在它不起作用 - 只返回一个我的应用程序。我知道我需要使用“统计使用”,但找不到完整的例子。我不需要所有这些分析,我需要一个简单的功能bool isRunning(String packageName)如何在没有围绕它跳舞的情况下在新的 Android (>21) 上实现它?更新。code4rox的答案最好。一切正常,谢谢!我使用此代码检查权限:import android.content.pm.PackageManager;import android.content.pm.ApplicationInfo;import android.app.AppOpsManager;import android.util.Log;import android.provider.Settings;try { PackageManager packageManager = getContext().getPackageManager(); ApplicationInfo applicationInfo = packageManager.getApplicationInfo(getContext().getPackageName(), 0); AppOpsManager appOpsManager = (AppOpsManager) getContext().getSystemService(Context.APP_OPS_SERVICE); int mode = appOpsManager.checkOpNoThrow(AppOpsManager.OPSTR_GET_USAGE_STATS, applicationInfo.uid, applicationInfo.packageName); if (!(mode == AppOpsManager.MODE_ALLOWED)) { Intent intent = new Intent(Settings.ACTION_USAGE_ACCESS_SETTINGS); startActivity(intent); } } catch (PackageManager.NameNotFoundException e) {}这用于检查应用程序:import android.util.Log;import android.app.usage.UsageStatsManager;import android.app.usage.UsageStats;import java.util.List;import java.util.SortedMap;import java.util.TreeMap;import java.util.ArrayList;
添加回答
举报
0/150
提交
取消