【麦子学院】android 5.0获取前台应用的包名实现方法详解

【麦子学院】android 5.0获取前台应用的包名实现方法详解

ID:3928031

大小:216.37 KB

页数:2页

时间:2017-11-25

【麦子学院】android 5.0获取前台应用的包名实现方法详解_第1页
【麦子学院】android 5.0获取前台应用的包名实现方法详解_第2页
资源描述:

《【麦子学院】android 5.0获取前台应用的包名实现方法详解》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、IT在线教育平台———麦子学院:http://www.maiziedu.com【麦子学院】android5.0获取前台应用的包名实现方法详解虽然近期Android6.0讨论得比较激烈,但是由于该版本是一个最新版本,还未广泛投入使用,就暂不讨论。今天和大家分享的是Android5.0对于前台应用的包名获取问题。背景android5.0以后的手机发现我们的APP悬浮窗获取前台应用的名称,以前做法是这样的:.src-java}publicStringgetForegroundApp(Contextcontext){List

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、?》

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。