iOS11之前用私有API 可以獲取設備已安裝的app
+ (void)installedApplications {
Class lsawsc = objc_getClass("LSApplicationWorkspace");
NSObject* workspace = [lsawsc performSelector:NSSelectorFromString(@"defaultWorkspace")];
NSArray *apps = [workspace performSelector:NSSelectorFromString(@"allInstalledApplications")];
Class LSApplicationProxy_class = objc_getClass("LSApplicationProxy");
for (int i = 0; i < apps.count; i++) {
NSObject *temp = apps[i];
if ([temp isKindOfClass:LSApplicationProxy_class]) {
NSString *appBundleId = [temp performSelector:NSSelectorFromString(@"applicationIdentifier")];
NSString *appName = [temp performSelector:NSSelectorFromString(@"localizedName")];
NSString * type = [temp performSelector:NSSelectorFromString(@"applicationType")];
NSString * shortVersionString = [temp performSelector:NSSelectorFromString(@"shortVersionString")];
NSString * containerURL = [[temp performSelector:NSSelectorFromString(@"containerURL")] path];
NSString * resourcesDirectoryURL = [[temp performSelector:NSSelectorFromString(@"resourcesDirectoryURL")] path];
NSString * bundleExecutable = [temp performSelector:NSSelectorFromString(@"bundleExecutable")];
NSLog(@"應用類型: %@", type);
NSLog(@"BundleId: %@", appBundleId);
NSLog(@"Name: %@", appName);
NSLog(@"Version: %@", shortVersionString);
NSLog(@"沙盒路徑: %@", containerURL);
NSLog(@"App包路徑: %@", resourcesDirectoryURL);
NSLog(@"TargetName: %@", bundleExecutable);
NSLog(@"=============================================");
}
}
}
iOS 11以后就不能直接獲取設備已安裝的APP了,所以可以采用其他辦法,思路如下:
1.先獲取常用的APP的bundleID
2.檢查bundleID在設備上是否存在.
第一:獲取常用的APP的bundleID的幾種方式
一 : 解壓IPA包
1.把.ipa文件的后綴重命名為.zip, 解壓.zip壓縮包炕吸,會有一個Payload 文件夾. 點開Payload文件夾會有一個.app的文件.
2.右鍵點擊.app文件 -> Show Package content. 將會打開新的文件夾包含很多文件.
3.用Xcode打開文件info.plist绞幌,就可以找到bundle id, 類似 com…game
二 : 用Mac自帶工具Console
1.用數(shù)據(jù)線連接手機和Mac.
2.打開Mac 應用Console.
3.在左側欄Devices中弥激,選擇你的設備
4.運行你要查看的APP.
5.在搜索欄里面輸入App的名字.
6.你可以看到在process列中找到SpringBoard秘案, Message列中找到 Bootstrapping
三 : 在APP下載鏈接里查看
1.打開Mac的瀏覽器,搜索app在App Store中iTunes的鏈接. 比如:
https://itunes.apple.com/us/app/microsoft-outlook/id951937596?mt=8.
2.拷貝數(shù)字在URL中id的后面, 比如951937596.
3.打開瀏覽器
https://itunes.apple.com/lookup?id=<Number copied in step 2>.
比如,
https://itunes.apple.com/lookup?id=951937596.
4.當提示下載text file文本文件, 保存文件. 默認名字是1.txt.
5.打開1.txt文件悬蔽,搜索bundleId. 比如:
“bundleId”:“com.microsoft.Office.Outlook”
txt文件
四 : idevice 命令查找
1.首先安裝brew
/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"
2.安裝ideviceinstaller
brew install ideviceinstaller
3.連接手機,執(zhí)行以下命令
idevice_id -l
ideviceinstaller -l
第二:檢查bundleID是否在設備存在
可以讓專門運營的同事查找bundleID,然后上傳后端,然后每次啟動循環(huán)查詢,存在就可以存下
- (BOOL)isInstalled:(NSString *)bundleId {
NSBundle *container = [NSBundle bundleWithPath:@"/System/Library/PrivateFrameworks/MobileContainerManager.framework"];
if ([container load]) {
Class appContainer = NSClassFromString(@"MCMAppContainer");
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wundeclared-selector"
id container = [appContainer performSelector:@selector(containerWithIdentifier:error:) withObject:bundleId withObject:nil];
#pragma clang diagnostic pop
NSLog(@"%@", [container performSelector:@selector(identifier)]);
if (container) {
return YES;
} else {
return NO;
}
}
return NO;
}
本人常用APP列表
com.tencent.mqq, "8.4.17.638", "QQ"
com.quliao.swiftDemo, "1", "swiftDemo"
com.jihc.UICollectionViewDemo, "1", "UICollectionViewDemo"
com.nsmetro.shengjingtong, "2020102901", "盛京通"
com.apple.AppStoreConnect, "994", "Connect"
com.wemomo.momoappdemo1, "8.30.2.12", "MOMO陌陌"
com.tencent.smoba, "0013", "王者榮耀"
cn.10086.app, "26", "中國移動"
com.burbn.instagram, "260712851", "Instagram"
com.maxin.MeiTuanWaiMai, "1", "MeiTuanWaiMai"
com.changba.ktv, "10.4.0", "唱吧"
com.qiyi.iphone, "20201126192700", "愛奇藝"
com.mytest.launchtest, "1", "ZYGLaunchIntroductionDemo"
ck.com.CKMeiTuanShopViewyp, "1", "CKMeiTuanShopView"
com.itcast.boxuegu, "4.14.5.0", "博學谷"
com.yaymedialabs.putong, "4.4.0.0", "探探"
com.innovation.driftbottle, "0", "遇見漂流瓶"
com.gx.DragPhotoDemo, "1", "DragPhotoDemo"
com.slp.quarrelno1, "4", "麻豆視頻"
com.ss.iphone.ugc.Aweme, "138014", "抖音"
com.tencent.QQKSong, "666", "全民K歌"
CYL.CYLTabBarController, "1", "CYLTabBarController"
D-Code.CustomTabbarViewController, "1", "CustomTabbarViewController"
com.ucweb.iphone.lowversion, "13.1.8.1408", "UC瀏覽器"
com.quliao.Tease, "1", "會撩"
com.apple.TestFlight, "25", "TestFlight"
com.dapengCompany.DPEduProject, "3.0", "大鵬教育"
cn.gov.tax.its, "20201122212754", "個人所得稅"
com.liguangming.Shadowrocket, "939", "Shadowrocket"
com.alipay.iphoneclient, "10.2.8.6010", "支付寶"
com.chinaunicom.mobilebusiness, "207", "手機營業(yè)廳"
com.liutao.rider, "20201110", "柳淘騎手端"
com.twototwo.massage, "81", "按個摩"
ck.com.CKMeiTuanShopView, "1", "CKMeiTuanShopView"
com.tencent.xin, "7.0.18.32", "微信"
cn.xiaochuankeji.tieba, "20201130.171000", "最右"
com.tencent.QQMusic, "20020", "QQ音樂"
tanzhenios2019.TZImagePickerController.www, "1", "TZImagePickerController"
com.liutao.business, "1", "柳淘商家端"
com.youku.YouKu, "2014146520", "優(yōu)酷"
rn.notes.best, "11122019", "愛思極速版"
com.netease.cloudmusic, "1826", "網(wǎng)易云音樂"
com.liutao.user, "1", "柳淘"
com.soulapp.cn, "26888", "SOUL"
cn.ishengsheng.xingjiabi, "2020.1207.23", "他趣"
com.huobanlvxing.www, "95", "伙伴旅行助手"
com.quliao.getBundleId, "1", "getBundleId"
com.weiyingvideo.videoline, "1.2", "抖麗實拍"
com.meitu.myxj, "22950", "美顏相機"
com.baidu.netdisk, "11.3.1.2", "百度網(wǎng)盤"
com.tencent.smobagamehelper, "46140220120301", "王者營地"
WZF.ZFShoppingCart, "1", "ZFShoppingCart"
Jimmywu.JimmyLayout, "1", "JimmyLayout"
developer.apple.wwdc-Release, "831.2.7", "Developer"
limap.StretchTableView, "1", "StretchTableView"
com.baidu.map, "15.2.5.1", "百度地圖"
com.tencent.live4iphone, "25342", "騰訊視頻"
appledeiMac:~ apple$ idevice_id -l
00008020-00150C8911B8003A
appledeiMac:~ apple$ ideviceinstaller -l
CFBundleIdentifier, CFBundleVersion, CFBundleDisplayName
com.bwton.TJMetro, "1.1", "天津地鐵"
com.meitu.mtxx, "28450", "美圖秀秀"
com.aliyun.wstudio.amc.AliyunMobileApp, "11161142", "阿里云"
com.tencent.ioshlddz, "7.072.001", "歡樂斗地主"
com.ss.iphone.article.Video, "5.2.6.13", "西瓜視頻"
com.cib.cibmb, "3", "興業(yè)銀行"
com.bocforms.MobileLife, "5", "繽紛生活"
com.cmbchina.MPBBank, "9003", "招商銀行"
com.sym.vjietu2, "380", "微截圖2"
com.tongcheng.iphone, "10.0.8.5", "同程旅行"
com.unionpay.chsp, "933", "云閃付"
com.szzc.szzc, "18", "神州租車"
com.jd.jinrong, "618", "京東金融"
com.xiaomi.mihome, "5.5.2.102", "米家"
com.sina.weibo, "49890", "微博"
com.ruubypay.yitongxing, "4.5.0.51", "億通行"
cn.10086.app, "26", "中國移動"
com.hpbr.bosszhipin, "1606877547", "BOSS直聘"
com.wuba.zhuanzhuan, "100", "轉轉"
com.cebbank.xyk, "5.1.2.1", "陽光惠生活"
com.iBoxPay.CashBox, "5.0.6.202010211630", "錢盒商戶通"
com.caocao.customer, "402", "曹操出行"
com.ccb.ccbDemo, "20201201", "中國建設銀行"
com.qiyi.iphone, "20201126192700", "愛奇藝"
com.cjboomMinesweeper.www, "87", "MinesweeperX"
com.apple.TestFlight, "25", "TestFlight"
com.netease.mailmaster, "1689", "網(wǎng)易郵箱大師"
com.nsmetro.shengjingtong, "2020102901", "盛京通"
tv.douyu.live, "635", "斗魚"
com.meituan.imeituan, "74739", "美團"
com.360buy.jdmobile, "9.3.0", "京東"
com.dapengCompany.DPEduProject, "3.0", "大鵬教育"
com.yueyou.cyreader, "4020008", "七貓小說"
cn.gov.tax.its, "20201122212754", "個人所得稅"
com.chinaunicom.mobilebusiness, "12.0", "手機營業(yè)廳"
com.xunmeng.pinduoduo, "2011300014", "拼多多"
com.baidu.map, "15.2.5.1", "百度地圖"
com.icbc.elife, "1.1.0", "工銀e生活"
com.lemon.lv, "4.5.1.01", "剪映"
com.csair.MBP, "202011130011", "南方航空"
com.taobao.taobao4iphone, "20018153", "手機淘寶"
com.huikaiyundian.www, "2", "匯開優(yōu)店"
com.tencent.ww, "55131", "企業(yè)微信"
com.huolala.user, "3", "貨拉拉"
com.rgbim.friendsim, "2019091106", "友群"
com.boc.BOCMBCI, "3.0.6", "中國銀行"
com.neusoft.gov.syzhyb, "1", "沈陽智慧醫(yī)保"
com.bytedance.ee.lark, "437", "飛書"
com.apple.AppStoreConnect, "994", "Connect"
com.wondertek.hecmccmobile, "5.8.7.8", "咪咕視頻"
com.xiachufang.lanfan, "119", "懶飯"
net.csdn.EducationVideo, "2020.12011723", "程序員學院"
com.tencent.qqmail, "6.1.1.20", "QQ郵箱"
com.quark.browser, "4.5.3.1108", "夸克"
com.zhihu.ios, "2918", "知乎"
com.youku.YouKu, "2014146520", "優(yōu)酷"
com.ifmoc.DouKouYueDu, "1.16.1.0", "飯團追書"
com.meituan.banma.crowdsource, "712", "美團眾包"
com.blueberry.Gmu, "2", "積目"
com.burbn.instagram, "257196069", "Instagram"
com.kugou.kugou1002, "10.3.6.12", "酷狗音樂"
com.jianshu.Hugo, "2011141224", "簡書"
com.tencent.microvision, "773", "微視"
rn.notes.best, "11122019", "愛思極速版"
com.hrtpayment.JiSuAppstore, "7", "會員寶秒到版"
com.taobao.travel, "9.6.5.105", "飛豬旅行"
com.tencent.smobagamehelper, "46140220120301", "王者營地"
com.tencent.live4iphone, "25342", "騰訊視頻"
com.taofang.iphone, "42742228", "58同城"
com.taobao.fleamarket, "1125994", "閑魚"
com.netease.cloudmusic, "1898", "網(wǎng)易云音樂"
com.tencent.QQKSong, "666", "全民K歌"
com.tencent.mqq, "8.4.17.638", "QQ"
com.apple.clips, "4990", "可立拍"
com.gdb.mobilegdb, "6.0.0.6", "廣發(fā)銀行"
cn.com.zhaopin.zhilianzhaopin, "7.9.70.5", "智聯(lián)招聘"
com.BetterJ.www, "436", "螞蟻加速器"
com.ucweb.iphone.lowversion, "13.1.8.1408", "UC瀏覽器"
com.rrds.rrdianshi, "41712", "人人視頻"
com.BankOfShangHai.1.0, "6.2.1", "上海銀行"
com.light.beauty, "3.1.8.16", "輕顏相機"
CtClient, "1", "電信營業(yè)廳"
me.ele.ios.eleme, "14127542", "餓了么"
com.liulishuo.engzo2, "12811", "流利說·英語"
com.meanssoft.sygjj, "1", "沈陽公積金"
com.cmbchina.cmblife, "11507", "掌上生活"
cn.missfresh.application, "9.8.98.4", "每日優(yōu)鮮"
cn.w3cschool.ios, "0.4.1", "編程獅"
com.tmri.12123, "365", "交管12123"
com.cebbank.ebank, "7.1.41", "光大銀行"
com.ss.iphone.ugc.Aweme, "138014", "抖音"
com.liutao.user, "1", "柳淘"
com.tplink.cloudrouter, "40314", "TP-LINK"
com.youdianguanjia.www, "1", "匯開優(yōu)店管家"
com.apple.iMovie, "4990", "iMovie 剪輯"
com.liutao.business, "1", "柳淘商家端"
com.yytingting.iting, "1012", "懶人聽書"
com.gemd.iting, "930", "喜馬拉雅"
com.Foxtravel.assistant, "7", "Fox Travel Assistant"
com.Mango.MangoOnline, "5.12.3.0", "芒果在線"
com.QianHaiLDY.zuche, "1", "聯(lián)動云租車"
com.alipay.iphoneclient, "10.2.8.6010", "支付寶"
com.innovation.driftbottle, "0", "遇見漂流瓶"
com.seblong.app.IDream, "20.11.26", "蝸牛睡眠"
cn.com.bmac.iosapp, "4.0.0.1", "北京一卡通"
com.WisdomTheTram.MuSen, "02", "智慧電車"
cn.12306.rails12306, "1", "鐵路12306"
com.tencent.smoba, "0013", "王者榮耀"
youdao.trans, "1", "有道翻譯官"
com.xiaomi.youpin, "4.6.1.2", "小米有品"
com.douban.frodo, "06480001", "豆瓣"
com.cmbc.mobilePhone, "12", "民生信用卡"
com.black.unique, "2020112401", "全球購騎士特權"
com.alibaba.wireless, "14158577", "阿里巴巴"
developer.apple.wwdc-Release, "831.2.7", "Developer"
com.baidu.netdisk, "11.3.1.2", "百度網(wǎng)盤"
com.kingsoft.www.office.wpsoffice, "11.2.089747", "WPS Office"
com.liutao.rider, "20201110", "柳淘騎手端"
com.ccbfintech.gasp.liaoningprovince, "1", "遼事通"
com.xiaojukeji.didi, "6.0.20.912030001", "滴滴出行"
com.tencent.xin, "7.0.18.32", "微信"
cn.ishengsheng.plus, "2020.1202.14", "他趣Plus"
com.citicbank.creditspace, "7.1.0.2", "動卡空間"
com.cutt.app586432, "28958", "通遼團"
me.ele.ios.LPDCrowdsourceAppStore, "7401", "蜂鳥眾包"
com.tencent.cmocmna, "97", "騰訊手游加速器"
com.taobao.tmall, "14127776", "手機天貓"
daojiasuyun58, "5.10.0.0", "快狗打"
com.apple.store.Jolly, "5.9.0.570", "Apple Store"
com.tencent.mqqsecure, "2900", "騰訊手機管家"
com.yinxiang.iPhone, "373820", "印象筆記"
com.cgb.creditcard.iphone, "11171401", "發(fā)現(xiàn)精彩"
com.xiachufang.recipe, "330", "下廚房"
io.fmc.fenmiaoCompany, "1", "Openinstall"
com.soulapp.cn, "26888", "SOUL"
com.cib.xyk, "3", "好興動"
com.gotokeep.keep, "26332", "Keep"