iOS making a new project for an existing app - ios

I'm remaking from scratch an app that was previously in Objective-C, to Swift. But I'm not really sure how can I make the new project be linked to the app that is already in iTunes Connect. What I mean to say is that I have a new project whose binary is supposed to be uploaded as the binary of the already registered app.
Besides using the same Bundle Identifier, what else do I need to do to achieve this?
PS: For some reason, the new project won't let me change the bundle identifier's last part: the old one was com.example.myproject while the new one is com.exmaple.MyProject (the new one has capital letters). When I click on the text box to change it to lower case, the MyProject color change to gray and I can't delete it

Go into your app's Info.plist and change the bundle identifier manually. Also, you need to have a higher app version so when you submit, the version is one higher than the one currently in the App Store (so you can make a new version and get it approved).

Related

Renaming an Xcode project for an existing AppStore app

I'm in the process of "rebranding" an existing app of mine, which has been on the App Store for 3 years.
This includes a new app name which should be reflected in the whole Xcode project as well.
The rebranded app should roll out as an update for all existing installations.
I've successfully followed the instructions given here:
How do I completely rename an Xcode project (i.e. inclusive of folders)?
(Additionally, I've changed the bundle name in the info.plist.)
with one exception: Changing the product bundle identifier in the build settings. I guess that's the only place I have to keep the old name so that AppStoreConnect realises this actually is the old app?
Is that so, if not, which is the setting that is needed to identify this as the old app?
Your app is identified using the Bundle Identifier only. You should not modify it. You can change almost everything else.
Note that you cannot reset the Version and Build numbers back to 1 and their values should be greater than the last numbers you used to submit your app.

What are the best practices for preparing an iOS demo app along with main app?

This question is about the App development/testing process. I've an app on the App Store (say ABC); now I added some features on a separate git code branch and want to show these to my teammates.
I can use TestFlight to install it on their iPhones, although that overwrites my original app on the phone.
I'm looking for the best way to get a new App, say ABC Demo, installed on their iPhones.
If you want the "new" version of the app to work alongside the old version on the same device then each app will have to have different Bundle Ids. You can achieve this by creating a new Target in Xcode
http://www.itexico.com/blog/bid/99497/iOS-Mobile-Development-Using-Xcode-Targets-to-Reuse-the-Code
two finger click the existing target and select Duplicate
Then under the new target change the Bundle Identifier to something different
Go to Targets in Xcode
Get Info on your project's target
Search for Product Name under Packaging. Change it to ABC Demo
Press Enter

Upload update with different identifier

I've wrote a project in Swift and uploaded it to app store.
but then I wanted to support iPhone 4 and iOS 7 so I started a new project on Objective-C but with different bundle id, I tried to rename it but the .xcodeproj file got deleted.
So how can I upload the new project with it's new identifier, written in Objective c, to the same app in itunesconnect?
The bundle identifier must be same for this purpose. Why dont you just change bundle identifier of the new project to the previous one and upload?
You do not need to change the bundle identifier to upload an update, even if you are supporting older iPhone models. But if you have strong reason to change the bundle identifier and want to upload it as a new application, you can still do it. The problem is you have to go through the entire app approval process from the beginning, which will take more time than updating an existing application.
Coming to your original question, you can still create new Xcode project and move all the Objective-C files and give a new bundle identifier and upload it as new application. cannot you?
So i solved this by creating new project, because every other solution i searched including changing the bundle id, didn't work for me

Prevent an iOS app from being updated

I am doing some research to find out if an app developer can set up an app in a way that it can't be updated, at least in some circumstance.
Or in another way: what can be done by a developer in order to create on purpose issue during the update of its own app?
It sounds like what you actually want to do is create another Target in your project. This way, you can have multiple copies of your app on the same device. For example, you could have a dev target that is constantly moving and a release target that you don't want to override.
You can do this by selecting your project in the project navigator, right clicking on your app's target, and then selecting Duplicate. It will create a new target called YourAppName-copy. You can then select your target next to where you select the device/simulator to run on & select the new target. Run the new target & it will install the new target and leave your other one alone.
For an enterprise app, you could support your own app updating (and create a web service to check to see if the app needs to be updated -- or if the user's credentials are still valid, etc.).
For a public App Store app, this is not currently possible.

Trouble changing app's name in xcode 5

I am currently using xcode 5.1
I have successfully changed an app's name before using the same steps described this SO Question.
But for some reason I am having trouble right now. Usually, I have experienced this same screen. but this time when I changed the name it did not fully change everything.
When I view my project's targets, the old app name is still being used. If I clean and build my project, it will show the old name very quickly in the "progress bar" up at the top of xcode.
If I look at my project's supporting files folder, the plist still has the old app name ie. old-app-name-Info.plist
So far I have manually changed the project name, changed the bundle identifier, changed the Product Name in the Build Settings, and changed the name of the Scheme. I don't know what else to do.
The app now has the correct name when I run it on the simulator or on my iPhone, but the old app name is still being used throughout various areas in project folder's, xcode settings, etc.
I just want to fully change everything that use's the old app's name and make them use the new app name.
EDIT: Here's another example. If I go to the File Inspector tab the correct name is shown for the project, but if I go to the Issue Navigator tab it shows the old app name at the very top.
What do I need to do to change everything over?
This ended up finally changing it for me.
I went to the Project Navigator tab in xcode and clicked on my project. I then double clicked the target that still had the old app name, changed the name to the new app name, and hit the return key.
Everything is now correct and changed to the new app name. However, I still have no idea why the SO Answer that I linked to in my question did not get the job done in the first place.
I have used that solution several times over the past 6 months and it has always worked perfectly for me so I have no idea why it did not work this time.
Open your plist file and edit bundle name and bundle display name as you want.
This should do the trick.
Simply if you want to change the application name on devices go to the info.plist file on your application and Change Bundle Name to (yourAppName)
That's work for me. (XCode 6.3.2)

Resources