在没有越狱的情况下,在iOS9上检测哪个应用处于前台
我试图在iOS9上logging用户个人应用的使用情况。
我宁愿它不会使用越狱有限的解决scheme ,自我解释。 在越狱手机上做这个应用程序的变化应该不难 。
这肯定不会在App Store上发布,因为苹果不会允许它。
我正在寻找任何可以做到这一点的私人API ,任何隐藏的iOS API可以用来做到这一点。 任何东西。
我已经看过:
- 如何根据应用程序ID确定哪些应用程序是背景以及哪些应用程序是iOS上的前景
- 如何知道应用程序启动和细节越狱iOS 7
- 有没有一个私人的API能够检测到什么是iOS上的当前前景应用程序?
- 如何在iOS8中监视在前台运行的应用程序?使用PrivateFrameworks SpringBoardServices
这被certificate是相对有用的 – 我们现在可以假设有一些额外的访问要求,可能是一个权利,但我们并不真正知道它应该是什么样子
- 你可以使用SpringBoard服务框架或其他私人框架find单独的应用程序使用时间?
- 找出活跃的应用程序或如果在Springboard上
- 以编程方式检测哪个iOS应用程序对用户可见
然而,所有这些都certificate是无益的,因为苹果公司解决了这个 iOS8的安全漏洞,复制/访问当前最前面的应用程序包标识符的方法不再有效。
问题是 :是否有人知道使用不需要越狱的不同工具/漏洞的解决方法?
想法 :
-
检查设备上运行的进程,并devise一种algorithm,能够识别尖峰意味着一个应用程序已经启动,这可能会工作,但它可能会是一个重大的痛苦的屁股。 提到这个解决scheme的问题:
- 使用sysctl检测iOS上当前正在运行的应用程序 ,
- 返回iOS中正在运行的后台应用程序/进程列表
- 如何获取后台运行应用程序的名称
- 在iphone中查找后台运行应用程序
- 检查电话交通不知何故?
- 不知道是否有一些我可以做的内核
这是我的这个问题的Reddit版本,如果有人想检查出来。 另外如果它有任何价值的话,下面是iOS9的运行时头文件和Apple私有API的列表 。
不幸的是,我正在寻找一个类似的解决scheme,并得出结论,至less在这个时候,没有已知的方法可以让你确定在iOS上的应用程序的使用。 即使是Good,Airwatch,MobileIron等MDM供应商似乎也无法做到这一点。 如果有人能够提出解决scheme,我很乐意看到它。
但是现在,我认为如果有人从事最新的iOS工作,我们会看到一个解决scheme。
sysctl仍然是打开的,但是它们阻止了某些select器的组合。 我在iOS 7上做了这个,并给了Apple Product Security代码。 他们不会修补iOS 7,而是依靠App Review。 iPhone 4是开放的。