IOS私有API检测

一、开源工具检测

前言

私有API检查的原因在于:苹果在app提审的时候,会检查app使用私有api的情况,对于使用了私有api的app,不予通过,这个工具的目地就是在提审之前检查一下,提高通过率。

准备

下载iOS-private-api-checker-master https://github.com/hustcc/iOS-private-api-checker

下载ios_private.db https://download.csdn.net/download/joonsheng/10513582   |   build导出(https://github.com/NetEaseGame/iOS-private-api-checker/blob/master/README.md)

开始

1、将ios_private.db拷贝到iOS-private-api-checker-master目录下

2、在iOS-private-api-checker-master目录下创建一个tmp目录,并且修改tmp的权限(终端命令:sudo chmod -R 777 tmp)

3、在终端输入sqlite3 , 监测是否已经安装了sqlite,没有则参考 http://www.runoob.com/sqlite/sqlite-installation.html 进行安装

4、配置flask环境

  • 安装python的包管理器pip,下载 get-pip.py https://bootstrap.pypa.io/get-pip.py,执行sudo python get-pip.py进行安装
  • 安装virtualenv,终端执行sudo pip install virtualenv
  • 在iOS-private-api-checker-master目录下,执行virtualenv flask,执行cd flask,再执行source bin/activate,再执行pip install flask,安装flask
  • 回到iOS-private-api-checker-master ,安装macholib(执行pip install macholib)

运行

1、激活flask环境,执行cd iOS-private-api-checker-master/flask,然后再执行source bin/activate

2、修改iOS_private.py中ipa_folder路径,运行python iOS_private.py等待即可看到检查结果

3、运行python run_web.py,然后浏览器输入http://0.0.0.0:9527,将ipa拖入上传框等待即可看到检查结果

二、根据私有API定位

1、解压ipa,cd到ipa解压后的根目录(/Users/zhengmiaokai/Desktop/LeCard/Payload/LeCard.app)

2、输入命令grep -r xxx .(grep -r advertisingIdentifier .)

3、找出所有使用advertisingIdentifier方法的类库列表

你可能感兴趣的:(Objective-C,私有API,私有API定位)