简体   繁体   English

Quettra Portrait如何获取未越狱的iOS设备上已安装的应用程序的列表?

[英]How does Quettra Portrait get the list of installed apps on non-jailbroken iOS devices?

According to the Quettra Portrait for iOS Privacy Policy they manage to get a list of installed apps on iOS. 根据《 Quettra Portrait for iOS隐私权政策》,他们设法获取iOS上已安装应用程序的列表。 What's more, they're able to do this from an App Store approved app on non-jailbroken devices. 更重要的是,他们可以在非越狱设备上通过App Store认可的应用程序执行此操作。 Every Google/StackOverflow search I've done on the matter suggests that this is impossible, but Quettra is somehow able to do it without raising the ire of Apple. 我对此事所做的每一次Google / StackOverflow搜索都表明这是不可能的,但是Quettra能够以某种方式做到这一点而不会引起苹果的愤怒。 Any ideas? 有任何想法吗?

Most of the apps register a unique URL for deep linking purpose. 大多数应用程序都会注册一个唯一的URL,以进行深层链接。

iOS has method canOpenURL: which tells you if a particular app is present or not on a user's device. iOS具有方法canOpenURL:可以告诉您用户设备上是否存在特定应用。

For example 例如

facebook has fb:// 脸书有fb://

Netflix has nflx:// Netflix有nflx://

Tripadvisor has tripadvisor:// Tripadvisor有tripadvisor://

Quettra has the list of these urls and makes several call to identify if a particular app is installed or not. Quettra拥有这些URL的列表,并进行多次调用以识别是否安装了特定的应用程序。 By doing so, Quettra was able to establish interests of a user. 这样,Quettra能够建立用户的兴趣。

Earlier an app could make as many calls to canOpenURL: with different url parameters. 较早的应用程序可以使用不同的url参数对canOpenURL:进行尽可能多的调用。 Because companies were abusing this feature against user privacy interest, Apple has restricted 100 unique urls for canOpenURL: 由于公司滥用此功能是canOpenURL:对用户隐私的兴趣,因此Apple限制了canOpenURL: 100个唯一URL canOpenURL:

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM