iOS 修改APP工程名字
我们在iOS开发中,难免会遇到项目做到一半要改名字的情况。如果项目名差的太大,工程名看起来总是不舒服的,就会想着为工程改个贴切的名字,那么你就为用到本文记录的内容。
如何修改工程名呢?
下面我就拿一个中等大小的项目来实际操作一下,并记录整个要修改的地方。
该项目的结构如下:
项目中还用到了几个第三方框架:
接下来,就要开始修改项目名称了。假设我要把doutu改为shopping。
提醒:
- 在改工程名之前,要注意三件事:一定要备份,一定要备份,一定要备份。
1.修改大文件夹的名称
直接修改的。
2.修改project名称
选中project 单击project名字 或者 选中project+回车。
修改project的名称之后,回车会有提示:
这里点击Rename,将project中部分doutu改为shopping。
修改之后,哪些地方有明显变化呢?
3.修改文件夹名称
选中文件夹 单击文件夹名字 或者 选中文件夹 回车。
修改之后,回车是这样的:
虽然在Xcode 里文件夹的名字修改了,但是实际上文件夹里的名字还是没有修改,我们需要去真实文件夹里再修改一次。
4.修改工程中文件夹的路径
在上一步修改玩真实文件夹的名字后,工程中所有的类都变成了红色(文件找不到)。如下图所示:
主要是因为工程中的文件夹指引的路径不对。
按照如上步骤所示,找到我们刚才修改的真实shopping文件夹,点击Chose 即可。
这时候,因为文件夹关联的真实文件夹路径正确了,所有红色的文件都正常了。
这是修改后的样子:
5.全局搜索
全局搜索doutu,搜索结果如下:
接下来是将doutu替换为shopping。
点击Replace All之后,大部分doutu都会被替换为shopping,但是还是有一些顽固的残留。
可以看出,这个是project 文件中,我的第三方框架的framework Search Paths 和Library Search Paths 的路径错误。即:
这里只需要将doutu 修改为 shopping即可。
怎么修改呢?
有两种方式,第一种双击framework Search Paths 和Library Search Paths 后面的值,然后单独修改每个值。
第二种方案,先将framework Search Paths 和Library Search Paths中的值都删掉,然后把第三方删除,再重新添加。
这里点击Remove References删除,然后再把Vendor文件夹添加进工程即可。
6.修改pch文件路径
如果你的工程里添加了pch文件,因为修改了文件夹,project名字,所以pch文件夹路径也要修改。修改前编译运行,会报如下错误:
在Build Settings 中搜索Prefix,修改Prefix Header 的值。
上面把doutu/shopping-Prefix.pch修改为shopping/shopping-Prefix.pch即可。
7.修改info.plist文件路径
此时再次编译运行,依然会有一个错误,错误如下:
然后依然去 Build Setting 中搜索info.plist。
上面将doutu/Info.plist修改为shopping/Info.plist即可。
到这里,工程应该已经可以正常运行了。
但是,如果你想追求完美,依然还有两个地方需要修改。
8.修改scheme 值
要修改的其实是这个地方的显示名称:
怎么修改呢?
点击scheme值,然后选择 Manage Schemes...
接下来会进入到一个弹出窗口,选中一行,点击scheme值或者 回车:
这里把doutu 修改为 shopping就会看到 scheme 变成了shopping,如下图所示:
iOS 修改APP工程名字的更多相关文章
- 关于PowerBuilder 9.0中如何修改项目工程名字
关于PowerBuilder 9.0中如何修改项目工程名字,首先要找到三个文件,xxx.pbl.xxx.pbt.xxx.pbw这三个文件,为何要找这个三号个文件呢? 因为在使用PowerBuilder ...
- phonegap工程中修改app的名字
针对phonegap比较高的版本,我的是6.4.0. 在phonegap工程中,当添加了iOS和android平台或多个平台后,工程进行了开发,然后觉得app的名字想修改一下(比如在手机上显示的app ...
- 修改kile工程名字(转)
假设原来的工程文件名是first,要改成second1.在工程文件目录中,将first.uvopt和first.uvproj名字改成second.uvopt和second.uvproj.2.其他fir ...
- IOS - 修改APP桌面名称为中文名称!
1,修改“Display Name”为想要的中文. 2,修改“bundle display name”为想要的中文.
- 修改app工程名 Android Studio
1.关掉AndroidStudio,在原项目最外层文件夹和内部xxx.iml上直接重新命名, 2.然后重新打开AndroidStudio,加载项目, 3.最后
- iOS: 设置App的国际化和本地化
原文链接:http://www.cocoachina.com/appstore/20160310/15632.html 前言 App的名字设置方式有很多种,如果在App打包上线时不做修改,最终App的 ...
- 【转】iOS 设置APP的名称(浅述APP版本国际化与本地化)
原文网址:http://www.jianshu.com/p/a3a70f0398c4 前言 App的名字设置方式有很多种,如果在App打包上线时不做修改,最终App的名字就是Xcode在建立工程时的名 ...
- iOS 修改打包后的.ipa应用名字
一.修改应用的名字 二.重新签名 下面详细介绍介绍两个步骤: 1.修改应用的名字: 1).解压.ipa文件,在Payload文件夹下有一个.app文件(如下图:)选中.app文件,右键点击“显示包内容 ...
- iOS获取app图标和启动图片名字(AppIcon and LaunchImage's name)
在某种场景下,可能我们需要获取app的图标名称和启动图片的名称.比如说app在前台时,收到了远程通知但是通知栏是不会有通知提醒的,这时我想做个模拟通知提示,需要用到icon名称:再比如在加载某个控制器 ...
随机推荐
- Java并发编程--ThreadPoolExecutor
概述 为什么要使用线程池? 合理利用线程池能够带来三个好处.第一:降低资源消耗.通过重复利用已创建的线程降低线程创建和销毁造成的消耗.第二:提高响应速度.当任务到达时,任务可以不需要等到线程创建就能立 ...
- codechef September Challenge 2017 Sereja and Commands
———————————————————————————— 这道题维护一下原序列的差分以及操作的差分就可以了 记得倒着差分操作 因为题目保证操作2的l r 小与当前位置 #include<cstd ...
- 阶段性总结⓵触摸事件&手势识别⓶Quartz2D绘图⓷CALayer图层⓸CAAnimation⓹UIDynamic UI动力学⓺KVC&KVO
知识点复习 1. 触摸事件&手势识别 1> 4个触摸事件,针对视图的 2> 6个手势识别(除了用代码添加,也可以用Storyboard添加) 附加在某一个特定视图上的, ...
- 【洛谷 P1651】 塔 (差值DP)
题目链接 题意:\(n\)个木块放到两个塔里,每个木块可放可不放,使得两塔高度相同且高度最大,求最大高度. 这个差值\(DP\)的思维难度还是很大的,没想出来,我就打了一个\(dfs\)骗了好像\(2 ...
- Invalidate()(转)
原文转自 http://m.blog.csdn.net/blog/piaopiaopiaopiaopiao/41521211 使用Invalidate(TRUE)函数时,它会向消息队列中添加了WM_E ...
- 常见协议基础知识总结--FTP协议
FTP协议是一种基于客户端和服务器的文件传输协议,属于应用层协议,基于传输层的TCP协议: FTP主要分成主动模式和被动模式两种传输方式, 方式是相对服务器而言的,服务器主动发起数据连接即主动方式,使 ...
- cpu_relax( )-----对自选循环等待(spin-wait loops)操作的优化【转】
cpu_relax()-----对自选循环等待(spin-wait loops)操作的优化 转自:http://www.doc100.net/bugs/t/173547/index.html 在loc ...
- Linux内核中的GPIO系统之(3):pin controller driver代码分析--devm_kzalloc使用【转】
转自:http://www.wowotech.net/linux_kenrel/pin-controller-driver.html 一.前言 对于一个嵌入式软件工程师,我们的软件模块经常和硬件打交道 ...
- mvn常用的构建命令
mvn -v 查看maven版本 mvn compile 编译 mvn test 测试 mvn package 打包 mvn clean 删除target mvn install 安装jar包到本地仓 ...
- oracle创建用户赋予权限,删除权限
--删除用户及及用户下的所有数据 drop user xxx cascade; --创建用户赋予密码 ; --赋予权限 grant dba to xxx; --删除权限 revoke dba from ...