Are non-retina images required for purely iOS7 apps? [duplicate] - ios

The next update of my iPhone app will be targeted for iOS7 only. A couple of questions?
Does this mean I can delete all the non-retina images from my app?
If I have only retina images left do I still need to mark them #2x?
Does Apple keep older iOS versions of my app on the store so those running older versions of iOS who have bought or want to buy can still access it?
Any help would be most appreciated.

Yes you still need to have the #2x at the end. Yes you can drop all the non-retina images but could affect performance as even the newer devices will use some none-retina images but the main performance hit was to iPhone 3GS and below but as iOS 7 will not run on iPhone 3GS or below it isn't a requirement you'll just have to handle the performance issues. No Apple do not keep hold of older versions of your app on the app store, if you drop support for it then it is gone.

To answer the second part of your question YES, Apple does indeed store older versions for download.
For my app Parkable I created one for iOS5/6 then when 7 came about I specifically targeted it and dropped support for older iOS builds, now if you're not on 7+ you can still download the old version (instead of the old error telling the user to update their OS). This happens automatically as I recall, simply change your deployment target in both your project and target under the info tab.
Feel free to test if you have a pre-7 device (iPhone or iPad) and 7+ device https://itunes.apple.com/us/app/parkable/id577954935?mt=8&uo=4

Related

My app on iPad can't read photo after iOS9.3

My app only support iPhone device, it can run correctly under iOS9.2 on both iphone and iPad. But after updating to iOS9.3 and iOS9.3.1, my app on iPad can't read user's image. (Both ALAsset and PhAsset have the same problem. )
The image will return nil, and I ensure it's a bug, because it can read image correctly, when I change my support device to universal in Xcode.
Is it a bug for iOS? Or it becomes the rule? All app need to support universal ??
What's the fastest way to make myapp support iPad? I just want to use the scaling like the way iPhone app run on iPad.
I have also faced same kind of problem two days ago, I think you need to update your xcode. Update your xcode to the latest version 7.3
It worked in my case.
I met exactly the same problem and I fixed it.
I can't find any quick solution, and I decide to make my app into support universal.
This means support both iPad and iPhone.
The main efforts are the resolution issues. iPhone is 16:9(320x568 for logical resolution) and iPad is 4:3(768x1024 for logical resolution).
To speed up the modification and no change for my art images, so I put my content int the middle on 4:3 screen.
One good thing to support iPad, users can easily search on app store when he use iPad.

Submit iOS app for specific devices

I'm trying to build an app and tried to make it only support iPhone6, iPhone6 Plus but when submitted the app to App Store. They rejected it because it was crashing on iPad. How can I remove the iPad support and the other devices as well. In Xcode in Deployment Info, [Devices] is set to [iPhone].
EDIT:
My app uses M8 chip that's why I want to limit it to iPhone6, iPhone6 Plus only. As for the iPad I can't offer support it now because I can't maintain testing it and keep updating its design every time I update my app.
EDIT2:
In Xcode in Deployment Info, [Deployment Target] is set to [8.1].
You have to change the Targeted device family. Select the project, then info-->Deployment--->Targeted device family to iPhone only and you have to do the same thing in targets. After that your app will be only for iPhone.
Good Luck!
There is no way yet to set app only for iPhone 6/6+, however you can prevent running it on iPad by setting the correct title. You can't prevent running your own app on iPhone 5 till you have allowed it to run on iPhone 6/6+. iPhone, iPad or both, no versions.
I don't think you can choose which kinds of devices you are supporting for. But, you can choose minimum iOS version that your app supports in the Deployment Target. I think your solution will be changing the Deployment Target to iOS 8.0 and you are good to go.
For your problem of rejection, you can change your supported iDevice to support iPhone only from your app target in XCode. Then on the General tab, you can change it from the Deployment Target portion.

Dropping iPhone 4S Support

The iPhone 4S is the oldest iPhone still to be supported by Apple, which as such runs iOS 8, a requirement of my own app.
However, as hard as I am trying, my app experience is being worsened due to the fact I keep having to adapt to the tiny (y comparison) screen size of the iPhone 4S.
Is it possible in any way to drop support for a device? Or as it runs iOS 8, do I have no way of doing so? Is it a case of, if I release it on iOS 8 for iPhone, it WILL be available for iPhone 4S owners?
You can't drop support for iPhone 4S just yet, however you can disable some features when your app runs on certain undesired devices. Just make sure you state that in your app's description.
This follows the lead of GarageBand for iOS version 2.1 in which some features are only available for newer devices.
PS: remember to also quote this fact in the reviewer's notes section.

