iOS判断手机是否安装其他App |
您所在的位置:网站首页 › 125044 › iOS判断手机是否安装其他App |
前提: 被检测的app在开发时设置了URLScheme 检测的app项目开发时在Plist白名单中添加被检测app的URLSceme 步骤: 获取目标app的ipa包 从中找到app对应的URLScheme 将对应的URLScheme添加到app项目中的info.plist白名单 调用方法判断是否安装或打开某个app 解决 一、获取目标app的ipa包方法: 1、MacBook Appstore应用商店下载Apple Configurator 2并安装。 [email protected]2、账户登录appleid账号。 3、连接iPhone设备。 [email protected] 4、添加,选择应用,在里面选择要获取ipa包的APP,下载(首先iPhone上要先已安装这个app,不然第一次是通过这个安装,第二次才可以看到ipa包) [email protected] 5、直到看到如下图: [email protected]6、这个时候,什么都不要操作,在finder中shift+command+G,打开以下路径,就可以获取到目标APP的ipa包,拷贝出来即可,停止Apple Configurator 2。 ~/Library/Group Containers/K36BKF7T3D.group.com.apple.configurator/Library/Caches/Assets/TemporaryItems/MobileApps/ [email protected] 参考文章:iOS获取App ipa包 二、找到对应的URLScheme1、将ipa包后缀改为.zip,解压,找到包文件,如下如,显示包内容。 [email protected]2、找到包内容里的info.plist文件 [email protected] 3、里面找到app设置的URL-scheme [email protected] 三、目标app的URLScheme添加到app中iOS9之后,需要将URLScheme添加到项目plist白名单中才可以。 [email protected] LSApplicationQueriesSchemes wechat weixin sinaweibo taobao xiangyuapp 四、检查是否安装或直接打开 @IBAction func testInstalledAction(_ sender: Any) { var app_url_scheme = "weixin" // 微信 app_url_scheme = "taobao" // 淘宝 app_url_scheme = "sinaweibo" // 微博 app_url_scheme = "xiangyuapp" // 相寓 if let url = URL.init(string: "\(app_url_scheme)://") { let isInstalled = UIApplication.shared.canOpenURL(url) if isInstalled { statusLabel.text = "已经安装\(app_url_scheme)" } else { statusLabel.text = "没有安装\(app_url_scheme)" } UIApplication.shared.open(url, options: [:]) { (finished) in print("打开...") } } }判断是否安装其他app: UIApplication.shared.canOpenURL(url)打开对应URLScheme的APP: UIApplication.shared.open(url, options: [:]) { (finished) in print("打开...") } 其他补充: 从企业证书安装的app,如何获取ipa? 方法如下: 1、百度搜索charles mac,下载安装mac版。 2、手机代理连接电脑,参考方法:https://jingyan.baidu.com/article/3d69c55132cba7f0cf02d722.html 3、访问下载ipa的下载按钮,点击下载,找到其中的有关ipa的,点击,下面会出现实际下载网址,复制网址,浏览器下载即可。 [email protected] |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |