I am using XCode 5.
I am properly setting up all app-icons in proper size and resolution.
When I run the app in iPhone Simulator, the app-icon displays correctly. But, when I change the simulator from iPhone to iPad, then the app-icons does not appear.
What could be the root cause of issue ?
Few Tests
Make sure you have set the icons for iPad as well.
If you have, you can probably stop the project, quit the simulator manually, clean, build and run the project by selecting iPad Simulator.
Make sure you have all the icons set -ie- iPhone and iPad specific. Following is the checklist for the same:
App Icons
Splash Screens
Hope this helps !!!
Icon size for iphone and ipad differs. Check here for apple's documentation
Click on project name.On the right side click General Tab and check whether you have added icons of correct resolution or not.
Icons for Universal Apps
Universal applications use the following icons. Items marked with "Required" must be included.
In addition to the above icons, universal applications with a deployment target of iOS 6.1 or earlier use the following icons. Items marked with "Required" must be included if the application's deployment target is iOS 6.1 or earlier.
more detail https://developer.apple.com/LIBRARY/IOS/qa/qa1686/_index.html
Related
I have an iPhone app and I am trying to run it on iPad. But when I run I see black bars on all the sides as shown below:
I am using a LaunchScreen.storyboard file. The LaunchScreen.storyboard is set as launch screen (checkmark is checked). In the target settings I have the following settings:
Any ideas?
Screenshot:
Edit: That apple tester got it wrong. your app is good !!!
I created a new project that only support an iphone and ran it on the ipad simulator. I calculated the ratio of the screen inside it is equal to 0.69. the same as the ratio of the screen inside the screen shot sent to you by apple.
Apple tester got it wrong. looks like that is the new behaviour on the
iOS 10 and that apple test does not know it. reply to them with this
they should accept your app without resubmitting new binary.
Original Answer:
Deleting DerivedData, Clean and remove app from simultator should solve the problem. Or maybe you didn't support iPad:
Its because of app is only for iphone, thats why if you are run in iPad it shows actually iphone's view, Enable for ipad and then check.
The Apple tester did not likely get it wrong. Check the following:
Go to your app's target. In the General tab, look at the Deployment section. What is listed for Devices? If it says Universal, change it to iPhone.
Go to your info.plist. Remove any keys pertaining to the iPad. (Supported interface orientations (iPad) may be there, for example.)
Now, your app should run correctly on an iPad, even though it was made for iPhone only.
)
Hello all :-)
I want to release an iPhone/iPod Touch only app. However, I know iPad users can still download the app from the app store, which is fine by me. I was simulating my app on simulator to see how it would look like on an iPad. When I simulated it, the app looked terrible: the layout was not the same as the iPhone version, some labels were colliding and buttons were "cut" out of the screen.
I want iPad users to have the same view as an iPhone. I believe a 1x/2x button would appear on the screen in that case. How can I do that?
Any help/advice would be really appreciated!
Thank you :-)
When you upload your app to the App Store it will also allow iPad users to download the iPhone version of the app. This will have the 1x/2x button you are looking for.
However if you test your project on the iPad simulator before you upload the app, it will not be the same iPhone version of the app that the iPad users will see. Instead the simulator will run an actual iPad version of the app which is not what your looking for.
In your project settings, set your target device to iPhone only. Upload the app. When iPad users download the app they will get the iPhone only version with the 1x/2x button for the iPad.
In your project settings, make sure the "Devices" settings is "Universal" (this is under "Deployment Info"). If it was not before, you may have to make some layout adjustments.
Use Autolayout for fixing the design issues
in storyboard right pane -> attribute inspector -> simulated metrics-> select inferred in size for all controllers
You should be seeing this in the simulator (note the letterboxing on all sides):
And your build settings should show 1 as the target device family:
If not, you are iPad-native and that's the source of the trouble.
I have been pulling my hairs for the past few days. It appears I am the first one who has experienced this problem because I could not find anything that is even close through Internet searches. The problem that I have experienced is the following:
Icon for retina iPad of iOS 6.1 and prior (size 144x144) and Icon for iPhone of iOS 7 (size 120x120) are not installed correctly. If I use asset catalog, when installing my app on iPad (retina) with iOS 5, the iPhone icon (120x120) is installed. iPhone with iOS 7 works fine using the same icon (120x120). If I don't use asset catalog, but instead add the icons to the info.plist (CFBundleIcons array), it goes the other way around. iPad icon is fine this time (144x144 icon was installed). But iPhone uses the iPad icon (144x144).
What's more strange is that this is not a problem with one of my two targets. It is only a problem for the second target. The second target was created by duplicating the first one. I have compared the info and settings of the two projects, but did not see any difference (other than bundle identifiers and product names etc., of course).
I've upgraded my Xcode to 5.0.2 and that makes no difference.
I'd appreciate it if anybody could shed some light on this.
Update #1: I tried to use the icons from the first target and the problem is still there. So it's not related the icon png files. It's target related. Also tried to clean the project, delete the app from the devices to no avail.
Update #2: When I use plist instead of asset catalog, what's (incorrectly) installed on my iPhone (iOS 7) is not the 144x144 icon. It is 144x144 icon for iOS 6.1 and prior. It's still an incorrect icon.
Update #3: This is actually easy to reproduce. I created a cocos2d project from scratch this time (the Hello World project). Tried to add all the icons using the two ways introduced in the following technical article from Apple:
https://developer.apple.com/library/ios/qa/qa1686/_index.html
When using the asset catalog, 120x120 icon was installed on my iPad (retina) with iOS 5.
When using the project editor, 152x152 icon was installed on my iPad (retina) with iOS 5.
In both cases, what is supposed to be installed is the 144x144 icon. Will probably contact Apple on Monday.
I filed a tech-support case with Apple and confirmed that this is a known issue (as of 02/10/14). I open a bug report with Apple. This issue is not noticeable for most people because icons are all resized from one design. Even though the wrong icon is installed, it is barely noticeable (the icon is still resized to to the correct size on the device automatically). This is noticeable when you want to use different icon design on different iOS. For example, the icon curvature for iOS 7 is different. There is no workaround according to the Apple support.
Hope this is useful for anyone who runs into the same issue.
Regards,
Ryan
Make sure you don't have the older icons named with the an older version of Xcode's default icon names (Icon.png, Icon#2x.png, Icon-72.png). I have found that when these names exist, they are used even if other icon names are specified.
Try cleaning the project. Command-Shift-K , that usually fixes such issues
Ever since i upgraded to xcode5, the iOS simulator only displays as an iPad even though the project is targeted for iPhone. The Run button also shows it's set to iPhone and I've tried switching between the different iPhone types in simulator. But no matter what, my iPhone project opens as an iPad simulation. Anybody encounter this problem or know how to fix it?
I believe I've downloaded all the relevant libraries and tools from apple as well. I'll double check that now but I'm pretty sure I have all the accessory downloads up to date.
Edit
I found the answer! Due to the changes with resolution of the retina display, the simulator was loading without the bezel. Turns out the best way to solve this problem without a large screen or retina display is to deploy target in navigator=>General menu=> to iOS 6.1 and make sure iOS simulator=>Hardware=>Devices=>is set to iOS 6.1 as well.
Have you tried changing the simulator device? Go to iOS Simulaotr.app -> hardware -> devices?
Download the extra components/simulators..
If you find your iOS simulator is showing a large iPad like display since upgrading, it's because of the change in resolution for the retina display. In order to view the simulator as a regular looking iPhone follow these steps:
Deploy your project target for iOS 6.1 or earlier. In the navigator menu (far left), top folder (your project folder), click it. Make sure "General" is selected in the menu in the centre of the screen. In 'deployment Info' set it to iOS 6.1 and 'devices' to iPhone.
Open iOS simulator: Click 'XCODE' in the top left of the screen => Open Developer Tools => iOS Simulator.
In iOS simulator, go to => Hardware => Devices => select iPhone => iOS 6.1. Make sure not to select any of the hardware devices that are listed as retina displays, thats the major key.
Finally, make sure the deployment next to the run button is also showing 'iPhone iOS 6.1' AND NOT 'iPhone Retina...'
And enjoy seeing the iPhone simulator properly again! :)
I have a MonoTouch project from a year ago which was created as a universal app (but only programmed like a iPhone app. Just in case...) When I uploaded it on an iPad it was shown in this iPhone simulator.
I changed the Target from Universal to iPhone/iPod in the IPhone Application Settings in MonoDevelop to achieve this. This seems not to work anymore.
Now, when I updated to the latest verion of iOS and MonoTouch the iPad stays white nothing is shown. Which is traceable because i have no code in the AppDelegateIPad.
So my current project exists of the files:
AppDelegateIPad.cs
AppDelegateIPhone.cs
MainWindowIPad.xib
MainWindowIPad.xib.designer.cs
MainWindowIPhone.xib
MainWindowIPhone.xib.designer.cs
Main.cs
MainWindowIPhone.xib contains a NavigationController which will be added with window.AddSubview in AppDelegateIPhone.cs
What is the best, easiest way to convert the project to a iPhone only project. So it runs in the iPhone simulator on iPad?
Thanks in advance!
You can still keep it as a universal app and target iPhone or iPad only. I'm doing this too.
In Monodevelop go to Project Settings -> iPhone Application
In the "Devices" drop down select "iPhone".
In the section "iPhone Deployment Info" you will have to select the correct main interface. Pick your MainWindowIPhone.xib
That should be all.
If you really want to convert it and remove the code for iPad, follow the steps above, then start removing all iPad related stuff.
One more side note: you should not use window.AddSubview(rootController.View) anymore. Instead use window.RootViewController = rootController;