We've been working on getting our app to work properly with all the changes in iOS 7. Particularly the colors and layouts of things. But these changes are still in development.
The version of our app in the app store has none of these modifications. When testing locally, it works on iOS 6 fine and looks horrible on iOS 7. Yet, upon downloading it from the app store and installing it on an iOS 7 iPad, it seems to work just fine -- just as it used to in iOS 6 (!). We are wondering if there is some "compatibility flag" that the app store folks can switch, which means "not ready for iOS 7 -- use compatibility mode"? I'm not sure how else to explain this. Wondering if anyone else knows?
Our app:
http://appstore.com/cedarssuite
Summary: running via the simulator on iOS 7 or on a development iPad that has iOS 7, the app looks horrible. But downloading the approved app store version and running on iOS 7, it works just fine. Why?
A note: This is no longer correct. Since February 2014, Apple only accepts SDK7 builds
That's normal. all the old apps work fine on new iOS versions since those app. Base SDK set to that old version. in your case (iOS 6.0). They will run using old sdks. But, when you built with the new sdk (Base SDK 7.0) they look horrible as you said and some times they crash. because of layout changes and controls behaviours in the new iOS.
You are only asked to build with the new sdk to take advantage of the new features.
keeping your app. built with the old versions doesn't seem to have disadvantages other than new features. since apple still accept publishing apps with old sdk back to 4.3.
If you set the base SDK < 7, it will use the old iOS 6 style. Of course, that basically requires you compile with an old version of Xcode, and you can't use iOS 7 features, even when running on iOS 7.
Related
I have code which was initially developed on Xcode 3.2. It was then later update to become compatible with ios 7. But now when I run that code with Xcode 9 GM, it run alright on any iOS 10.x device.
But crash on iOS 11 device with following error detail:
Plus: When i open this project with Xcode 9 GM, Xcode doesn't show iPhone X simulator.
I think you have some old static libraries. iOS 11 supports only 64-bit libraries.
And also you can check Deployment target of your app. Maybe it's too low (I think ios7 deployment target is not supported now).
I think your app is running on 32-bit
As a reminder, new iOS apps and updates submitted to the App Store must support 64-bit. Support for 32-bit apps is not available in iOS 11 and all 32-bit apps previously installed on a user’s device will not launch
64-bit Apps on iOS 11
I don't know what is you exact scenario but possibilities of crash with payload could be following. Hope anyone of below all will work for you.
Please Try Following.
Disable "Enable guard Malloc" from diagnostics.
OR
You Can do Following:
delete all certificates from keychain.
Quit xcode
Delete xcode derivedData and delete all provison profiles
Restart mechine
Download latest certifcates and provison profile from Member Center
Click on certifcate i will install in keychain access.your key chain access should like this
OR
if you are using custom framworks, you need to put it inside the Embedded Binaries section located in the Xcode project under the tab Target / General.
Can I still upload an application that does not support iOS8+?
I currently have an app that we are releasing for iOS7 and 7.1, but it was rejected because it was not compatible for iOS8.
We are currently in the process of building the iOS8 version, but wanted to release something quickly.
You just need to build & submit it with XCode 6, iOS SDK 8.0.
They may reject if the app doesn't work with iOS 8. Do a quick test to make sure it doesn't crash, and all major functions are working fine.
No you can't. I'm not sure the exact date that apple made it mandatory to support iOS 8 but I do know it has passed so any new apps/updates submitted to the app store need to support iOS 8.
I have developed an ios4 app and now want to upgrade it to ios5. What are the sort of things i need to be aware of in terms of the switch being successful and not causing any pains? My most important question is that if i do push a new change to apple, what will ios4 users see when an upgrade is available that supports only ios5 and up? Can they just ignore that update and continue using the ios4 version they had installed? Will the appstore error out if they try to download the ios5 upgrade anyway? What exactly will happen?
Thanks
The biggest change in IOS 5.0 is the ARC project, so if you converted it to ARC it won't work with older devices like 3g (3gs can have ios 5.0 so it's safe).
Other than that, a user that has an iOS 5.0 device (or an upgraded one) would be able to get the update as soon as it is made available from apple store.
Keep in mind that lower end ios 5.0 devices might not have enough memory for the application though, it's the same that applies for ios 3 / ios 4 and sequentially ios 5/ios 6.0.
I'm using Flash Builder 4.5 with Flex SDK 4.5.1, and when trying to deploy an app to a 2nd gen iPod Touch with latest available iOS I get an error saying the app is not valid, and according to some Adobe sites, only 1st generation iPods aren't supported. The application works fine in an iPhone.
Should I change some setting, update to AIR SDK 3.1, or am I wrong thinking my app should work on this device despite Adobe's pages?
From what I managed to gather a week ago, Adobe dropped iPod Touch 2ng Gen support with AIR 2.6 (or even 2.5, I don't know for sure).
However, one may be able to compile a Flex Mobile project targetting an old AIR SDK version (or a more recent one if you can target Flash 10.1), and then use PFI (the old packager for iPhone before it was combined with ADT) so your application works with older iOS devices.
Sadly, my current project is forced to use ANE, so I guess I must forget about supporting old devices.
Ok, there have been some questions alluding to this before, and I've even read some second-hand reports of people successfully doing this, but so far I haven't found a concrete answer.
Basically, I want to build an application for simulator using iOS 4.x, and then run it on a 3.x simulator.
I have both SDKs installed, so all I need is the last mile of getting the app to show up in the 3.x simulator.
I tried just copying the app across from Library/Application Support/iPhone Simulator/4.2/Applications to Library/Application Support/iPhone Simulator/3.0/Applications but it doesn't show up when I load the 3.x simulator. There's a binary plist called applicationstate.plist, which I'm guessing keeps track of what apps are installed on the simulator, but I don't know what the binary format is so I'm kind of stuck at this point.
Has anyone managed to load a 4.x app onto a 3.x simulator? And if so, how did you do it?
Why are you even trying to do this? What are you trying to achieve? If what you really just want to do is ensure the app works on iOS 3.x then simply state that in xcode and don't worry about the actual simulator. The simulator could be running iOS 5.0 for all you should care as long as you have set 'iOS Deployment Target' to '3.0' in xcode's project settings. That will ensure the application is compatible with iOS 3.x and above. Obviously you then still need to ensure you're not calling methods from SDK 4.x when it will run on an iOS 3.x device. If that is what you're trying to test then what you're doing won't actually work. You should (as Apple advises) always grab hold of a real device running the target firmware version and test it on that. Grab an old iPod for example with iOS 3.x and try testing your app on that to ensure you haven't called iOS 4.x methods when running under an older firmware.
The answer is: No, you cannot build for 4.x simulator and run on a 3.1.x simulator or earlier due to fundamental changes in the way the simulator works.
The only way to test 3.x support is to either run it on a 3.x device (after setting min deployment target), or build on an older xcode that supports 3.x simulator (which isn't feasible if you use Xcode 4, except for iPad 3.2).
Note: Setting the deployment target does not test compatibility with older operating systems. It's the operating system that it actually RUNS on that matters (such as "iPhone 4.3 Simulator", "iPhone 4.0 Simulator", "iPad 3.2 Simulator", or an actual device).
Of course, now that 3.x users make up less than 10% of the total population, it's not really worth the trouble to support it anymore.