3 ms·
This is Apple themselves recognizing that hardware that is too old to run iOS7 is still useful.
by melange 13y ago
This is Apple themselves recognizing that hardware that is too old to run iOS7 is still useful.
- pdpi 13y agoNah, this is because of the new 64 processors. There's still no mechanism that allows for 64 bit iOS7/32 bit iOS6 fat binaries, it's either 64 bits iOS7/32 bits iOS7, or iOS 6 only. Probably the first time that apps compiled for the latest and greatest can't run on old phones at all.
- untog 13y agoPretty sure it has zero to do with 64-bit processors. iOS7 is still going to be running on old 32-bit chips.
- pdpi 13y agoYes, which is precisely why you need 64-bit/32-bit fat binaries. Problem is that the current SDK can only generate 64-bit/32-bit fat binaries for iOS7 alone.
- mikeash 13y agoYou don't "need" fat binaries. You can just build for 32-bit and be happy. 64-bit is purely optional.
- untog 13y agoYes, which is precisely why you need 64-bit/32-bit fat binaries. I don't recall OSX refusing to run 32-bit binaries when it allowed 64bit computing.
- pdpi 13y agoYou don't need the fat binary to make 32-bit work in 64-bit machines. You need it to make it so that you can take advantage of the 64-bit machine with a build that still works in a 32-bit machine.
- ianstallings 13y agoAlthough you can do both, either 32-bit only or a combined, the preferred way to do it is as you say, a combined binary. I imagine that the differences will be fairly small because of the shared types and the resource sizes not changing. I'll have to experiment and see the results. Just a note on how to build for 32 bit and still target IOS: You have to set the architecture for armv7, armv7s and then set your deployment target to 7. I have yet to deploy an app doing this so your mileage may vary.
- vvhn 13y agowhy is it "64 bit iOS7/32 bit iOS6" ? iOS 7 is 64-bit only on the iPhone 5S. iPhone 5S will run 64 bit iOS 7 and can run both 32 bit and 64 bit applications. iPhone 5C, iPhone 5, iPhone 4S, iPhone 4, iPad 4, iPad 3 (or whatever they are called), iPad 2 and the iPad mini all will run 32 bit iOS 7 (kernel, libraries, drivers and the Applications themselves).
- ksherlock 13y agoWhen you build your iOS app, you specify the minimum system version. If you use iOS 6 (or 5) as a minimum, it will only build the 32-bit binary. If you specify iOS 7 as the minimum, it will build a fat 32-bit/64-bit binary.
- kenrikm 13y agoAll my apps have compiled without an issue into 64bit on XCode 5 GM. Now that's not the actual hardware, however I don't anticipate any 64Bit transition related issues.
- ianstallings 13y agoYou shouldn't see any issues until you hit the size limits of the data types and/or have related alignment issues. You'll notice these types here: https://developer.apple.com/library/mac/documentation/Darwin/Conceptual/64bitPorting/transition/transition.html#//apple_ref/doc/uid/TP40001064-CH207-TPXREF101 https://developer.apple.com/library/mac/documentation/Darwin...
- mikeash 13y agoThat's badly wrong. It's true that you currently have to choose between 64-bit and supporting older OSes. But apps built for older OSes still run on the iPhone 5S. There's no "iOS 6 only".