Force universal app to run iPhone version on iPad - iphone

I've had an iPhone product on iTunes for a while and have superseded it with a universal app which has been met with approval except from one customer who wants to run the iPhone version on his iPad as he preferred the larger inputs and working of the iPhone.
Is there any way to configure the app to run either as native iPad app or iPhone app on iPad at runtime? Seems an odd request but customer is quite insistant.
Thanks
/Fitto.

No way to do that, except making separates versions for iPhone and iPad.

Theoretically, you could have some setting that would load the iPhone storyboard on the iPad, but it would still display full screen, and not in compatibility mode, which is probably the way this particular user wants it

Assuming you are running some sort of source control, you could change the project to be "iPhone Only" and then test on the iPad, then later revert the changes made to make it a Universal app again

Related

Making an iPhone app on iPad

I have an app available for the iPhone only now not the iPad. I've already released 2 updates for the app(current version 1.2). Im about to release a third and in this update im adding a feature but thought Id also make it compatible for the iPad. Will apple accept that? Will I have to make a new project file for the iPad version?
You don't have to submit a separate project because all iOS applications are supported by the iPad by default, but you can if you feel the need to.
Right-click your target, and select "Upgrade current target for iPad".
I'd also recommend reading through Apple's guide on the subject.
No need to create the new project. There are two ways to solve your problem.
Change the device target to Universal and also change the logic to support both iPhone and iPad. In applicationDidFinishLaunchingWithOptions method put a condition to check the device.If the device is iPhone then load the iPhone screens and if not then load the iPad screens. This case when you upload the binary to App Store then the version number is same for both the binaries(iPhone & iPad) .
Change the device target to iPad and also change the version number whichever you want. For this also need to create separate nibs and change the logic to load only the iPad screens in applicationDidFinishLaunchingWithOptions method. For this case need to upload a separate binary with your specific version.The advantage of this step is you can make it as paid app for iPad or iPhone.
Note: My suggestion is if both are free apps then go with 1st step. If not then go with 2nd step. Still if you are not clarified feel free to ask.

Reverting to a non-iPad App

I have a Universal app existing in the app store for a client. The client wants to release an update just for the iPhone and ignore the iPad.
I said this wasn't possible because the app is already Universal, however, im not sure if I am right now.
Can I release an update that reverted to a non-universal app?
If so will the iPad customers get the update as a 2x app?
Are there any other options? Can I push an upstate just to iPhone customers?
if it is a universal app, then you can just change the iPhone code and leave the iPad code as it is. Both devices will get possibility for an update. I'd recommend adding something like
Update for iPhone side, nothing changed for iPad
to the release notes.
Answering your questions:
No idea, but I wouldn't do it
I don't think so
Other option: change only iPhone side and then test it on devices before publishing. That will show you if something will go wrong on iPad
I do believe one of the apps installed on my iPhone had something like that.
Hope it helps
You can revert to a non-universal app by making the appropriate changes to your project settings. This will cause all devices to receive the update when released, and on the iPad the app will revert to the 'iPhone 2x' interface. You cannot (as far as I can see) push an update to iPhone only.
Reverting to a non-universal app might upset some of your client's customers if they have become accustomed to using the iPad User Interface for the app when they find themselves back in the iPhone UI.
However - if the change you need to make is only to the iPhone User Interface, and doesn't affect the iPad UI or your application logic; Or if the change is to the application logic and won't break the iPhone or iPad UIs, you could still make that change and stay as a universal app ... In other words an iPhone UI update doesn't need to change or remove iPad UI functionality, and a logic-only change which doesn't break either of the UIs won't need you to revert to iPhone only even if that logic change only affects the iPhone.
If you need different behaviours within the app for iPhone and iPad, you can check which device your app is running on and carry out different functions automatically.
Basically, check what the update will affect in each of the UIs, and if the iPad UI won't break just leave it universal.

iPhone, iPad versions mixed in simulator

I created a iPhone application first and converted it to iPad version to make it a universal build. Most of the time it works fine. But sometimes my iPhone version load as iPad and iPad version launches as iPhone. Kind of mixed up. What is the cause for this? Will this be an issue in actual devices once I submit that to the app store?
Thank you
In Xcode you can select the active executable (use the drop-down in the upper-left corner). I find that sometimes it switches on me, perhaps showing iPad and requiring me to set it back to the iPhone executable for example. If this is your issue, there will not be any confusion when you're running it on an actual device.
If you are planning to submit an app to the app store, it's a very good idea (understatement) to test the app on real devices first!

apple has rejected my iPhone app saying it must run on iPad as well

I've just submitted my app to review (for the App-Store), and apple has rejected my app, saying the following:
"On iPad, the application displays a
black screen and no content loads.
This review was conducted on iPad
running iOS 3.2.2 as well as iPhone 4
running iOS 4.1. A screenshot has been
attached for your reference. "
am i obligated to create an iPad version of my app? or maybe i've set some property "on" and made apple think i would like the app to work on iPad?
to be more clear,
i want my app to run on iPhone only.
is it possible? and if do, what need to be set (project properties? info.plist?) to mention that the app should run on iPhone only? so that apple will not test it on iPad...
appriciate your help.
Dror.
Note - this historic QA is 5+ years old.
All issues mentioned in the QA are no longer relevant in iOS development! Enjoy
The problem is almost certainly that you (accidentally) made the app universal.
IF you made it universal, you MUST have both an iPad and iPhone version in there.
If you make the app normal, iPhone only, you do NOT have to (indeed, you can't) have an iPad version in there.
To be clear, Apple are talking about the "ACTUAL" iPad version. Of course, your iPhone app will run using the "blow up mode" on an iPad. Apple are not referring to the "blow up mode."
It is rather silly that in that particular form letter, they do not say something like: ,"You have almost certainly accidentally made your app universal instead of iPhone only" since that is the situation 100% of the time when that happens.
Good luck on waiting another 2 weeks :-/
You do not have to create a specific version of your app for the iPad, however all iPhone apps must also be able to run on the iPad. You might want to try searching google for resources on how to make your app iPad compatible.

Binary of IPhone in iPad?

I am new to iPad,I am having iPhone distribution build, can i upload to apple for iPad Device?Will it run? will it be accepted by Apple?otherwise i have to create new Ipad application for existing iphone application?
Practically all iPhone apps will run unmodified on the iPad. They will simply be scaled up pixel-by-pixel (with a little "2x" button so the user can choose scaled/unscaled mode).
For the best user experience, you should create a universal binary that provides customised behaviour for each platform, but this isn't required.
Any iPhone application, an application that has not been optimized for the iPad, will run on the iPad in 'compatibility mode', which means it will get its own iPhone-sized frame in the center of the iPad screen. The user also has the option to zoom in the application 2 times, so it takes up almost the entire iPad screen.
So if you want your app to run at all on the iPad, you don't have to do anything exciting, just submit it to Apple as usual, and iPad users will be able to download and use it.
If you want to optimize your application for the iPad, which is almost always preferred over 'compatibility mode', you can either make your current application into a Universal one, which is an app which contains both iPhone and iPad versions, in one binary, or you can create two different applications, one for the iPhone and one for the iPad. You can find more information on this on the Apple Developer website.