美文网首页iOSiOS大咖OC开发
在iOS项目中,如何完美的修改项目名称

在iOS项目中,如何完美的修改项目名称

作者: 伯牙呀 | 来源:发表于2017-02-08 13:38 被阅读9245次

    前言:

    在iOS开发中,有时候想改一下项目的名字,这会遇到很多麻烦。

    • 直接改项目名的话,Xcode不会帮你改所有的名字
    • 项目中的很多文件、文件夹或者是项目设置的项,都是不能随便改的,有时候改着改着,就会编译不了。

    所以各位重命名项目时,记得先备份好一份噢。本文我会介绍一种“完美”的修改方法。

    注意:重命名项目时,记得先备份好一份
    注意:重命名项目时,记得先备份好一份
    注意:重命名项目时,记得先备份好一份

    重要的事情说三遍

    本文会把一个项目名叫 OldDemo123 改成 NewDemo

    正文:

    修改前的项目结构:


    修改前的项目结构
    1、打开项目,对项目名进行 Rename

    1.1、选中项目名并按下回车,进入可编辑状态:


    选中项目名字,进行编辑

    1.2、输入新的项目名字,然后按回车,弹出改名前和改名后的文件对名,这时点击 Rename

    点击 **Rename**
    2、修改文件夹名字和显示包内容

    2.1、打开应用所在文件夹,修改文件夹名字

    注意:

    • 文件夹NewDemoTestsNewDemoUITests里面也要修改
    • 这里的NewDemoTests,原先为OldDemo123Tests
      我们改名字时需要注意,只需要把旧名字(OldDemo123)替换成新名字(NewDemo)即可,不要把其它字符(Tests)删除!
    修成后的文件夹名字

    2.2、选中 NewDemo.xcodeproj 右键打开 --> 显示包内容 --> 双击打开 project.pbxproj

    显示包内容,双击打开 project.pbxproj

    2.3、打开 project.pbxproj 文件之后,用搜索快捷键 command + f 全局搜索旧的项目名 OldDemo123 ,并用新的项目名 NewDemo 进行替换。替换完成后进行保存 command + s,然后关闭。

    注意:要把所有的 OldDemo123 更换成 NewDemo

    搜索 OldDemo123 ,并替换成 NewDemo
    3、打开 NewDemo.xcodeproj 文件

    注意:打开的是 NewDemo.xcodeproj 文件,而不是 NewDemo.xcworkspace文件。

    3.1、此时会弹出提示框,点击 OK 就行。

    弹出提示框

    3.2、显示此时项目结构和修改更新Podfile文件

    修改好项目结构

    如果你的项目里面没有使用CocoaPods的话,项目应该可以运行成功了。

    使用CocoaPods的话,项目虽然表面看起来已经修改成功了,但是运行之后发现提示错误:

    使用CocoaPods的话,会提示的错误

    此时打开项目文件夹,找到 Podfile 文件,双击打开,修改 target 后的项目名为最新的项目名 NewDemo

    target 'NewDemo' do
    pod 'AFNetworking', '~> 3.0'
    end
    

    然后在终端,用 cd 到项目目录下,运行 $ pod install,进行更新。

    3.3、打开 NewDemo.xcworkspace 文件
    此时文件显示错误:因为文件路径的原因

    错误显示

    选中显示红色的 OldDemo123 文件,点击右侧文件夹小图标,更改路径。

    修改文件路径

    路径更改成功之后,项目基本就可以运行成功了。

    4、修改 Scheme

    选中 OldDemo123 --> 下拉中选中 Manage Schemes --> 弹出一个显示框。

    修改Scheme名

    选中要修改的 OldDemo123 那一行,并按下回车,进行修改新的名称 NewDemo,然后点击 Close

    修改新的 Scheme 名
    5、项目内全局修改、替换

    其实到上面,项目已经基本修改完成了,但是对于一些处女座、强迫症患者来说,还有一些问题,如下:

    生成类时的顶部介绍

    5.1、全局搜索旧的项目名

    全局搜索
    5.2、把 Find 修改为 Replace,输入新的项目名,点击 Replace All 全局替换。 全局替换

    最后:

    到此,项目名已经完全修改完成了,小伙伴们可以尝试修改了。

    下面是修改后的项目结构:


    修改后的项目结构

    注意:重命名项目时,记得先备份好一份

    相关文章

      网友评论

      • f170d29955a5:iOSMixProject工具有修改项目名称的功能,几秒钟就能修改完成,使用方法参考https://www.jianshu.com/p/b09806ef1b33
      • Mr姜饼:3.2步骤后 打开文件为红色 纳闷 一步一步按照你的来的。。。:sweat:
      • JaneHooK:你写的 不错 ,在你基础上 又摸索点新的改法,https://www.jianshu.com/p/eea2dfe7e44d
      • f9f9245f531f:按照步骤修改工程名,现在工程关闭不了,总是弹出如下提示“You don't have permission to wrile to the folder that the file "libc++.tbd"is in. you can duplicate this document and edit the duplicate.Only the duplicate will include your changes” 无论选择Duplicate 或者 OK选项,都始终弹出这个框。 麻烦请教一下,知道是什么问题导致的吗?怎么修正?
      • MaShuai丨:修改成功,感谢
      • 你好牛:我们 渠道的包要改好多不一样的名字 等到更新版本的时候又要改 好烦人
      • JoeWcc:真的好繁琐,还是不改了:sweat:
        JoeWcc:@0_0 我现在都是有个工程副本 然后所有项目都使用这个副本 除了包名 和应用名不一样
        伯牙呀:@JoeWcc 你等着,等苹果出来一键改名功能:smile:
      • Scott丶Wang:修改成功
      • 随缘___:修改成功了,但是 3.1、弹出提示框(The folder “Assets.xcassets” dose't exist) 这个提示没有出现,警告也变多了
      • 直男程序员:不错 改的很成功
      • 3793ba45771e:改成功了,很赞
      • 1bbb2debfc73:.xcodeproj cannot be opened because the project file cannot be parsed.
        伯牙呀:@hotjjj 现在身边没电脑,你上网找下原因
      • 1bbb2debfc73:2.3完成后 项目打不开 不能解析,大神有好的解决办法么
      • 0eccd8bcf57a:创建项目的同事把包名设置成wallet,打包死活不成功,搞了一上午试了各种方法都不行。后来一想,wallet好像跟苹果的Wallet重名了,就按这个方法改了名。亲测有效,多谢多谢。
        伯牙呀:@两千个秘密 命名不能太任性:smile:
      • ChooseYourself:楼主求个联系方式,有问题请教
      • 旧时凉梦已成风:error: failed to remove /Users/imac/Library/Developer/Xcode/DerivedData/QuickDeal-gjhzovmncaoqhhfbkbgckixmuqfi/Build/Products/Debug-iphoneos/QuickDeal.app/Info.plist: “Info.plist” couldn’t be removed.
        楼主大大,不知道为什么,会出现这个问题,求帮忙
        伯牙呀:@旧时凉梦已成风 表面意思是Info.plist文件不能移除
      • 1d1e87c628b3:谢谢,OK了
        旧时凉梦已成风:error: failed to remove /Users/imac/Library/Developer/Xcode/DerivedData/QuickDeal-gjhzovmncaoqhhfbkbgckixmuqfi/Build/Products/Debug-iphoneos/QuickDeal.app/Info.plist: “Info.plist” couldn’t be removed.
        楼主大大,不知道为什么,会出现这个问题,求帮忙
        旧时凉梦已成风:error: failed to remove /Users/imac/Library/Developer/Xcode/DerivedData/QuickDeal-gjhzovmncaoqhhfbkbgckixmuqfi/Build/Products/Debug-iphoneos/QuickDeal.app/Info.plist: “Info.plist” couldn’t be removed.
        楼主大大,不知道为什么,会出现这个问题,求帮忙
      • d8bcc2d67657:正在困扰如何改,谢谢:+1:
      • 奥卡姆剃须刀:改成功了:pray:
      • 没吃悟饭:第三步,打开xcodeproj,文件打不开是什么原因
      • c8ac080cb4a5:楼主在吗?能给个QQ 或者微信吗 有问题问你
      • jonqinwu:问一句,最后说的强迫症患者 搜索后,你说一个个区文件中替换的吗?那样太多文件 很麻烦啊
        伯牙呀:@王永康 哪的问题
        六道Peter:试了一下,修改不了
        伯牙呀:@n1p_ 暂时没找到其他替换方法:no_mouth:

      本文标题:在iOS项目中,如何完美的修改项目名称

      本文链接:https://www.haomeiwen.com/subject/dkevittx.html