iOS开发之修改已有项目的项目名和类名前缀

一、修改项目名称

1、Xcode打开项目修改项目名称

直接选中项目,点击enter,直接修改项目名称

buydodo改成xiedodo,点击enter

Rename完了点继续,只有框框内的部分变了

2、退出Xcode关闭项目,修改剩下的项目名称

找到xiedodo.xcodeproj->显示包内容->打开 project.pbxproj 全局查找 buydodo并全部替换为xiedodo 保存后关闭。然后修改对应的文件夹名称为xiedodo

.entitlements文件也需要修改

如果包含Tests和UITests文件的,需要打开项目找到.m文件,文件名修改和文件中代码全局查找替换。

3、关联cocoapods

删掉 buydodo.xcworkspace 和 Podfile.lock 并修改 Podfile 里制定的路径 修改好后执行 pod install

objectivec 复制代码
platform :ios,8.0
target "xiedodo" do
4、重新修改pch文件路径

到目前修改项目名称已经全部搞定,确定运行没问题 ,very good!!!

二、修改类名前缀

1、写一个python脚本修改类目前缀。

最简洁方便的方法直接创建一个.text文本,把下面的代码复制进去,然后把后缀改成.py即可。

objectivec 复制代码
#!/usr/bin/env python
import os
for dirpath, _, filenames in os.walk('.'):
    for filename in filenames:
        if filename.startswith('BDD'):
            oldFile = os.path.join(dirpath, filename)
            newFile = os.path.join(dirpath, filename.replace('BDD', 'XDD', 2))
            print newFile
            inFile = open(oldFile)
            outFile = open(newFile, 'w')
            replacements = {'BDD':'XDD'}
            for line in inFile:
                for src, target in replacements.iteritems():
                    line = line.replace(src, target)
                outFile.write(line)
            inFile.close()
            outFile.close()
            os.remove(oldFile)

filename.replace是把BDD替换成XDD

最后把这个 app.py 放到 buydodo.xcodeproj 同级目录下,并执行python app.p

提示:

①、根据python版本来定 这里用的是python(如果不行就用python3,或是查看下自己python版本)

②、上面代码,python3中没有iteritems()方法,如果使用python3,则要替换为items()

执行结束后可以看到已经把项目里所有含有BDD头的类替换成了XDDxxxx。

打开 xcode 将红色(或灰色)部分文件删除,并将改名后的文件导入工程,"Add Files to"。

2、修改其余拓展类的前缀

第一个不走的python脚本只修改了类明从BDD开始的,如果是拓展类,则无法修改,文件目录全局搜索下,手动将BDD全部替换为XDD

3、修改方法名前缀以及文件里面导入文件的

三、运行xcworkspace文件没问题

运行项目,如果没有问题,万事大吉,直接收工。如果有少许报错,不用怕,根据提示一一改正。

相关推荐
大熊猫侯佩17 小时前
Swift 6.4 的 Ref / MutableRef 大揭秘:给值类型开一扇“安全的小窗”
ios·swift·编程语言
黑科技iOS上架18 小时前
没有mac电脑如何借助windows系统上传ipa到App Store
经验分享·ios
Layer19 小时前
从 WWDC 26 空间重构(Spatial Reframing)再看端侧 2D 转 3D 的技术演进
ios·aigc
Cutecat_1 天前
视频字幕处理工具横向:提取模式 vs 编辑模式,该如何选择
android·前端·ios·语音识别
大熊猫侯佩1 天前
WWDC26 SwiftUI 进化之路:砸碎黑盒,彻底迎来开发自由!
ios·swiftui·swift
游戏开发爱好者81 天前
iPhone真机调试有哪些方法?一次定位推送权限问题时整理出来的几种方案
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
大熊猫侯佩2 天前
WWDC26 最被忽视的王炸:告别“伪并发”陷阱,Swift 6.4 的 async defer
ios·swift·编程语言
h-189-53-6712072 天前
苹果开发者账号防关联3.2f隔离环境传包提审iOS开发上架的高效隔离方案:iOSUploader工具实用解析
ios·ios上架·ios审核·苹果审核·苹果开发者账号·苹果开发者封号
Legendary_0082 天前
LDR6020P:iPad 一体式皮套键盘 OTG 应用的核心引擎
ios·计算机外设·ipad
Digitally2 天前
如何高效地将文件从电脑传输到 iPad:6 种简单方法
ios·电脑·ipad