美文网首页
iOS – 为Facebook提交审阅zip创建模拟器构建

iOS – 为Facebook提交审阅zip创建模拟器构建

作者: 我是七月 | 来源:发表于2021-01-07 09:25 被阅读0次

    近期做了一个国外的App项目,项目中有Facebook第三方登录和分享,刚开始做的时候,还可以使用,突然有一个不能使用了,登录进Facebook开发者中心,Facebook发了一封邮件,大致意思是我们要不定期的审阅你的App,所以您必须提交你们的App到我们的平台,以供我们进行审阅。
    啊。。。。。。。

    万分无奈,只能给人家提交我们的安装包.

    安卓的还好,直接把apk文件传上去,但是ios就不一样了。

    刚开始不知道传什么,直接把ipa文件传过去,几分钟之后,直接被Facebook打回来了,说我们的文件不能安装,最后终于找到上传给他们的文件有关文档,看了之后以及在网上查阅之后,才发现我之前直接传ipa包给他们是太无知了。。。

    具体是上传什么呢?

    是一个模拟器构建文件,是在Xcode里面Build之后,会生成一个模拟器的安装包,有了这个安装包才可以在模拟器上进行安装运行,所以把这个模拟器安装包传给Facebook,他们在电脑上的模拟器进行安装,就可以测试了。✌️

    下面是具体的步骤,有两种方式:
    在找安装包之前,需要现在本地跑一下项目,生产模拟器安装包
    第一种:
    直接在本地目录中找到这个文件进行压缩,发给Facebook
    安装包路径在~/Library/Developer/Xcode/DerivedData/{your app}/Build/Products/Debug/{Project Name}.app
    文件是一个(图标如圆形和1个十字线)的
    可以直接拷贝出来,然后进行压缩,发给Facebook就行
    具体细节步骤如下:

    ①:打开取景器并按下命令⌘shift⇧g
    ②:粘贴“〜/ Library / Developer / Xcode / DerivedData”
    ③:选择your_app_name-jkfksdfhskdhfksdh这样的文件夹
    ④:your_app_name-jkfksdfhskdhfksdh>> Build>>产品>> Debug-iphoneos
    ⑤:您将看到2个文件,一个是your_app_name.app(图标如圆形和1个十字线),第二个文件是your_app_name.app.dSYM
    ⑥:要创建.zip文件,请右键单击your_app_name.app并选择“Compress your_app_name”.它将生成.zip文件并将其提交给Facebook.

    第二种:
    是使用命令行找到这个文件并进行压缩
    ditto -ck --sequesterRsrc --keepParent `ls -1 -d -t ~/Library/Developer/Xcode/DerivedData/*/Build/Products/*-iphonesimulator/*.app | head -n 1` /Users/zsp/Desktop/app.zip

    有几点需要说明的:
    上面命令最后一个路径(/Users/zsp/Desktop/app.zip),这个是自定义的,我这里举的例子是直接放在桌面。除了这里改一下路径,前面的都不需要改,包括 * 也都不用改。

    再来说一下命令里面的 * 的问题。当我们打开自己本地的~/Library/Developer/Xcode/DerivedData/ ,这个路径下,会发现里面装的都是在我们本地模拟器上运行过的app程序。前面是app的Bundle Identifier,横线后面是一堆字符串。上面的ditto里面带 * 的那个路径是为了动态匹配一个地址的,* 在这里也是一个通配符。后面的head说明了匹配的规则。head其实是找出最近一次我们运行模拟器的app的路径。

    Mac的拷贝命令有cp和ditto,建议用ditto进行拷贝工作。
    ditto它在复制过程中不仅能保留源文件或者文件夹的属性与权限,还能保留源文件的资源分支结构和文件夹的源结构。
    此命令能确保文件或者文件夹被如实复制。
    如果目标文件或者文件夹不存在,ditto将直接复制过去或创建新的文件和文件夹,相反,对于已经存在的文件,命令将与目标文件(夹)合并。
    ditto还能提供完整符号链接。

    我们运行完上面的ditto命令会产生一个zip文件,把这个文件发给Facebook就行

    至此就结束了

    但是我还是想知道Facebook审核人员具体是怎么安装我们的文件,并进行测试的
    于是乎就找到了答案。
    ios-sim命令行工具。

    ios-sim 是一个可以在命令控制iOS模拟器的工具。利用这个命令,我们可以启动一个模拟器,安装app,启动app,查询iOS SDK。它可以使我们像自动化测试一样不用打开Xcode。

    首先需要安装ios-sim
    npm install ios-sim -g

    查看并启动模拟器
    查看已安装的模拟器类型:
    ios-sim showdevicetypes
    这就可以看到所以已经安装的模拟器版本

    最后的安装app用法很简单:
    ios-sim launch /Users/YDZ/Desktop/app.app --devicetypeid iPhone-6s

    其中,/Users/zsp/Desktop/app.app这个是我们发的他们的文件解压之后的在他们电脑的本地路径。--devicetypeid参数后面是给定一个模拟器的版本。

    使用上面的命令,装好app的模拟器就会自动启动,打开app了。

    或者还有更简单的方式,打开模拟器,直接拖拽这个文件到模拟器就好了。

    Facebook创建模拟器构建官方文档:https://developers.facebook.com/docs/ios/getting-started/advanced#sim_build

    相关文章

      网友评论

          本文标题:iOS – 为Facebook提交审阅zip创建模拟器构建

          本文链接:https://www.haomeiwen.com/subject/fbgooktx.html