私有API检查工具详解

今天,一朋友发布的版本被拒了,收到的苹果 邮件如下:

被拒原因

查看邮件内容,因为用到了私有API被拒,到底哪里用到了私有API呢,百度一下,发现有个很好用的私有API检查工具。本文将带你搭建一个web站点,直接将IPA文件拖放网页,就可以将项目中使用的API一目了然地显示出来。

准备工具

1.下载ios-private-api-checker-masterhttps://github.com/hustcc/iOS-private-api-checker

2.下载已经build好的ios_private.db库,将 ios_private.db 放入到iOS-private-api-checker的根目录,(备注:ios_private.db 下载地址: https://pan.baidu.com/s/1kBKa6QNSXfQazAYepXRJYQ)。

完成后,打开 终端:

3.cd 到ios-private-api-checker-master目录下,创建一个tmp目录(终端命令:mkdir tmp),并且修改tmp的权限(终端命令:sudo chmod -R 777 tmp)

4. 在终端输入sqlite3 , 出现这个表示已经安装了sqlite,没有则参考 http://www.runoob.com/sqlite/sqlite-installation.html 进行安装,如果安装正确的话,会出现以下:

终端步奏图

5.配置flask环境,mac下默认已经安装了python,不信你可以在终端输入python --version,就可以查看到相应的版本。

重新打开终端

6.接着安装python的包管理器pip ,先下载 get-pip.py : https://bootstrap.pypa.io/get-pip.py(终端执行:curl -o get-pip.py   https://bootstrap.pypa.io/get-pip.py),下载完成后,执行sudo python get-pip.py进行安装。

7.安装virtualenv,virtualenv 为每个不同项目提供一份 Python 安装。终端执行:sudo pip install virtualenv.

8. 开始配置flask环境,cd 到ios-private-api-checker-master目录下,执行virtualenv flask,创建了一个flask文件夹,接着执行:cd flask,然后再执行:source bin/activate,激活环境.接着再执行:pip install flask,安装flask。

 9.回到根目录。执行:cd -,安装 macholib(执行:pip install macholib)。

执行 pip install macholib 出现问题,从下图两行爆红字可以看出,安装macholib的前提是需要提前安装好:nose 和 tornado

问题截图

nose 的安装-------->终端输入 easy_install nose

tornado的安装-------->命令行安装

1.安装 brew ------>终端输入:ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"  。

2.安装 wget------->终端输入:brew install wget

3.下载 pip 脚本----->终端输入:wget https://bootstrap.pypa.io/get-pip.py。

4.安装 pip-------->终端输入:sudo python get-pip.py

5.安装Tornado----->终端输入:sudo pip install tornado 。

以上完成后,要重新从上面的第8条开始继续操作,为了要激活环境,

9.以上完成后,就可以开始执行了run_web.py了,终端输入:python run_web.py,服务启动后,会告诉你在那个端口开启,打开浏览器,直接输入即可,接下在网页中,直接将你的IPA包拖进去就可以了,一会就可以看到分析信息了。

终端显示

在浏览器中打开上图红框内的地址,把打好的ipa包拉进去,过几秒就会看到如图:

结果

没有用私有

从以上可以看出,并没有用到私有API,可以回复邮件给苹果,再从新打包上线。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏张善友的专栏

Mix 10 上的asp.net mvc 2的相关Session

Beyond File | New Company: From Cheesy Sample to Social Platform Scott Hansel...

2547
来自专栏魂祭心

原 canvas绘制clock

4054
来自专栏我和未来有约会

Silverlight第三方控件专题

这里我收集整理了目前网上silverlight第三方控件的专题,若果有所遗漏请告知我一下。 名称 简介 截图 telerik 商 RadC...

4005
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

2050
来自专栏大内老A

The .NET of Tomorrow

Ed Charbeneau(http://developer.telerik.com/featured/the-net-of-tomorrow/) Exciti...

31410
来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

5416
来自专栏张善友的专栏

LINQ via C# 系列文章

LINQ via C# Recently I am giving a series of talk on LINQ. the name “LINQ via C...

2635
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2142
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4858

扫码关注云+社区