Best Way to Rename an App

Hey -

In our process there are many concept projects. Often there is no name until the app is nearly ready. With a current project getting close to release we tried renaming it in Unity and found no easy way of doing that. Changing the Bundle identifier in project Settings->Player had no effect. A brute string replacement in all files incl Library finally did the trick, but there must be an easy option for this common task. Right?

When you build the project, check info.plist in XCode before building it to the device. Change the Bundle Display Name to what you’d like it to display on the iphone/ipod screen. Is that what you’re after?

Sorry for not making this clear. Since Unity blasts the Xcode project with each build we are trying to figure out how to rename the app in Unity.

I asked the same question and got the answer here http://forum.unity3d.com/viewtopic.php?t=23792&highlight=

Well, there is a difference between the bundle display name and the bundle identifier name. What we are after is the display name. Here is an example illustrate. Creating a game called “Shooter” will generate an app called Shooter. Setting the bundle identifier will make sure files like icons etc are correctly assigned to that app.
Let’s say someone already has an app named Shooter in the App Store and you want to rename the game to TriggerMan. Change the bundle identifier in Unity - no problem. Icons etc are now assigned. The name will however stay Shooter unless you go into Xcode and change it there each and every time. Hence the question - how to do this in Unity. I know I am being dense and this is probably right in front of me ; )

Changing the bundle identifier changes the name under the icon. Isn’t that the display name. Are you saying there is another place where the name needs to be changed. I’m confused now.

Here is how it works:

  • create new app called A in Unity. Set bundle ident to A also, so the iPhone knows who that is. Run the app on the iPhone and it appears as A, since Unity sets the bundle display name automatically.

  • go back to Unity and change bundle ident to B, run app on iPhone. It will still be called A (display name)

I don’t have Unity iPhone in front of me right now, so this might be all wrong, but I thought the display name was derived from the Save As name you provide when you first do a Build and create the XCode project. If that’s true, then I imagine removing the XCode project and republishing might do the trick.

Or maybe I’m thinking of widgets…

Hmm, when I change my bundle identifier via Player Settings within unity, it also updates the name that is displayed under the app icon on my phone. Not sure why this didn’t work for you.

One work around would be to make any xCode-side changes to your trampoline project that lives within the unity package. Whenever Unity builds a new xcode project, it uses this trampoline file as a template, so if you make changes to the template then those changes persist every time you do a new build. To find the trampoline, right click the unity application, choose ‘show package contents’ and find the trampoline folder within. You can also drop your custom icon and splash screen in here too so you don’t have to copy them over every time you make a new build either.

Solved! The issue was due to an overlooked line of code in the PostprocessBuildPlayer which defines a bundle display identifier. The latter overrides the bundle identifier when present and I had plainly forgotten about it. THX everyone. The tip regarding settings in the trampoline project was also very helpful even outside this scope ; )