This article is published on the public account of UC RESEARCH and development effectiveness.

The introduction

Apple usually updates iOS once a year, and it will update all the relevant development tools and systems, which is very painful. Most of the time, we do not want to upgrade XCode, let alone upgrade the system, especially in the beta version, and install two Xcodes at the same time, which is very disgusting. The good news for Mac OS is that in most cases the new version of XCode will support the current major versions of the system, so if you’re not a Mac developer, you don’t have to bother with the Mac beta. There has always been a way to use any version of XCode to debug iOS that is not supported by the current version of XCode.

How to do?

Debug new iOS using old XCode

If your Mac is plugged into your iPhone and XCode works, just open this directory

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport

Copy the DeviceSupport that you need and do not have in the corresponding system. Then restart XCode, and wait for XCode to generate the symbol table of the corresponding system, you can start debugging.

The DeviceSupport file for iOS can be found on Github

If XCode doesn’t recognize your machine

You can download the new XCode, after decompression, in XCode. The app/Contents/Resources/Packages can be found under the MobileDevice. PKG, installed directly.

What is the DeviceSupport?

Can see simple DeviceSupport each system version of the folder, only have two files, DeveloperDiskImage. DMG and DeveloperDiskImage DMG. Signature. XCode connection to fit, It will automatically mount the corresponding DeviceSupport. If you want to manually mount it, you can also use ideviceImagemounter to specify the corresponding DeviceSupport to mount it. The things in DeviceSupport have very large permissions. The iPhone simply refused to mount. Historical iOS jailbreak tools have also taken advantage of DeveloperDiskImage vulnerabilities. So what’s inside DeviceSupport? If you mount developerDiskImage.dmg on your Mac, you’ll see something like this inside


What is MobileDevice. PKG?

Using Apple’s PackageMaker to view the PKG, you can see apple’s updated drivers and associated dependencies

Installing PKG from unknown source under Mac is very dangerous..

About UC r&d effectiveness

A team of senior experts in the field of research and testing, relying on UC more than ten years of mobile technology precipitation, to create a professional research and development performance platform. Serve Alibaba 100+ products, reduce research and testing costs for the team, improve delivery efficiency, help products improve user experience, and make product delivery better, faster and more secure.