如何更改iOS应用程序的DisplayName?

时间:2014-03-24 08:52:09

标签: ios iphone objective-c xcode cocoa-touch

我知道有很多与我的问题相关的答案,例如。

Programmatically rename an XCode project
Renaming xcode 4 project and the actual folder

但请看下面的代码:

NSString *plistPath = @"...../TestingAPI-Info.plist";
NSMutableDictionary *dictionary = [[NSMutableDictionary alloc]initWithContentsOfFile:plistPath];
[dictionary setObject:@"myTestingApp" forKey:@"CFBundleDisplayName"];
[dictionary writeToFile:plistPath atomically:YES];

我正在通过上面的代码更改应用图标的名称,

enter image description here

更改名称" MySuperApp => myTestingApp"

那么,使用上面的代码更改是否有效?我害怕app拒绝?我还想通过以上代码设置所有更改,例如捆绑标识符,捆绑名称..等等

有效还是没有?通过使用上面的代码苹果拒绝我的应用程序??

3 个答案:

答案 0 :(得分:4)

正如rckoenes所说,这不会对设备起作用。任何包内容都是只读的,包括info.plist。你无法覆盖它。

澄清: 只需在Xcode中打开Info.plist文件并将其重命名为您想要的任何内容。你不需要任何代码。您将在Xcode项目中找到YourProjectName-Info.plist文件。

答案 1 :(得分:2)

writeToFile调用无效,即内容永远不会在Info.plist文件中更新。 API调用可能会返回错误的成功,但该文件的内容永远不会更改,因为应用程序包是只读(显然也是其中的内容)。

根据Appstore review guidelines,有一个暗示,

  

2.6在指定容器区域外读取或写入数据的应用程序将被拒绝。

但是,app bundle是否属于"指定的容器区" 是一个推测问题,因为只有Apple可以澄清这一点。 AFAIK我没有在任何地方读过关于app试图写入应用程序包的拒绝。

作为附注:未经用户同意,随机更改应用程序名称可能不是一个好主意。

希望有所帮助!

答案 2 :(得分:0)

这是非常不寻常的,应用程序名称是您的品牌,它已经完成了很多建议和思考。这有什么好处,为什么你的要求同样改名。