我想在Android系统中收集App激活序列。
E.g。
如果用户首先打开Youtube应用程序,然后切换到Gmail应用程序,然后切换回Youtube应用程序,依此类推,那么序列如下:
Youtube Gmail Youtube ...
Google Play或其他地方是否有可用的应用程序来实现此目的?
实施起来很简单吗?是否有可能通过纯App解决方案实现目标?
是否要求设备生根?
答案 0 :(得分:0)
您需要定期轮询此功能。 您可以进一步编写逻辑以删除随后的重复应用程序标签。
private string getActiveApplicationLabel(){
String appLabel = null;
ActivityManager am = (ActivityManager)this.getSystemService(ACTIVITY_SERVICE);
List l = am.getRunningAppProcesses();
Iterator i = l.iterator();
PackageManager pm = this.getPackageManager();
while(i.hasNext()) {
ActivityManager.RunningAppProcessInfo info = (ActivityManager.RunningAppProcessInfo)(i.next());
try {
CharSequence c = pm.getApplicationLabel(pm.getApplicationInfo(info.processName,
PackageManager.GET_META_DATA));
appLabel = c.toString();
}catch(Exception e) {
//Name Not FOund Exception
}
}
return appLabel;
}