1.找到Python位置:(终端中输入which python)
获取python的安装位置,用它来搭建python的编译环境。
2.在Xcode中创建python程序
打开Xcode,新建项目:Cross-platform->Ohter->External Build System
3.设置Edit Scheme
创建项目---点击项目图表---选择Edit Scheme ---Arguments新建.py文件 ---Option里,选Working Directory---Xcode Project所在的文件夹,就是你的.py文件存放的文件夹,最后选择确定。
4.编写代码并运行
1、找到Python位置:
终端输入:which python
获取python的安装位置,一般为/usr/bin/python。获取到这个路径方便使用它来搭建python的编译环境。
2、在Xcode中创建python程序
打开Xcode,新建工程(Shift+Command+N),选择Cross-platform->Ohter->External Build System,继续下一步。
在Build Tool中粘贴刚刚找到的python路径,eg:/usr/bin/python,点击Next:
相关推荐:《Python基础教程》
3、设置Edit Scheme
创建好项目之后,在左上角的项目图表上点击一下,选择Edit Scheme
第一个选项Info中的Executable选择python的路径,eg:/usr/bin/python
第二个选项Arguments里,在第一个Arguments passed on launch里,新建一个你即将新建的.py文件,eg:main.py
第三个选项Option里,勾选Working Directory并选择到Xcode Project所在的文件夹,也就是你的.py文件存放的文件夹,最后选择确定。
4、Build and Run
在项目中新建文件(Command+N),选择macOS->Other->Empty,命名为刚刚在Scheme里添加的文件名,eg:mian.py
现在编写代码,并点击Run, 就可以实现python程序在Xcode下的编译和运行了。
在实现iOS项目的自动打包工程中,我们需要配置好工程的证书文件信息,为了能够自动的根据bundle id来设置不同的profile文件,我们可以通过脚本文件来修改工程的projext.pbxproj文件帮助我们进行自动设置。
1. Project.pbxproj
Xcode项目中的xxx.xcodeproj其实是一个文件夹,右键单击xxx.xcodeproj,显示包内容:
Project.pbxproj的解析
关于这个配置文件的结构,请参考 project.pbxproj,最熟悉的”陌生人 (http://www.olinone.com/?p=215),解析该文件可以使用现有的解析工具mod-pbxproj,该工具是一个python的脚本。其github地址为: https://github.com/kronenthaler/mod-pbxproj 。
为了修改不同taget的profile,我们需要知道这些配置在文件中的具体位置,不难发现:
我们的目标是为不同的bundle id设置不同的profile,所以只需要找到不同target的XCBuildConfiguration,修改其中PROVISIONING_PROFILE的值即可。通过分析project.pbxproj文件结构,你会发现其找到这些target的buildSettings的路径如下:
rootObject=>PBXNativeTarget=>XCConfigurationList=>XCBuildConfiguration。
XCBuildConfiguration会有Debug和Release两个版本,这里我们以修改Release版本的为例进行说明。
2. Python脚本修改profile
需要在工程目录下配置如下脚本文件,通过从json文件中读取配置信息,然后根据不同的bundle id来设置不同的profile文件和其他字段信息。其中xcode_configurator_profile.py为修改profile的脚本文件,profile.json为配置的证书信息。demo如下图所示:
首先在profile.json文件中配置好bundle id和对应的profile文件,如下如所示:
然后在工程目录下执行xcode_configurator_profile.py:
检查profile修改结果:
如果设置了以后有任何问题, 你可以在对应的xxx.xcodeproject下找到对应的备份。