2011-08-19 68 views
6

如您所知,拨打* # * # 4 6 3 6 # * # *时出现测试菜单。阅读应用程序使用信息

在此菜单上,选择>应用程序统计信息以读取应用程序使用时间和午餐计数。

我想构建一个使用此信息的智能启动器。

任何人都可以指向一个实现阅读这些信息的源代码吗?

+0

+1为隐藏测试菜单:) – OcuS

+0

@OcuS:它不是测试菜单,“4636”读取手机键盘上的“INFO”。 – lenik

+0

在Samsung Galaxy S7上不适用于我。适用于Nexus 5X。当N5X在7.1.2上时,S7是否在7.0上,这是否是最近的一项功能? – Eselfar

回答

0

这个菜单源可以设置应用程序内的https://android.googlesource.com/platform/packages/apps/Settings

发现如果你在logcat中看看,你会看到THT进入该USSD代码产生一个意向点火:

启动活动:意向{行动= android.intent.action.MAIN FLG = 0x10000000的CMP = com.android.settings/.TestingSettings}

这基本上只是一个普通的活动推出,仅针对非发射活动。您可以从程序中激发该意图,或者让程序拨打ussd代码。

试图抓取程序中使用的数据将是困难的。设置应用程序在“系统”uid下运行,并且能够声明第三方应用程序无法提供的许多权限。那些涉及更改设置的人几乎完全受到限制,即使是相当数量的读取权限也是如此。

通过设置应用程序的源代码,您将能够看到它是如何做的;查看AndroidManifest.xml将显示它使用的是什么权限 - 不幸的是,您可能想要做的大部分操作都可能需要列表中的某些内容,而这些内容是您的应用程序无法获取的。

+0

谢谢!所以我基本上需要做的是构建一个服务,记录应用程序的午餐以便自己收集这些信息?任何人都可以推荐和实现这个的源代码示例? – Karako2017

+0

@VadimKotov如果你要坚持编辑旧的,过时的答案,尽管我明确要求你不这样做,请*至少*保持原始格式。我非常特别地在主体中显示链接目标,以便人们知道他们要去哪里 - 在很多方面,了解代码在android源代码层次结构中的位置是链接中最有用的部分,而不管它们是工作还是死。再次,我宁愿你没有在主页上通过修改它们而不必要的改变它们,但是至少保持源层次结构可见的原意。 –

+0

@ChrisStratton ok,会做到这一点 –