At the end of May 2014, I wrote a detailed article on how to test applications on iOS7 and Xcode 5.1.1, but as recently as two months ago the iPhone 6 and iPhone 6 Plus were introduced with the new iOS 8 operating system and Apple changed something in the code and the old tweak no longer works. I know that some people are interested in trying to write an application for iOS, purely for educational purposes, but Apple does not want to pay 99USD to Apple for “curiosity”. Do not despair, not everything is so scary, moreover, now everything is much simpler - you no longer need to create certificates and compile ldid for debugging.

So, the software versions that I used:
- OS X Mavericks 10.9.5;
- Xcode 6.1 (For Xcode 6.4, you need to do a couple of extra gestures);
- iOS 8.1 iPhone 6 Plus.
')
What is required for "curiosity"? Just:
- Check in our iOS device
- Prepare iOS for installing self-signed applications
- Connect iOS to Xcode and set up a device for development
- Configure Xcode to use a self-signed certificate
- Configure Xcode for debugging on target device
Jailim ios
Here, in general, everything is simple. At the moment, firmware, amenable to cracking 8.1. Everything else can be found from the site
pangu.io .
If there is no hacked device, then we close this tutorial and pay Apple 99USD.
We are preparing our iOS device to install self-signed applications.
Quite a well-known fact that in order to install self-signed applications (essence hacked) you need to install the so-called AppSync in Cydia. I highly recommend installing AppSync Unified from the Karen aka angelXwind repository
http://cydia.angelxwind.net . If you install a Chinese PP store, I highly recommend installing the tweak "
Complete PPSync Remover ". As Karen writes, she is shocked as Krivoruk Chinese, who wrote PP made their own PPSync.
We connect and configure our iOS device to Xcode
- Launch Xcode
- We cling iOS device to USB
- Open the Devices window (Window \ Devices)
- We see our connected device
It is interesting, but earlier, it was necessary to press the "
Use for development " button, but now Xcode did not ask anything when connecting a new device, only filled in some information there.
Configure Xcode to use a self-signed certificate.
- Close Xcode if it is open.
- Open Terminal
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk
- Open the SDKSettings.plist with a text editor and replace the value of the " AD_HOC_CODE_SIGNING_ALLOWED " parameter with " YES ", and the " CODE_SIGNING_REQUIRED " parameter with " NO ".

- Open Xcode
- Open or create a project and go to the project settings in the tab " Build settings ". Set the value in the " Code Signing Identity " field to " Ad Hoc Code Sign ". You need to set the value of both " Target " and " Project "

- Around the "Run" button, select our connected iOS device.
- Click "Run" and Xcode translates the source code into an executable file and loads it into the device.
- Next, Xcode shows us the following error:

It should be so, because we have not yet configured the debugger, but the application itself can already be launched on the device.
Configure Xcode to debug the application on the target device.
- With the test project open, create a new PropertyList file - (File \ New \ File, iOS \ Resource - Property List).

- Specify the name of the file being created as Entitlements.plist

- Open the file you just created and add the " Can be debugged " parameter with the value " YES "

- Go to the project settings in the tab " Build settings ". In the field " Code Signing Entitlements " set the value " Entitlements.plist ". You need to set the value of both " Target " and " Project "

- Build the application and run on the target iOS device.
Update for
Xcode 6.4 :
- In the settings of the project target, in the " Info " tab, we copy the value of the " Bundle Identifier " parameter.
- In the newly created Entitlements.plist file we add a new parameter " application-identifier " and set the previously copied value to it.
I hope this guide will help novice iOS programmers simply and unpretentiously try their hand at writing programs for Apple devices.