Provenance iPad big GBA

As of iOS 9, you no longer need to rely on a jailbreak if you want to run some of the apps that aren’t available on the App Store. All you need is a Mac, Xcode 7, the code you wish to compile, an iOS device running iOS 9, a free developer account, and some time. If you have all of those things, then you can install apps on your iPhone or iPad without a paid developer account, and without a jailbreak.

Compiling apps using Xcode 7 is fairly straightforward, but if you’ve never done it before, it can be a bit tricky. In this post, I’ll show you how to compile code using Xcode 7 and run it on your iOS 9 device. I’ll also discuss some of the errors and issues that you might incur along the way.

Since multi-emulator Provenance just dropped, how about we use that as a basis for this tutorial? Just follow these steps, and you’ll have a multi-console emulator running on your iPhone or iPad in no time.

Prerequisites: You must be running iOS 9 on your iPhone or iPad and you’ll need a free developer account, which lets you “test on device”.

Step 1: Download Xcode 7 from the Mac App Store.

Step 2: Launch Xcode 7, click Agree, and wait for it to finish installing components.

Step 3: Find the code the you wish to compile (usually on GitHub). In this case, we’re using Provenance.

Step 5: Copy the HTTPS clone URL. In Provenance’s case, it’s https://github.com/jasarien/Provenance.git

Step 6: Inside of Xcode 7, click Source Control in the menu bar and click Check Out.

Check Out Source Control Xcode 7

Step 7: In the repository location box, paste the HTTPS clone URL from Step 5 and click Next.

Provenance.git

Step 8: Select a branch, in this case Master, and click next. Xcode will then download the source code needed to compile. Depending on the code, this may take a while, so be patient. Once the download is finished, Xcode will open a new project with the source code.

Check out branch Xcode 7

Step 9: Connect your iOS device via USB.

Step 10: In the drop down device selection menu, select your iPad (not a simulator).

Step 11: Wait as Xcode 7 indexes and processes symbol files. This may take a while as well, so be patient. Once complete, the status will say Ready.

Step 12: Click the Play button. You’ll likely get an error that says “failed to code sign”. That’s okay. Click Fix Issue and click Add to log in with your developer account. Remember, you don’t need a paid developer account, but you will need a free developer account (Apple ID). If you don’t have a developer account, create one by clicking Join a Program instead.

Failed to Code Sign Xcode 7

 

Step 13: Once you log in, click the Play button again to proceed with the compile. You may receive another error that says An App ID with Identifier…is not available. Please enter a different string. To fix this, click the General tab, and give the Bundle Identifier a unique name (delete the name between the two dots and add your own name. Leave the prefix and suffix as is).

BundleIdentifier xcode 7

Step 14: Click the Play button once more. The compile should complete, and you’ll see the app that you compiled appear on your iOS device’s Home screen.

Step 15: You’ll need to enable access to the app by trusting the developer on your iOS device. This can be done by going to Settings → General → Profile and tapping on the Developer app and granting access.

Developer App Profile iOS 9

Step 16: Launch the app on your Home screen, and iOS should allow you to use it.

Provenance app iPad

This is just a preliminary tutorial, and gives you a basic understanding of what’s required to get apps running on your iPhone or iPad using Xcode 7. We’ll be back with more in-depth tutorials, including video how-tos, on how to get the most out of this most excellent new privilege for iOS users.

Provenance iPad big GBA 2