"You must provide a screenshot for 5.5-inch Retina display, because your app binary supports 5.5-inch Retina displays" while building in Xcode 5.1

I've updated an old app with a minor bug fix. The app was compiled using Xcode 5.1.
(No way to use assets catalog or to add iPhone 6 and 6 Plus images.)
But still when I try to submit it to review I'm getting this error:
You must provide a screenshot for 4.7-inch Retina display, because
your app binary supports 4.7-inch Retina displays.
You must provide a
screenshot for 5.5-inch Retina display, because your app binary
supports 5.5-inch Retina displays.
The easiest fix would be to upload 4.7 & 5.5 pics which is fine but I'm more worried about the "because your app binary supports 4.7-inch Retina displays" part.
Although it feels like a bug in iTunes connect, any one found a workaround for this?
TL;DR
We've had the same issue yesterday although our app did not state support or optimization for iPhone 6(or +).
Using Xcode 6.1 to build the IPA, we've simply re-scaled relevant images, and had no further issues submitting the app.
Update
Some developers are not encountering the issue with their app's submission, while having no 4.7/5.5 inch scaled screenshots, meaning there's a possible flag in the binary which enforces this limitation.
The longer version
Apple now demands screenshots for the new screen sizes, without being dependent on the actual app binary.
As per the Developer portal, if an app states it supports iPhone 6, it must provide at least one properly* scaled image ( * proper size is listed in the link above).
All current releases to the app store should support the latest device, including iPhone 6 and the 6+, by default, therefore the error message is terrible. There is no actual relation to the binary. Just a new iTunes Connect limitation.
This is a recently added limitation by apple as our previous release to the App Store using Xcode 6.0 did not require us to add these new scaled images.
I had this issue too and I discovered that it was because I had inadvertently set the "Launch Screen File" (General Project Settings) to the name of Main.storyboard. When I cleared that out I was able to Submit for Review successfully.

IOS-Simulator in Xcode does not show iPhone -like but regular window

It used to work properly, with 100% as well as 50%. Then I did not use the simulator for some time but only the console, having moved the simulator almost out of site. Now I need it but realize that instead of an iPhone surface just a regular window is shown, like in this thread:
XCode iPhone simulator does not look like an iPhone
I read lots of proposal I found on the web to this problem and followed the advices.
So I changed the size to 100%, tried different iPhone devices. And finally I deleted the Xcode application from the application folder and removed all remaining items by putting in the order
sudo /Library/uninstall-devtools --mode=all
into the terminal.
I downloaded Xcode again.
The problem is still there.
The very strange thing about it: It did work properly when I installed Xcode for the first time, about 6 weeks ago.
As far as I know it depends on the deployment target whether the simulator shows the iPhone frame or not. I think if you set iOS 7 as the target you won't be able to see the iPhone image around your app screen. (For example, I have never seen an iPhone image in the simulator for a 4'' device.)
Try changing the deployment target and play around with different devices under Hardware / Device in the simulator.
Edit:
Here is a more detailed answer.
It's one of the replies to the question that you linked.
You better select your simulator and set Hardware -> Device -> iPhone
Note 1: If you want the simulator should looks like iPhone do not select the retina simulator.
Note 2: You must check the target version of you app in xcode it must be below 7.0
Note 3: Keep the scale of simulator always 100%.
Are you sure the current project you're working on is an iOS and not an OS X project? You can verify this be looking at the project's folder. If the app ist for OS X, there is most likely a .xib file. If it's a iOS project, there should be a storyboard file.
As the OS X apps use windows, like the one you described, this could be a hint.
I have found the solution for the problem I had (and other users as well):
At PREFERENCES / DOWNLOADS older versions of the iOS simulator are available. While at the moment the current version is 7.0 (beginning January 2014), versions 6.0 and 6.1 are being offered for download.
After downloading I could chose more devices than with version 7.0. Now also the non-Retina iPhone is available.
As a result, the iPhone surface is being displayed when set to 100% (at WINDOW - SIZE).
Thanks to everyone helping!

Resources