Hello Applevis,
I hope everyone is doing well.
So 4-5 months ago I was trying to get the beta firmware of airpods, and for this I needed to enable developer mode on my iphone. I did everything, xcode installed and opened on my mac, iphone connected, etc. I also found the setting and turn the toggle on. The thing is each time I'd follow apple indication to enable developer mode my iphone would turn silent for 2-3 minutes and then I didn't have other choice but to hold the power button which would reboot the iphone and of course the developer mode wouldn't be enabled. I'd like to know what's the problem, is there something on the screen that we have to interact with and VO is not available at that moment after we click the next button or whatever we have in the popup?
Sorry if it's completely unclear as I haven't done it recently so forgot the terms, but I was following this guide.
https://developer.apple.com/documentation/xcode/enabling-developer-mode-on-a-device
I of course have my apple account registered as developer, etc, something you can already figure out as I've been doing beta testing on my devices for a while.
Also other question, I've read the complete developer license/agreement thing only once and didn't understand it much so I'd like to ask some questions.
1. Can we load .ipa files without paying the $90 fee?
2. How is the simulator accessibility with voiceover on mac? I mean if I am running an ios test app, how do I test voiceover on it on the mac directly assuming such thing is possible?
3. Same question about testflight.
Thanks a lot!
By TheBllindGuy07, 23 January, 2025
Forum
App Development and Programming
Comments
Test on-device
From what I understand you are on the free developer program, which has a lot of limitations, like your certificates only last a week, any apps you develop and sign with your development certificate must have specific bundle identifiers, you can only have up to 3 bundle identifiers registered in your developer profile, and you can't delete those identifiers because Apple does not grant you access to the developer portal. In practical terms this means that, without paying for a proper individual developer license, you can only work on 3 distinct applications per week, can't use any entitlements that require Apple services like Push Notifications, and any applications that you install on wall gardened devices will only remain valid for one week after being signed. In addition to this there are also some very restrictive limitations to the number of devices that you can test code on at any point, but I can't remember the exact number.
If I recall correctly, in order to enable Developer Mode, your device must be registered on the developer portal, which can be an issue when you are on the free program because, as I mentioned, Apple does not make it available to people with the free license. While I've never experience this problem myself, because I was, and still am, on the paid program when Developer Mode came out, I remember reading about this specific problem with the free membership program back then.
In normal situations, Xcode takes care of provisioning, signing, and deploying your app on your device when you run it. However if you mean running an IPA downloaded from the Internet without a valid signature ultimately trusted by Apple, you won't be able to run it unless you sign it yourself. If the IPA includes entitlements to Apple services such as Push Notifications, you might not be able to run it at all with a free license without actually patching the binary executable because those services are not available under the free membership plan. With a paid membership plan you might be able to run the app after changing its bundle identifier, requesting the same entitlements from Apple, and signing with your development certificate, however the entitled Apple services will not be of much use to you since the identity of the app will be different.
Regardless, an IPA is just a zip file with a different name, so to extract it you can either rename its extension to ZIP and decompress it with Finder or use the
unzip
command -line tool as follows:After unzipping the app you need to find your code-signing identity, which is a certificate stored in Keychain, and thus can either be accessed using Keychain Access or the
security
command-line tool as follows:Then, to sign the IPA, look for the application bundle, which in the example above would be a directory with a name like
Be My Eyes.app
inside another directory namedPayload
, and sign it using your development certificate as follows (where<identity>
is a substring of the name of the code-signing identity obtained above):Then zip it back into an IPA as follows:
Then you should be able to install the new IPA on your device using Apple Configurator or Xcode. Whether this is enough to actually make the app usable though depends on whether the code includes any form of DRM or entitlement that might cause other problems.
Regarding the Simulator, they try to make it accessible, but it's still something that I tend to avoid in favor of testing my code on a real device.
Test Flight requires a paid developer license since, like every Apple developer service, you need access to the developer portal.