目录
1.功能介绍
2.使用方法
3.基础用法
3.1获取分组或文件对象
3.2添加分组
3.3移除分组
3.4添加Framework
3.5添加动态库
3.6添加静态库
3.7添加头文件
3.8添加Bundle
3.9添加本地化文件
3.11保存变更内容
3.12添加/删除语言区域
PBXProjectHelper是一个基于Python开发的,目的用于解析和操作PBXProject(XCode项目的配置文件)的工具类库。其提供了非常简单的方法来让开发者对XCode项目进行文件、类库以及项目设置的修改。从而达到自动化维护和管理的目的。
import PBXProjectHelper
helper = PBXProjectHelper ("/Users/fenghj/Documents/work/Demo/Demo.xcodeproj/project.pbxproj")
helper.project.mainGroup.addGroup ("Demo")
# 查找当前分组下名称或者路径匹配的文件或者分组对象
obj = helper.project.mainGroup.getChild(path)
# 第二个参数传入True可以对匹配进行递归,即可以匹配当前分组以及子分组中的所有内容
obj = helper.project.mainGroup.getChild(path, True)
# 根据层级描述来定位文件或者分组对象
obj = helper.project.mainGroup.find("/Demo/ViewController/HomeViewController.m")
# 通过层级描述来定位当前目录下(包括子目录)下匹配的文件或者分组对象
obj = helper.project.mainGroup.find("//ViewController/HomeViewController.m")
# 在项目根目录下添加一个test的分组
helper.project.mainGroup.addGroup("test")
# 在Frameworks目录下添加一个test的分组
frameworksGroup = helper.project.mainGroup.find("/Frameworks")
frameworksGroup.addGroup("test")
# 删除Frameworks目录下的test分组
frameworksGroup = helper.project.mainGroup.find("/Frameworks")
testGroup = helper.project.mainGroup.find("/Frameworks/test")
frameworksGroup.removeChild(testGroup)
frameworksGroup = helper.project.mainGroup.find("/Frameworks")
# 添加系统框架到第一个Target中
frameworksGroup.addSystemFramework("AVFoundation.framework", helper.project.targets[0])
# 添加自定义框架到第一个Target中
frameworksGroup.addFramework("/User/xxx/Lib/Utils.framework", helper.project.targets[0])
frameworksGroup = helper.project.mainGroup.find("/Frameworks")
# 添加系统动态库到第一个Target中
frameworksGroup.addSystemDylib("libz.tbd", helper.project.targets[0])
# 添加自定义动态库到第一个Target中
frameworksGroup.addDylib("/User/xxx/Lib/test.dylib", helper.project.targets[0])
frameworksGroup = helper.project.mainGroup.find("/Frameworks")
# 添加静态库到第一个Target中
frameworksGroup.addStaticLib("/User/xxx/Lib/test.a", helper.project.targets[0])
group = helper.project.mainGroup.find("/test/Headers")
# 添加一个头文件到项目
group.addHeaderFile("Test.h")
group = helper.project.mainGroup.find("/test/Resources")
# 添加一个Bundle到项目的第一个Target
group.addBundle("Test.bundle", helper.project.targets[0])
group = helper.project.mainGroup.find("/test/Resources")
group.addLocalizedFile("Base.lproj/test.strings", "Base", parser.project.targets[0])
group.addLocalizedFile("en.lproj/test.strings", "en", parser.project.targets[0])
# 给项目第一个target添加ShellScript
helper.project.targets[0].addShellScriptBuildPhase("echo \"Hello World\"");
helper.save()
# 添加语言
helper.project.addRegion("zh-Hans")
# 删除语言
helper.project.removeRegion("zh-Hans")
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )