Images.xcassets and IOS 5 - ios

My app is almost complete and i'm bug testing and fixing.
Now this is the first time i have used images xcassets and until now it worked.
When i'm testing on the simulator all icons look great, when testing on my test devices iPhone 5, iPad mini, iPhone 4 iOS 6 and iPad 2 iOS 6 everything looks great.
But when i test on the iPad 1 with IOS 5 the icon is blurry, but the ipad 2 uses the same icon set.
So i changed that icon to red (others are bleu) and on IOS 6 the icon turns red.
The iPad 1 does not change the icon so its using a different icon set.
How do i make the iPad 1 on IOS 5 use the iPad App IOS 5,6 72pt icon?
info about the icon:
1x size = 72X72
2X size = 144X144
Tried the naming convention.
(I removed the icon in the center, because the app is not yet released)
___________________________________________UPDATE___________________________________________________
After a while i stopped using the xcassets for my app. It's simply IOS 5 that is giving the problem.
It seems that Apple just want's us to stop with IOS 5, xcode 5 and mavericks just makes it too big of a deal to make iOS 5 apps and test them. I'm expecting to stop iOS 5 development next year.

I have the same problem with the iPad 1 and iOS 5.
But I found an unsightly workaround for this problem. Build your project for an iOS device and not for the simulator. Go to the .app file in the finder and open the package content (right click).
As you can see, there are the AppIcons for the iPad named "filename"~ipad.png and (if available) the AppIcons for the iPhone named "filename".png.
Remove the "~ipad" string from the image filenames and build your project again - should work no.
If your target also supports the iPhone, this solution won't work I think.
The same problem also comes up, if you set up a complete new project with XCode 5 and deployment target iOS 5 on the iPad. I've already reported this to apple.

Related

xcode 6.1 not loading proper iPhone 6 and 6+ simulator

I made my entire app in Xcode 5.1.1. Saturday I downloaded Xcode 6.1 to make my app on iPhone 6 and 6+. I already placed the proper launch images and app icons for iPhone 6 and 6+. (For this app i'm not using size classes because Auto Layout doesn't work for me in this app.) I changed some of my code to fit iPhone 6 and 6+ but the simulator clearly isn't playing iPhone 6 and 6+ because none of the UIImageViews moved according to where I placed them with the code. It's still playing the zoomed in version of iPhone 5. How do I load the iPhone 6 and 6+ simulators according to my code and not the zoomed in version of iPhone 5?
I was told to place launch images for iPhone 6 and 6+ and it'd work, but it didn't.
here's what worked for me:
From the xcode pull down menus, Xcode > Open Developer Tool > iOS Simulator (if you get a pop up error just dismiss it)
Once in the Simulator go to Hardware > Device > Manage Devices.
Delete everything listed under simulator.
Reboot your machine.
After that navigate back to Manage Devices in the simulator and click the plus to add back your simulators. Then the iOS 8 simulators will show up. Hope that also helps you.
The old launch image asset doesn't provide the necessary support for iphone 6/6+. Remove your old LaunchImage item in your images.xcassets and create a new one. There will be additional options for adding the proper launch images for iphone 6/6+.

Xcode 6 App Stops AutoSizing When Launch Images Added

I began a calculator app for the iPhone 5/5s using xCode v5 with storyboard. I've since upgraded to xCode 6 and have nearly completed the app. I tested the app on my iPhone 5, and on the iPhone 6 and 6 plus using the xCode simulators. The app fills the screen of my iPhone 5 and autoscales to completely fill the simulator screens for the 6 and 6 plus. Exactly what I wanted! However, when I added launch images to my project, the app no longer autoscales when running on the 6 and 6 plus simulators. I've followed Apple's recommendations for launch image sizes, and have tried dragging the launch images into my project and using an asset catalog. Both stop the app from autoscaling. What I'm currently seeing is a launch image that completely fills the screen of the iPhone 5/6/6 plus for approximately 1 second. Then the calculator appears, completely filling the screen of my iPhone 5, but remains that same size, filling only a portion of the iPhone 6 and 6 plus screens. I want the calculator app to completely fill the screens when running on the iPhone 5, 6 and 6 plus. Why does autoscaling stop when launch images are added and how do I continue to enable autoscaling after the launch images are added to my project? Thanks in advance for guidance.
Turkey day morning: I solved my problem! With great skepticism, I tried the solution linked below and it solved my problem. I added launch images (drag and drop). The calculator displays correctly on my iPhone 5, and also displays correctly when running on the iPhone 6 and 6 plus simulators. Don't understand why the linked solution below works, so it's something I'll just have to accept. My thanks to Matt Palmer for posting this on his blog:
http://matthewpalmer.net/blog/2014/09/10/iphone-6-plus-launch-image-adaptive-mode/
using a LaunchScreen.xib as LaunchScreen is 'cleaner', instead of generating 6 different images for a LaunchScreen Asset in the Media Catalog.
Don't forget to check 'Use as Launch Screen'
You should try this.
Disable Auto Layout and Size Classes.
and do this for all subViews in you XIB

