欢迎来到天天文库
浏览记录
ID:3928031
大小:216.37 KB
页数:2页
时间:2017-11-25
《【麦子学院】android 5.0获取前台应用的包名实现方法详解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、IT在线教育平台———麦子学院:http://www.maiziedu.com【麦子学院】android5.0获取前台应用的包名实现方法详解虽然近期Android6.0讨论得比较激烈,但是由于该版本是一个最新版本,还未广泛投入使用,就暂不讨论。今天和大家分享的是Android5.0对于前台应用的包名获取问题。背景android5.0以后的手机发现我们的APP悬浮窗获取前台应用的名称,以前做法是这样的:.src-java}publicStringgetForegroundApp(Contextcontext){List2、rocesInfo>lr=context.getRunningAppProcesses();if(lr==null){returnnull;}for(RunningAppProcessInfora:lr){if(ra.importance==RunningAppProcessInfo.IMPORTANCE_VISIBLE3、4、ra.importance==RunningAppProcessInfo.IMPORTANCE_FOREGROUND){returnra.processName;}}returnnull;}现在上面代码中的lr.size5、一直是1,最后google发现API21新增的接口android.app.usage,这个API比已弃用的getRecentTasks()方法提供了更详细信息。实现查看官方文档,说明实现如下:.src-java}privateStringgetForegroundApp(){IT在线教育平台———麦子学院:http://www.maiziedu.comlongts=System.currentTimeMillis();ListqueryUsageStats=usageStatsManager.queryUsageSt6、ats(UsageStatsManager.INTERVAL_BEST,ts-2000,ts);if(queryUsageStats==null7、8、queryUsageStats.isEmpty()){returnnull;}UsageStatsrecentStats=null;for(UsageStatsusageStats:queryUsageStats){if(recentStats==null9、10、recentStats.getLastTimeUsed()11、ts=usageStats;}}returnrecentStats.getPackageName;}权限要求在Android开发中,要使用这个API,首先你必须在你的mainifest文件声明“android.permission.PACKAGE_USAGE_STATS”权限。然后在设置>安全>有权查看使用情况的应用里,用户必须允许该app的访问。以上就是AndroidL中,现在获取应用的包名的实现方法,代码基本参考的是官方文档,希望对想获取应用的包名的程序猿有一些帮助,不用慢慢去查文档吧。相关文章:《如何搭建AndroidSDK镜像服务器12、?》
2、rocesInfo>lr=context.getRunningAppProcesses();if(lr==null){returnnull;}for(RunningAppProcessInfora:lr){if(ra.importance==RunningAppProcessInfo.IMPORTANCE_VISIBLE
3、
4、ra.importance==RunningAppProcessInfo.IMPORTANCE_FOREGROUND){returnra.processName;}}returnnull;}现在上面代码中的lr.size
5、一直是1,最后google发现API21新增的接口android.app.usage,这个API比已弃用的getRecentTasks()方法提供了更详细信息。实现查看官方文档,说明实现如下:.src-java}privateStringgetForegroundApp(){IT在线教育平台———麦子学院:http://www.maiziedu.comlongts=System.currentTimeMillis();ListqueryUsageStats=usageStatsManager.queryUsageSt
6、ats(UsageStatsManager.INTERVAL_BEST,ts-2000,ts);if(queryUsageStats==null
7、
8、queryUsageStats.isEmpty()){returnnull;}UsageStatsrecentStats=null;for(UsageStatsusageStats:queryUsageStats){if(recentStats==null
9、
10、recentStats.getLastTimeUsed()11、ts=usageStats;}}returnrecentStats.getPackageName;}权限要求在Android开发中,要使用这个API,首先你必须在你的mainifest文件声明“android.permission.PACKAGE_USAGE_STATS”权限。然后在设置>安全>有权查看使用情况的应用里,用户必须允许该app的访问。以上就是AndroidL中,现在获取应用的包名的实现方法,代码基本参考的是官方文档,希望对想获取应用的包名的程序猿有一些帮助,不用慢慢去查文档吧。相关文章:《如何搭建AndroidSDK镜像服务器12、?》
11、ts=usageStats;}}returnrecentStats.getPackageName;}权限要求在Android开发中,要使用这个API,首先你必须在你的mainifest文件声明“android.permission.PACKAGE_USAGE_STATS”权限。然后在设置>安全>有权查看使用情况的应用里,用户必须允许该app的访问。以上就是AndroidL中,现在获取应用的包名的实现方法,代码基本参考的是官方文档,希望对想获取应用的包名的程序猿有一些帮助,不用慢慢去查文档吧。相关文章:《如何搭建AndroidSDK镜像服务器
12、?》
此文档下载收益归作者所有