IOS 自动打包

最近一直在研究ios的自动打包过程,现在把研究过程分享一下:

普通打包一共三步,网上介绍的比较详细,先写下来:

1,xcodebuild -target discus clean   清理


2,xcodebuild -target xxxx CODE_SIGN_IDENTITY="iPhone Distribution:aaaa"   编译    xxxx=工程名称   aaaa=发布证书名称


3,xcrun -sdk iphoneos PackageApplication -v build/Release-iphoneos/xxxx.app -o ~/Desktop/bbbb.ipa     打包xxxx=上一步编译生成的app  bbbb=你要生成的ipa名称


这只是基本的一些参数,当然还有很多参数可以添加,比如选择sdk的版本iphoneos7.0,之类的具体的可以到终端CD到一个工程路径下 用xcodebuild --help 和 xcrun --help查看


说一下我遇到的问题,首先是我用的企业证书,打包发布的时候有一个选项save for enterprise 要勾选,添加application url 和 title 如下图。但是我发现在第三步打包的时候命令行没有参数可以添加这个内容,研究半天只能放弃从其他方面入手。如果有同学曾经勾选过save for enterprise打包的话,你会发现,打包之后会生成个同名的plist文件,用来旺火安装。这plist就是解决问题的关键,plist里面的内容就是我们手动打包是添加的application url 和tiitle,如果你想自动打包可以像手动打包一样要生成配套的plist文件的话,这样做:1,先手动打包生成一个plist文件,作为永久模版。2,在自动化第三步打包之后,再运行一个脚本,cpoy一份到ipa路径下,更改plist内容相应内容即可。解决。





第二个让我郁闷的问题就是,图片资源的更改问题,大家都知道,在xcode中添加成文件夹要右键add,然后选中工程,才算添加到整个工程中。因为自动生成的关系,有一些图片资源的文件夹要进行更改和添加,我找不到相关命令行去做这个工作,于是我就按照上一个方法尝试了一次,就是在模版工程内add了一个模版文件夹,之后我如果想在这个文件夹添加另外一下图片或者文件夹,就可以让脚本先把这个文件夹删除,然后重新添加新的文件夹,但是新旧文件夹必须是同名才行,否者无效。虽然这个是笨办法,但是暂时解决了我某些文件夹的自动更换问题。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Jenkins集成IOS自动打包可以使用Jenkins Pipeline来实现。下面是一些基本步骤: 1. 安装Jenkins和iOS插件:确保您的Jenkins服务器已经安装并配置好Jenkins,并且已经安装了相关的iOS插件。 2. 创建Pipeline:在Jenkins中创建一个新的Pipeline,用于自动IOS打包过程。 3. 配置环境:在Pipeline中配置所需的构建环境,包括iOS开发环境、模拟器等。 4. 编写脚本:使用Jenkins Pipeline的Groovy语言编写脚本,实现IOS自动打包的过程。可以使用Xcode命令行工具来执行打包操作,例如使用`xcodebuild`命令。 以下是一个简单的示例脚本,用于自动IOS打包过程: ```groovy stage('Build') { steps { sh 'xcodebuild -project YourProject.xcodeproj -scheme YourScheme -configuration Release clean build' } } stage('Archive') { steps { archiveFile(file: 'YourApp.ipa', pattern: '**/*.ipa') { sh 'xcodebuild -exportArchive -archivePath build/Release-iphoneos/YourScheme.ipa -exportOptionsPlist export.plist -allowProvisioningUpdates' } } } ``` 这个脚本会在构建阶段使用`xcodebuild`命令清理并构建项目,并在归档阶段使用`xcodebuild`命令导出ipa文件。您可以根据需要修改脚本中的命令和参数,以适应您的项目配置。 5. 触发Pipeline:在Jenkins中配置相应的触发器,例如触发器时添加iOS项目目录作为输入源,然后在Jenkins Pipeline中自动执行打包操作。 以上是一些基本步骤,您可以根据您的实际需求进行调整和扩展。请注意,自动打包过程可能需要一些额外的配置和步骤,具体取决于您的项目和开发环境。另外,为了确保自动打包过程的可靠性,您可能需要测试和验证脚本,以确保它在不同的环境中都能够正常运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值