How the apps already build for iPhone 4 and 5 will shown in iPhone 6 and 6 plus

As the apple has announced the two more screen sizes iPhone 6 and 6 plus. What will happen to apps already in app store build for iPhone 4 and 5. Will they be stretched or their layout be distorted in these new phones?
Please help me because I have recently submitted two of my apps in app store waiting for review. So should I change them or they will work fine. As I haven't use Auto layout in these apps.
Thanks.
If you have uploaded apps from XCode 5.x apple will take care and they will be scaled and stretched to fit them in iPhone and iPhone 6. If you want to take advantage of new devices you will have to use XCode 6 and add launch images on your project with these steps.
If you have not added launch images for iPhone 6 and 6 plus (and do not have Launch Screen File for iOS 8) , than your apps will be streached to fit in new devices , once you add them app will not be streached and you will have to manage it.
So with Xcode 5.x , you can be absoulatly sure that iOS will take care and streach your app to look just like thy look in iPhone 5 or 5S.
As Bhumit said, you need to add launch images at the new sizes if you want to have your apps scale properly for iPhone 6.
A corollary is that they will not scale in the simulator until you add those launch images. You can just add some default ones to test - I recommend grabbing David Smith's blanks.
If you do not test in the simulator with launch images, you will get a false impression of your app working because the default scaling kicks in. (If you are happy to leave it with that default scaling, fine for now.)
According to the latest version of Xcode 6 , the apps running in the previous iPhone environments of 5 and 4s will work as they are in iOS 8 i.e iPhone 6 , 6+. I suggest you download Xcode 6 from the Apple Developer Site and run your apps in the iPhone 6 and 6+ and see for yourself.
I have also found the apple link for this problem. Under heading 'Supporting New Screen Sizes and Scales'. You can check out above link for more such information.

Launch Image in asset catalog only has spaces for 2x and R4

I'm starting the design phase of an app and this is the first app I've ever built. The app is currently using iOS SDK 7.1 and has a Deployment Target of 7.0
Even after all of the research I have done so far here on stackoverflow and reading the iOS 7 design guidelines, I am still having trouble figuring this out.
When I go to my asset catalog, and click on LaunchImage, it only has two slots. One for 2x and one for R4. However, a lot of the screenshots I keep seeing online have more slots than that.
If I click on the + symbol and select New Launch Image, then this new LaunchImage has a ton of slots for iPhone and iPad, even for iOS 5, 6, and 7.
Am I correct in thinking that I am only supposed to use the default LaunchImage with slots for 2x and R4, because my app has a deployment target of iOS 7.0 and the only iPhone models that iOS 7 supports have retina displays?
EDIT: AppIcon in the asset catalog is similar. It only has 3 slots, and all of them have 2x underneath them.
The AppIcon and LaunchImage assets in asset catalog respond to your project configuration.
If you have iOS SDK 7.1 and deployment target of 7.0, you do not need any iOS 6 resources, because your project will not run on iOS 6 operating system. Why would you waste application size, when resources are not used ever?
Same goes for iPhone and iPad. You probably selected your project as iPhone only, so you do not need iPad resources.
If you selected deployment target 7.0, that means that the device needs at least iOS 7.0 installed for your application to run. Because iOS 7 only runs on Retina phones (iPhone 4 and newer), you do not need resources for anything else except Retina (which have the #2x in the name).
You do need resources for normal devices, if you are running on the iPad, because iPad 2 and iPad Mini do not have Retina.
Hope this explains it.

iOS version specific Default.png?

Now that iOS 6 has come out and tweaked some control appearances, my Default.png family no longer matches the updated appearances.
If I update the appearance for iOS 6, however, the Default.png family will no longer match iOS 5.
Is there a way to provide different launch images for iOS 5 vs iOS 6?
Adding Default-568h#2x.png does not fix this problem; the problem is that Default.png and Default#2x.png must either show iOS 5 or iOS 6 screens, and they do not look the same.
I noticed in one of my apps that there was a small difference in position of one of the standard control types (captured in my launch image) between iOS 5 and iOS 6. I chose to use the new iOS 6 screenshot as the launch image, even though that causes a slight visual shift when launched on iOS 5. Virtually everybody will upgrade, so I'm not really concerned about the shift only appearing on iOS 5.
iOS 6's launch image is named "Default-568h#2x.png"

Resources