What do you think?

  • Nirvana

    Cool !

  • Robert A. Petersen

    Keep in mind non paid developer profiles are only valid for 90 days, so at a minimum you’ll need to do a recompile once every 3 months.

    • Shurmano reshulón

      What happens to app data? Is it lost and you have to start blank every 3 months?

      • Chris

        The data will remain in the file system, it’s just the certificate that signed the app will no longer be valid which will prevent the app from launching.

      • Shurmano reshulón

        Thank you.

    • dominic järmann

      Faking the certificate won’t be that difficult

    • Fair limitation, since folks will probably want to update once in a while anyway.

  • Robert A. Petersen

    You’ll also want to switch from Provenance to Provenance-Release. If you don’t, you’ll end up with a debug build that has a few unintended audio glitches.

    • Thank you. I should have noted that.

    • Morgan Freeman

      Well, I deleted the app from my iPad and then tried to go through the steps again, making sure to select Provenance-Release this time. Now something is broke. I get an error:

      No code signing identities found: No valid signing identities (i.e. certificate and private key pair) matching the team ID “” were found.

      (Inside the quotes was a number identifier I removed for this post.)

  • Petr

    Great! thank you for this Jeff

  • Faisal

    Hey Jeff, do you know about BuildStore?

    • Pradhan Mn

      Buildstore works?

      • Faisal

        Yes it works and it has these emulator apps, I installed it for iTransmission but unfortunately iTransmission app was so lame.

  • HfzD°

    I got Provenence and GBA4iOS from a website, no Xcode 7 needed. From what I noticed, these apps are categorised under enterprise apps. Using a non-jailbroken iPhone 5S and things work great.

    • Tommy

      would you mind sharing how

  • Petr

    I would really appreciate article with some tips and apps that can be used with this. It’s a game changing thing. And I really thank you Jeff for this article. I had jailbreak years ago and I had to get rid of it because of company rules.

  • Hi

    This also works on iOS 8. just change build target 🙂

  • Stayo

    Can you do this process with Cydia??

    • Chris

      AppSync Unified is the alternative.

      • Luca

        its* use

  • Wonderful. Just what I was looking for!

  • Elias Chao

    That is the very first thing I thought when they said this (test apps without having a paid developer account) will be posible. Cool.

  • Michael Hulet

    That’s a compatibility issue between your installation of Xcode and the version of iOS you’re running. Basically, the version of Xcode you installed from the Mac App Store doesn’t know how to talk to your iOS 9.1 device. If you download the Xcode 7.1 beta using a paid Apple Developer account, you won’t have this issue

  • Philippe Vézina

    It work well with some simple apps, but with more complex ones, it’s a hell of a headache… Just before 8.4 jailbreak, I wanted to put Kodi on my new Air 2 that came with iOS 8.3 out of the box. Followed easy to understand tutorial like this one, using reliable Kodi compiling source… never been able to make it work… Fortunately 8.4 jailbreak came out right after and I can enjoy streaming my MKV from my mac to my iPad with the SOUND now! (damn AC3)

  • Nick Kaminski

    I cannot express how incredibly disappointed I am that this is on available on Mac. Thanks Apple. You’ve screwed us over for the last time. And just as I was about to buy the new 6s

  • Sleetui

    Thank you for this!!! Next, you should make a tutorial for Windows users.

    • dominic järmann

      Windows and iOS? No. Theres iTunes, but apple won’t port Xcode to Windows for sure.
      But the question is, how does Xcode install the Application on the device and sign it? This question can be answered. The solution is, to sign the application using Certificate.
      So what Xcode can, a windows application can do also. The developer just need to know, how this certificate is builded. So he’s may able to reverse engineer it.
      But as long nobody knows how, there won’t be a way.

  • Stefano

    ahhh sweet!

  • Fahad

    Will it work for devices running older version of iOS? Like an iPhone 4 running iOS 7.

    • dominic järmann

      If it works with iOS 8 (written in a post above) it should work on iOS 7. I haven’t seen the Certificate yet, so i can’t be sure.
      Try it for yourselve and let us know. You may want to upload the certificate somewhere.

  • Youngb401

    Any way to do this via windows?

  • Youngb401

    Anyway to run this via windows?

  • Youngb401

    Anyway to run xcode 7 via windows

    • Ophir

      no

      • klepp0906

        wrong, it’s just a pain/inconvenient.

    • klepp0906

      Yes, use any virtual machine software. Could also go the hackintosh route but that wouldn’t really be “on Windows”

  • Yunik

    can anyone make a torrent client app

  • Hendra Wijaya

    Hi dude i got error like this.
    I already click that reset button but that error still not solved and build failed.

  • grapecrush

    Thanks Jeff. When you have some time, please share some more apps we can sideload. Your tutorials are always great. Cheers.

  • KiwiBri

    any help for doing this for iMame4IOS ??? please? it doesnt seem to compile