Hopper to disassemble the UIKit.framework from Xcode - xcode9

I use Hopper Disassembler to disassemble the UIKit.framework. I usually select the binary from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/Frameworks/UIKit.framework/UIKit but since I'm using Xcode 9 and later, I'm unable to find the binary to do the disassembling. The Xcode 8 UIKit.framework has the binary but the Xcode 9 UIKit.framework has only a UIKit.tbd file.
How can I achieve the disassemble in recent Xcodes?

Apple split up UIKit. The framework you are looking for is in
../PrivateFrameworks/UIKitCore.framework
Xcode 10 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore
Xcode 11, 12, 13 & 14
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/PrivateFrameworks/UIKitCore.framework/UIKitCore

Related

What happen if I remain to use old Xcode version?

I'm trying to understand, what will happen if one remains to use older Xcode version for developing, building and deploying.
I understand that each new Xcode version (...10,11,12) comes with new SDK support, improvements and features. I also have a great example of, we'll need the latest Xcode 12 to deploy our app to iOS 14 and above, since it won't work for Xcode 11 and below.
[Scenario ques]
However, what are the possible issues if one decided to continue in building and deploying their app with Xcode 11(SDK iOS13)?
Aside from not being able to test the app in a proper iOS 14 environment and risking of having bugs. Could the SDK version in Xcode11 and Xcode12 make any difference to the app?
You can certainly go on playing with Xcode 11 if that is what you feel like doing. But that's all you will be doing - playing. You won't be able to do anything with an app that you create that way. In particular, without Xcode 12, you cannot run the app on a device with iOS 14 on it, and you cannot submit the app to the App Store.
So when you say
use older Xcode version for developing, building and deploying
...you can just delete the word "deploying"; you won't be doing that (if the word "deploying" means what it usually means).
(And you cannot easily develop an app partly with Xcode 12 and partly with Xcode 11, as some of the things you do in Xcode 12 can make the project incompatible with Xcode 11.)

Can I write Apps in Swift 1 (For iOS 7 and 8) using Xcode 7?

Can I write Apps in Swift 1 (For iOS 7 and 8) using Xcode 7? Or will compiled Swift 2 run on iOS 7-9?
No, you can not.
Each Version of Xcode includes only one version of the Swift Compiler. Using a newer Xcode Version will force you to adopt the new Swift Syntax.
There is an automatic converter available under Edit -> Convert -> To Latest Swift Syntax.
The iOS Version requirements are not affected by the use of Swift 2 (or Xcode 7). Apps built with Xcode 7 and written in Swift 2 can run on iOS 7 (same conditions/restrictions as before).
There will be errors if you attempt to run swift 1 in xcode 7, and yes, swift 2 will run on IOS 7-9

Can Xcode 6 GM & Xcode 5.1.1 coexist? (I know the beta could but this app name is the same)

I tried to specify in the title so people didn't think i was a dullard, I've used every version of Xcode 6 Beta alongside Xcode 5.1.1, but as I have only one dev machine I don't want to install Xcode 6 if it will overwrite Xcode 5 entirely.
I also realize I can download/reinstall Xcode 5 but I'm swamped at work and can't afford 30 minutes of downtime even, thanks for the help all!
Foolishly I let App Store update Xcode 5.1 and it upgraded me to 6.
Renamed /Applications/Xcode to Xcode 6
Downloaded Xcode 5.1 from https://developer.apple.com/downloads/index.action?name=Xcode%205
Installed Xcode 5 from the DMG into /Applications
Start Xcode 5, rebuild my project and ran my app on my iOS 6.1 device OK.
Downloaded iOS6.1 Simulator (Prefences>Downloads)
Ran my app in the iOS6.1 Simulator OK.
Started Xcode 6, rebuild my project for my iOS6.1 device - reported signing error.
In Xcode 6, rebuild my project for iPhone 4s 7.1 - could not boot simulator
Conclusion:
I got Xcode 5 back doing what I needed but will need to do more work to play with Xcode 6.
So that people don't need to read comments to find the accepted answer:
Yes, MANY versions of Xcode can exist at the same time, in order to prevent overwriting find Xcode in the Finder (CMD+Clicking is one quick method) and rename (simply hit the return key while the app is highlighted) as you see fit. On my machine I have Xcode 5.1.1, Xcode 6.1 and usually whatever Beta Apple has available if I'm having any issues with an app.

Is there way to enable iOS 6 design style for iOS 8?

There is UIUseLegacyUI
But it does nothing with apps which started under iOS 8.
Is there other way to enable great iOS 6 design style?
As i understand there are no way to get iOS 6 design style if compiled with last version of Xcode.
For teaching proposal i describe one unrecommended way - fix build system:
install Xcode 5.1.1
install simulator 6.1 from Xcode 5.1.1 settings
download Xcode 4.6.3
copy iPhoneOS6.1.sdk from xcode 4.6.3 to xcode 5.1.1
rename iPhoneOS7.1.sdk to iPhoneOS7.1.sdk.disabled in the Xcode 5.1.1
use fixed Xcode 5.1.1 to compile code
Now app have look with great iOS 6 design.
I'm not sure about it's possible but it could be another way with hack of some framework functions which responsible for LegacyUI.
Use next links if you want to dig this way:
https://stackoverflow.com/a/18220176/751932
https://github.com/facebook/fishhook

xcode 5 GM is mercilessly hanging all the time

I don't know what is going on, but I have downloaded xcode 5 gm and it is worse than dp 6.
It hangs when creating a brand new project. It hangs when I rename a class, and when trying to set up a local git repository. It is a blank project master/detail template.
Does anyone have any idea what to do? I have already deleted xcode 5 by dragging the app to the trash.
Is there anything I can do about this? I assume that I will want to remove all traces of xcode from my computer and retry again? I'm on the latest mountain lion os.
I can only see Xcode 5 DP 6 available from the Apple Developer website, but I can see chatter about it in the forums. I'm guessing it's been pulled.
So the solution would be to delete Xcode 5 GM and continue using DP 6.
The reason I can only see Xcode 5 DP 6 is the fact that I didn't look on the Mac Developer Portal!
Xcode 5 GM (now released) is for iOS 7 development and comes with the OSX 10.8 SDK.
Xcode 5 DP 6 is for OSX 10.9 development and I am assuming this will become Xcode 5.1 when Mavericks (OSX 10.9) is released.
Therefore my above solution to remove Xcode 5 GM is wrong.

Resources