我有一个疑惑,比如京东、QQ 音乐这样的 APP 时不时会弹出一个菜单,请求用户参与 TestFlight 内测,我的确安装了 TestFlight,我想它是不是检测到我安装了 TestFlight 才弹出的这个窗口,不然骚扰到一般用户效率不是很低么?
iOS 14 以上版本的系统是否存在获取用户安装 APP 列表的方法?还是说仅有 TestFlight 这样的官方 APP 开放了这种权限?
1
Leonard 2021-09-16 13:26:48 +08:00
首先,确实可以检测你是否安装了 testflight ;
其次,没安装也可能弹的 |
2
devcat9 2021-09-16 13:27:35 +08:00 1
必须在 Info.plist 里声明你要尝试的 app 的 URL Scheme,苹果会审核。正常用途可以接受。比如 TF
|
4
ShuangFan 2021-09-16 13:34:48 +08:00
直接检测手机安装了哪些软件是私有 api,上商店的 app 是不敢用的
但是每个 app 一般都有自己设定的 URL Scheme,只要知道 URL Scheme,是允许检测对应 app 是否安装的,so,跟版本没啥关系 |
7
Leonard 2021-09-16 13:41:06 +08:00
你可以检测用户是否安装了某个 App,只要你知道此 App 的 URLScheme 就行,比如你在 Safari 输入 taobao:// 就可以打开淘宝 App 。
同样在 App 内也可以通过[[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"taobao://"]]来检测用户是否安装了淘宝。 |
9
ShuangFan 2021-09-16 13:43:38 +08:00
@Phishion 楼上老哥也说了要提前加到 Info.plist 中,当然你要把常见的 app 都加进去,那确实是都可以拿到
|
13
littiefish 2021-09-16 15:19:56 +08:00 via iPhone
沙盒,别想了
|
14
Building 2021-09-16 16:56:08 +08:00 via iPhone
有一种东西叫做广告联盟,就是你给 A 开放了权限,A 又恰好用了联盟,那么 A 接入的 SDK 就把信息都收集了,整个联盟里的 app 都可以追踪到你的信息。
|