iPad distribution question - iphone

I just updated our app to an universal app for iPhone and iPad. I made all the changes (classes, nib, targeted device family, icons and so on) and it worked just fine on the simulator and my iPhone/iPad developer devices. I submitted the app to the app store and yesterday it got 'ready for sale'. The problem is that it shows just the iPhone Version and Screenshots in the app store and when I install the app on the iPad it just shows the iPhone version.
I have no clue what I've could make wrong?
Does anyone know what it could be? Does it need a special certificate/provisiong profile or something else? I found nothing on google about that.

try to check the "Release" target configuration of your build to check if the Target Device Family field (TARGETED_DEVICE_FAMILY) is set to iPhone/iPad.

Check to see if your Distribution configuration settings match your Release configuration settings for your Build Target, except for codesigning and verification, of course.

Related

Could I submit app to appstore without ios device?

Today I want submit my app to app store, I created apple ID and prepared app for upload. I created Distribution Provisioning Profile and I prepared everything in xcode but when I change
iPhone Simulator 6.1 -> iOS Device (button archive is unavaible)
Check dependencies
Code Sign error: A valid provisioning profile matching the
application's Identifier 'com.etomek.Ukladanka' could not be found
I thought that I need Developer Provisioning Profile? But I don't have any iPhone/iPad
So Could I submit app to appstore without ios device ?
You do not need a device, and can archive when it's set to iOS Device. The best bet is to test on as many devices as you can, and archive when it's plugged in. Although when it says iOS Device, you can archive. The reason it's grayed out is probably an error in your provisioning profile or certificate. You may want to look under Organizer under profiles or under your build settings.
You need a development certificate for testing locally and distribution certificate for submission to the app store. You need to create a request in keychain then submit it using iTunes Connect, and then download the proper provisioning profiles and certs, and install it in XCode Organizer.
Best bet is to purchase a cheap device like an iPod Touch or iPhone, that can test most of your capabilities (iPod doesn't have most capabilities). You can compile for iPad with iPod or iPhone. So you just need an iOS device that can support your version 4.3+ or 5,6,7.
My previous answer was not correct, but this one is. Trausti was actually correct.
From Official Apple Documentation
To create an archive
For iOS, tvOS, and watchOS apps, choose a generic device or your device name from the Scheme toolbar menu in the project editor.
You can’t create an archive of a simulator build. If a device is connected to your Mac, the device name appears in the Scheme toolbar menu. When you disconnect the device, the menu item changes to the generic device.
Choose Product > Archive.
The Archives organizer appears and displays the new archive.
So you don't need an iOS Device to create an archive and distribute it on the App Store or for beta/ad-hoc testing.
Yes, you can submit your app to app store without having a device.
The error you have is most likely because of incorrect name of your application.
No you can not. Also if you are wanting to do a clean distribution you will need to get a distribution license so you can do the distribution directly from xcode. Here is a good tutorial.
http://docs.xamarin.com/guides/ios/deployment,_testing,_and_metrics/app_distribution_overview/publishing_to_the_app_store
You will need to have a device in order to submit:
You cannot archive the app if xcode is set to simulator
You do not have to run the app on the device, but you must connect
it in order to archive it. That is why the menu is not
avalaible(grayed out)
PS: Also , you do not want to submit an app wihtout testing it on a real
device, that's just my opinion though.

iPhone only app rejected because it is a Universal binary

I just had an iPhone only App rejected by iTunes connect because...
In our review of your app, we found that it is a Universal app for both iPad and iPhone. Because it is set as a universal binary, your app requires screenshots from iPhone and iPad.
The app had previously been a universal binary (never previously approved) and I had previously uploaded an iPad screenshot (just a place holder) to allow me to upload the binary. (I had to upload then self reject a binary to test IAP.)
But as far as I can tell my app is a iphone only binary. When I run it on the iOS iPad simulator it runs at iPhone resolution with the 2x button. Yet when I upload this (I think) iPhone only binary to iTunes Connect it still asks for iPad screenshots.
In Xcode I have the following settings
targets->Build Settings->targetted device family = iPhone.
and
targets->Summary->Devices = iPhone.
And again it acts like an iPhone only app when I run it on the simulator. Are there any other setting in XCode or in iTunes Connect that I need to set? Thnx
EDIT
After my app was rejected I removed the placeholder iPad screenshots from iTunesConnect. (I had tried to do this several times before submitting the app, but was unable to. I even wrote a developers note to the reviewer hoping they wouldn't spike my app for that reason.) I also remove the ipad Default.png from my project. One of the two of those actions fixed it. I think because I had been testing the app as a universal it took a couple of submissions to for iTC to recognize that I was only uploading an iPhone version. Either way, it now recognizes it as a iphone only and was approved.
After my app was rejected I removed the placeholder iPad screenshots from iTunesConnect. (I had tried to do this several times before submitting the app, but was unable to. I even wrote a developers note to the reviewer hoping they wouldn't spike my app for that reason.) I also remove the ipad Default.png from my project. One of the two of those actions fixed it. I think because I had been testing the app as a universal it took a couple of submissions to for iTC to recognize that I was only uploading an iPhone version. Either way, it now recognizes it as a iphone only and was approved.
just set build target devices In Sumary to iPhone...make a check in plist... also just load .xib files iPhone, make a clean in your project and rebuild.. Check if you are not loading some target
You shouldn't believe what you see in targets->Summary. Especially, if you ever changed to "Universial" and back to "iPhone".
Instead of Summary you should always check targets->Info.
Also if you change Icons, Orientations, etc. often there are leftovers which you only find in Info

Is it possible to add distribution profile to iPhone when building?

I can't add one to devices in xcode organizer...
When I build the app for release, should I choose simulator or device?
For releasing your application you can not use simulator , you have to specify device or distribution.
you can use simulator for only testing purpose in ur pc.
I didn't understand the question at all. But you need to choose "Device" for distribute your iPhone App, otherwise your App gets rejected before the Review has begun or it's not possible to use it for AdHoc.
For using an AdHoc Distribution Profile you need to register your Device in the iOS Developer Portal, and add it to your AdHoc Distribution Profile. Download it and drop it on the Xcode Icon. Choose the Code Signing Identities, add the Entitlements.plist, Archive your App, drop the IPA on iTunes and install it.
If you need more infos please leave a comment.
There is actually a complete tutorial for the process at iOS developer center. See: https://developer.apple.com/ios/manage/distribution/index.action
You can not add a profile directly to your device. (Actually, I don't know if you can but its of no use really). You have to SIGN your app using a profile.
You can choose either simulator or device for building for RELEASE. Though simulator build will only work on simulators and are only good for testing on it using RELEASE settings (if any).

Why does Xcode 4.1 say my iPad only app can run in the iPhone Simulator?

I have an iPad-only app (targeted device family is iPad, architecture is armv7), but Xcode offers both iPhone & iPad simulators to deploy to in the scheme/device dropdown. If I create a new iPad-only project from scratch, only iPad Simulator is available as a deployment target.
Why does my iPad-only project show iPhone Simulator as a device option?
Just resolved this in our app; it was due to a sub-project being set to target iPhone. If you have any sub-projects, do check their target settings as well; because apparently it can affect your top-level scheme selections.
In case you have a tests target too, make sure in its build settings that the Targeted Device Family is set to iPad as in your app's target. This might sound silly, but I have seen it before.
Then, as stated in the other answers, check the same option for any sub-project's target you may have included in your app's project.
Do a quick search of your target's build settings for "Universal" and change this to iPad if necessary. That's the ONLY reason why this would be happening. The only other thing I can suggest is restarting your computer. Sometimes Xcode has even given me Mac build options for iOS apps! If none of that works, well, if it ain't broke don't fix it, as in if you can build and test it in the iPad Simulator, what's the problem??
This might be occurring if you have initially started a universal app, and changed it at a later time without readjusting the settings. Just change the settings (click on the main project folder and update the settings) and there should be no problem. You can also simply create a new iPad app and copy all your files there. You can select the iPad device family to deploy your app on, and it should remember that setting every time you run it, so don't bother changing it or figuring out why it allows you to deploy on both devices; as long as it's working, keep on programming and testing.

How to keep iPhone app out of iPad store?

I have an iPhone app that I have started to turn into a universal app, however the process is not complete and I want to release an update to the iPhone version.
I know that you can specify device capabilities in the Info.plist file to restrict your app to certain devices, but how can I do this to prevent the unfinished universal version from appearing in the iPad store?
Is checking the LSRequiresiPhoneOS BOOL entry (in the Info.plist file) enough?
Thanks!
I'd consider restriction to iPhone very bad decision - the iPad is designed to run all iPhone apps in compatibilty mode (except for obvious things like telephony). So you will run into severe complaints.
If it is about the half-done enhancements for the iPad part, then just turn those features off and compile for iPhone (targeted device: only iPhone; maybe tweak the plist file, too).
You could use the UIRequiredDeviceCapabilities and specify that you require "telephony" in your info.plist. That would keep it off the iPad (and iPod touch too). See Device Support.
I found a setting under Project Settings -> Build that titled "Targeted Device Family." Maybe try setting this to just iPhone, not iPhone/iPad -- I think that should also help.