Python_python读写plist文件

本文介绍了如何使用Python脚本批量更新iOS应用发布时的plist文件配置,以实现新版本的多渠道分发。通过解压IPA包,读取并更新plist文件中的特定配置项,再进行文件重命名和覆盖,实现自动化发布流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 关于 plist 文件

通俗一句话介绍: mac os和ios中的一种二进制的XML配置文件 

更准确详细的介绍: 参考 “IOS plist文件   http://www.cnblogs.com/geraldzhang/archive/2011/08/24/2152121.html  ” 

2 在 mac os和ios开发比如cocoa 中,非常好读写plist文件,参考1中提到的文章即可。 

现在有这样一个应用场景: ios app的打包文件.ipa中,使用plist文件保存了一些配置,每次发布之前需要标记版本、渠道等信息,渠道可能有N多个,所以需要在发布流程中根据渠道配置来分别更新plist文件中的某个或某几个key的值,以实现新版本的多渠道分发。

比如这里我们选用python脚本实现发布功能:

3.1 流程: .ipa包是标准zip包,所以直接zip解压,然后找到plist文件,读入,找到相应key,更新value,写到另一个文件,然后删除旧的,再重命名。

3.2 python 实现? 

python读写plist文件,参考这里 “ Python module for binary plist  http://stackoverflow.com/questions/3725268/python-module-for-binary-plist  ” 

笔者最后选择了 biplist 项目 : https://github.com/wooster/biplist  

Python代码   收藏代码
  1. <strong>Plist generation example:</strong>  
  2.   
  3. from biplist import *  
  4. from datetime import datetime  
  5. plist = {'aKey':'aValue',  
  6.          '0':1.322,  
  7.          'now':datetime.now(),  
  8.          'list':[1,2,3],  
  9.          'tuple':('a','b','c')  
  10.          }  
  11. try:  
  12.     writePlist(plist, "example.plist")  
  13. except (InvalidPlistException, NotBinaryPlistException), e:  
  14.     print "Something bad happened:", e  
Python代码   收藏代码
  1. <strong>Plist parsing example:</strong>  
  2.   
  3. from biplist import *  
  4. try:  
  5.     plist = readPlist("example.plist")  
  6.     print plist  
  7. except (InvalidPlistException, NotBinaryPlistException), e:  
  8.     print "Not a plist:", e  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值