iPhone/iPad app delopment and BundleId - iphone

Okay so here is my situation. About a year ago I released my very first iPhone app! (Yeah). Since then I have been working on making it into a universal app. In doing this, I actually went ahead and created a brand new universal app and then proceeded to code accordingly.
So now I want to release this app but since the app was created brand new, it has a different bundle Id. I don't want to alienate the users that bought the previous version for just the iPhone so is it as simple as just changing the universal app bundle Id to the one I used for the iPhone and publish that way? Will this fly with apples publishing system?
Thanks in advance for any and all help.
Geo...

Should be absolutely fine. The devices will just replace the app with the new version - as long as your new one uses the same data storage / preferences etc there's no reason why that won't work.
NB This answer assumes that you are going to release it as an upgrade to your previous app.

Related

Can't test iPhone app update as an update

I have been working on an iOS app update and am ready to submit it, however I am having a small issue I am concerned about. I create an ad-Hoc version for testing and when I try to synch the update over to my phone via iTunes it won't give me the 'update' option next to the app. The buttons in iTunes says 'remove'. iTunes actually forces me to first remove the old version of the app and only after it is removed, iTunes gives me the option to install the new version and then the app works fine. The only problem is that this is not really testing the update process and I am concerned that once I release the app to the app store my users will have the same issue where they will not be able to just update the app, they will have to remove the old app first and then install the new version. Any idea what might be going wrong here?
iOS takes care of updating Apps, as far as bundle identifier in your info-plist is the same, any newer version will show as an update in iOS. But in iTunes things work differently. You don't have to worry about these things.
If you want to test effects of updating an App, Install the old version from AppStore. Connect your device and Run the project from Xcode. Now this will work the same way as updating your app.
There is no problem from your part. Maybe this time iTunes is not smart enough to know that your ad-hoc version is an update one or maybe the version of the app on iTunes and on your phone is the same. I've made a lot of update to my apps, when you submit a new one to AppStore your user won't face this problem. They will find an update button for your app :).

Convert released iPhone/iPad app to Universal

I have an app that has been released on the app store with separate versions for iPhone and iPad. Now I wish to convert the app to a Universal version but I have an issue which I'm not sure can be resolved.
Both versions of the app use a different bundle identifier (for example com.mycompany.app.iphone and com.mycompany.app.ipad). I want the new (universal) version to overwrite either of the old versions when downloaded from the app store. To complicate matters further, core data stored for that app needs to be retained.
I'm not sure its possible and perhaps the protocol is to release the universal version under a new bundle identifier and have users start again but if a workaround is available it would be really helpful.
your options:
1: Update both your iPhone and iPad apps with this universal binary (with respective bundleIDs and app names)
2: Create a way to sync data between apps by creating a web service. one of the apps I have used extensively - Gas Cubby, does this for transferring data from its free app to paid app. You could implement it in a similar way
3: Nuke one of the apps, update the other app with the universal binary
Option 1 is the easiest. 2 will take longer. 3 is dirty.
(will update this answer with more options if I come across any)
As far as I know and from what I've read before, you can't change the bundle identifier of an app published in the app store.
Due to the sandboxing, accessing the data of your old app from the new app is also impossible.
There are several ways you could go about solving this issue, depending on which one suits you best. You could create a new universal app, and abandon the old ones hoping that the users change their preferences, or you could be pushing the same update to both applications, essentially, having the identical app under two different names. I'm not sure what are Apple's stances on the second option, but it will be a hassle either way. Good luck!

How can I distribute beta builds of App and not write over purchases copies

I believe I understand out to produce an .ipa file for Ad Hoc distribution to my beta testers, but my question is what settings do I need to allow the beta copy to co-exist with a purchased copy of my App on the same device? That way they can test out the app for me, and fall back to the production app for day to day use.
Thanks,
Rob
Change the bundle identifier. For your app is com.domainname.appname, for your beta could be com.domainname.appname-beta
I would make a new app name and bundle identifier and then name the app (the text under the icon) a different name then send it out. It's a little extra work but it makes it so you won't mess up any existing saved data on your production app.

Apple store update?

I have an app in apple store, I want to update it. But instead of working on old project, I created a new project and now it is finished. If I upload the new one, does apple reject it because of different sku and appids. Older version was very bad and I created totally new app. What should I do to update my application?
In your apps Info.plist, you want to make sure that the Bundle Identifier between the two apps match, and that the new app has a higher version than the old app. Then you should be able to successfully submit your new version to Apple.
I think you need to make sure:
your application identifier is the same
you sign it with the same developer certificate/identity
new version > old version

Inapp purchase in iphone

I am new in iphone and i am on the final stage of my first project for iPhone.I need some help in Inapp purchase implementation.I need to give a free version of my app for thirty days and then force the user to buy the app.Please let me know how can i start implement this.Looking forward for valuable advices.
Thanks in advance.
You can't release a time limited app of any kind through the Apple Store.
The iPhone business model does not work like that for non-moblies. Apple will not let you release a time limited application of any kind.
Instead, you have to create a "lite" version that has some but not all the full application's features and release that for free. The lite version can have a link to upgrade to the full version but it must be a functioning app in its own right.
So, you need to start over from scratch thinking about your app. You need to develop two versions.
You'll need to manage the activation over the network - if you try storing the "shareware" date locally, then you'll create a state where users can just wipe the app and re-install every 29th day. But then if the user always runs your application in airplane mode, they'll never contact the activation server, so you'll need to manage activation locally :-).