Answers:
Android允许从GUI查看使用情况统计信息。这是您如何看到它。(资料来源,凯文·斯沃兹(Kevin Swartz))
*#*#4636#*#*
。它将打开一个名为Testing的窗口,这是Settings应用程序的子设置。转到使用情况统计。
对于棒棒糖:
条目的顺序为App,上次使用时间和使用时间。
(点击图片放大)
对于Jelly Bean 4.2.1至Kitkat 4.4.2:
(点击图片放大)
这些Android版本中的使用时间以毫秒(ms)显示。你可以做自己的计算,或尝试像一个转换工具,这将它们转换成分钟。
或者,您可以使用以下方法直接跳到“ 使用情况统计信息”窗口亚行。输入此命令:
对于Android Lollipop:
adb shell am start -n com.android.settings/.UsageStatsActivity
对于Android 4.2.1至4.4.2:
adb shell am start -n com.android.settings/.UsageStats
如果您有兴趣了解这些命令中参数的作用,请参见此答案。
您也可以执行adb shell dumpsys usagestats
(Source,作者Jingjing Shi),对于Android 4.2.1和4.4.2,该功能没有提供比上面发布的屏幕快照所涵盖的功能更有用的功能。
与之前的版本相比,Lollipop显示出更多的最终用户可理解的输出,
内存每日统计 timeRange =“ 8/29/2015,8:34 AMâ8/30/2015,1:41 AM” 包装 package = com.android.documentsui totalTime =“ 00:07” lastTime =“ 8/30/2015,1:35 AM” package = com.android.browser totalTime =“ 00:02” lastTime =“ 8/30/2015,1:35 AM” package = com.android.camera2 totalTime =“ 00:05” lastTime =“ 8/30/2015,1:37 AM” ... ... 大事记 time =“ 8/30/2015,1:34 AM” type = MOVE_TO_BACKGROUND package = com.android.deskclock class = com.android.deskclock.DeskClock time =“ 8/30/2015,1:34 AM” type = MOVE_TO_FOREGROUND package = com.android.dialer class = com.android.incallui.InCallActivity time =“ 8/30/2015,1:34 AM” type = MOVE_TO_FOREGROUND package = com.android.dialer class = com.android.dialer.DialtactsActivity ... ... 内存每周统计 timeRange =“ 8/27/2015,5:30 AMâ8/30/2015,1:41 AM” 包装 package = com.android.documentsui totalTime =“ 00:07” lastTime =“ 8/30/2015,1:35 AM” package = com.android.browser totalTime =“ 00:02” lastTime =“ 8/30/2015,1:35 AM” package = com.android.camera2 totalTime =“ 00:05” lastTime =“ 8/30/2015,1:37 AM” ... ... 内存每月统计 timeRange =“ 8/9/2015,8:34 AMâ8/30/2015,1:41 AM” 包装 package = com.android.documentsui totalTime =“ 00:07” lastTime =“ 8/30/2015,1:35 AM” package = com.android.browser totalTime =“ 00:02” lastTime =“ 8/30/2015,1:35 AM” package = com.android.camera2 totalTime =“ 00:05” lastTime =“ 8/30/2015,1:37 AM” ... ... 内存年度统计 timeRange =“ 2014/12/21,上午5:30 – 2015年8月30日,上午1:41” 包装 package = com.android.documentsui totalTime =“ 00:07” lastTime =“ 8/30/2015,1:35 AM” package = com.android.browser totalTime =“ 00:02” lastTime =“ 8/30/2015,1:35 AM” package = com.android.camera2 totalTime =“ 00:05” lastTime =“ 8/30/2015,1:37 AM”
现在,您可以浏览列表以找到Camera and Gallery应用程序,并查看Lollipop的“最后使用时间”值。不幸的是,除非设备已扎根,否则本节中的信息对运行Lollipop的设备没有帮助,或者您找到了可以为您提供包装统计信息的应用程序。
同样,在您的特定情况下,仅当您的朋友使用手机完成操作后,还没有启动相机,图库或您感兴趣的特定应用程序时,所有这些信息才有帮助,因为该操作的时间戳记对于我提到的所有Android版本,app均已更新为新的“最近使用时间”。
如果设备已植根,则以下部分将起作用。
Android会记录上次使用应用程序(其组件)的时间。您可以直接/data/system/usagestats/
使用具有root访问权限的文件浏览器,或使用亚行。
将有一个名为的文件usage-history.xml
,还有一些其他的命名约定为usage-YYMMDD
:
例如,usage-20150729
是2015年7月29日创建的文件。
那.xml
是一个普通的XML文件,因此您应该能够在文本编辑器中查看它。这些usage-YYMMDD
是data
文件(charset=binary
),我的文本编辑器Kate无法以人类可读的形式打开它们。但是,cat <FILE>
命令可以完成这项工作,因此,作为Android应用程序QuickEdit,我应该补充一点。
该.xml
文件中条目的基本模板是:
<pkg name="">
<comp name="" />
<comp name="" />
...
<comp name="" />
</pkg>
例如,以下是AFWall +应用程序的以下条目:
<pkg name="dev.ukanth.ufirewall">
<comp name="dev.ukanth.ufirewall.MainActivity" lrt="1438134244890" />
<comp name="dev.ukanth.ufirewall.widget.ToggleWidgetOldActivity" lrt="1435337932669" />
<comp name="dev.ukanth.ufirewall.HelpActivity" lrt="1416601650972" />
...
</pkg>
的lrt
针对每个组件(comp
)是Unix时间。要使其可读,请使用Epoch Converter或任何可以将Unix时间转换为可读时间的工具。
例如,1438134244890
是我访问AFWall +的主要活动(它是默认视图)的Unix时间,转换后的时间是Wed, 29 Jul 2015 01:44:04 GMT
,这是正确的。
至于中的内容usage-YYMMDD
,您将看到当天访问的应用程序的活动。那里没有时间戳。
棒棒糖在应用程序使用情况统计信息收集方面有相当大的变化。在此处查看Google的官方说明。
的概念 usage-history.xml
,并usage-YYMMDD
在这里并不适用。相反,你命名的目录daily
,monthly
,weekly
,yearly
。所有这些文件都有您猜对的文件,带有数字名称,除了Unix Time一样1440374400000
。
下面的典型文件daily
具有以下内容:
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<usagestats version="1" endTime="66355190">
<packages>
<package lastTimeActive="66153798" package="com.android.providers.media" timeActive="2974" lastEvent="2" />
<package lastTimeActive="66329769" package="net.dinglisch.android.taskerm" timeActive="64172" lastEvent="2" />
<package lastTimeActive="66150806" package="android" timeActive="1942" lastEvent="2" />
...
...
<event-log>
<event time="43080692" package="android" type="5" fs="1065353216" mcc="404" mnc="97" />
<event time="43087204" package="com.android.launcher3" class="com.android.launcher3.Launcher" type="2" />
<event time="43087329" package="com.android.settings" class="com.android.settings.Settings" type="1" />
现在,这实际上与我们在usagestat
的输出中看到的是一样的东西,但是时间是原始形式。我不知道如何理解这里的时间,更不用说将其转换为人类可读的形式了。开发人员应该能够做到这一点。
如果您是什么以及如何进行转换(作为最终用户),请告诉我或在此处发布答案。
如果您的手机上次使用过,或者您想查找在互联网上运行/连接的应用程序(浏览器,部落冲突等),则上次使用的活动记录在您的Google帐户中的“我的活动”下。您可以通过访问https://myactivity.google.com并单击Android 找出答案。