Cant run myApp.ipa after installing it from Diawi - ios

I created an app using react native, I have tested it on my IOS devices by connecting them with xcode, but now i want to share myApp with others to test it. To do that I generated myApp.ipa file by archiving, simply I just navigate to Product -> Application -> myapp, after archive is done, i copied the file to a folder named Payload after compressing the file, changed the Payload.zip to myApp.ipa after that I upload it to the Diawi website then got the link, installed the app on my ios device but unfortunately i cant run it? myApp is shaded with black, and nothing is there in Setting -> General -> Profiles. what did i do wrong? or if there is a simple way to let other test myApp.ipa please share.

Your app is blacked out because the iOS device won't run any unsigned apps. Your app cannot be signed without a provisioning profile.
You cannot install an app on an iOS device without a provisioning profile. The only way to get a provisioning profile is to have either a paid developer account or an enterprise account.
To install an app on an iOS device without submitting to the app store requires use of either an ad-hoc or enterprise provisioning profile
ad-hoc
The only way to get an ad-hoc provisioning profile is to have a paid developer account. $99 per year. https://developer.apple.com/programs/
ad-hoc profiles have limits to the number of different devices that they can be installed on.
enterprise
The only way yo get an enterprise provisioning profile is to have an enterprise account. $299 per year https://developer.apple.com/programs/enterprise/
enterprise profiles don't have the same restrictions on the number of devices as ad-hoc profiles but you cannot submit to the app-store with an enterprise account.

Related

Xcode Signing Failed to create provisioning profile

I subscribed to the App Developer program. I paid the fee. I've done Certificates, Identifiers & Profiles. I added the app to App Store Connect.
xcode signing
I am getting the errors above. I don't have an iPhone phone. I'm developing on my macbook computer.
xcode device
How can I resolve this error?
As I can see in image that "Automatically Manage Signing" is enabled for this Xcode project. So Xcode is trying to create the provisioning profile for you but not able to create it.
B'coz you need to add account in Xcode from Xcode -> Preferences -> Account -> Click on + icon at bottom to add a new developer account.
You need to create provisioning profiles.
Once you have created provisioning profile, download it and install on your machine.
Please make sure the certificate used in cretation of the provisioning profile must be in your machine's keychain.
If those certificates not installed in your keychiain then you will see certificate issue in Xcode.
But I would recommend to create provisioning profile manually from apple developer portal as you can see and mainly you can know that which certificate and devices are used in the profile.
You can create following provisioning profiles for your app.
Development Profile
You will be able to run/debug app on real device.
The device must be added into the profile.
This can be used for only development purpose.
Adhoc Profile
You will be able to install app on real device but not able to debug it.
The device must be added in profile to install app on it.
It acts as a release build but not a actually release build.
Generally develop send the adhoc build to client for testing of app.
App Store Profile
You will not able to run app on device using this profile.
It will be used to upload app on App Store or create the release build for distribution on App Store.

Installing .ipa over the air does not open

I have signed my .ipa and I have tried to install it via diawi. The app got installed but it shows the app's icon in dark and does not open. I signed it with a iOS Certificate and when I try it from XCode and TestFlight it works perfectly! What could it be?
You need to sign it with AdHoc Provisioning Profile.
You should also register the devices UDID in Certificates, Identifiers & Profiles in your Apple Developer Account.
EDIT
Excerpt from Diawi Knowledge Base.
A few things to check as a developer
If you have uploaded an app to Diawi and can't install it on some of your devices, here are a few things to check:
device's UDID must be in the provisioning profile built into the app by xcode
device's UDID must not start with "fffffff..." (if it is, then it is fake)
you are building a Release version of your app
the device is not behind an enterprise firewall preventing app installation
You may also try to drag&drop the app into iTunes and sync your device: it should install the app, otherwise it is not valid.
Can't install an app on an iOS device? Things to check
Distribute to registered devices (iOS, tvOS, watchOS)
What is the difference between a Development Provisioning Profile and an Ad Hoc Provisioning Profile?

iOS: Is a Distribution build supposed to work on my Developer device?

I am confused with profiles and certificates for the build I am trying to put on the Appstore.
In developer.apple.com/ I have properly created both a developer and distribution certificate. they are both linked to the single app I have created.
I have registered my device (iphone)
I also have properly created 1 development provisioning profile and 1 distribution provisioning profile.
When I build with dev certificate + dev provisioning profile: app works fine on my device
But I know the build needs a distribution certif and provisioning profile in order to get approved on the appstore.
However when I build with distribution certificate + distribution provisioning profile, the build is succesful, but I can't launch the app on my iphone, other iphone (with http://www.diawi.com/ or iTunes). It immediately crashes with the infamous error popup: "unable to download. "XXX" could not be installed at this time".
When I look at the device's log from Xcode, it clearly states the crash comes from a profile issue.
Is the distribution build supposed to work on my iPhone?
You can check you Beta release build to your developer device using 'Apple Ad Hoc Distribution profile/certificat'. Here are Apple Dev link Beta Testing Your iOS App
No. A distribution build will not just be installable on your device. You are meant to submit it to iTunes Connect from Xcode, where you build it from an archive, or from Application Launcher where you would submit it as an IPA.
you should have created adhoc distributed provisioning profile and add your device to that profile.
But you need iTunes Connect to submit the app to App Store. This time you can create provisioning profile for app store.
Advantages of iTunesConnect.
1. You need not to add new device to the provisioning profile every
time you want to test the app in new device.
2. You can add as many as new test users to the app and can mark them as internal and external users.
3. You can upload as many builds as you want and test those builds.

iOS Enterprise program: not able to install IPA file created using in-house provisioning profile on one of our device

We are using iOS enterprise account for distributing our iOS app. We are using the in-house distribution scheme of enterprise program.
As far as my knowledge, we don't need to install the in-house provisioning profile in the targeted device. Also, I believe that we don't need to add the device UDID in iOS portal since it's an enterprise account. Please correct my last two statements if my knowledge is wrong.
I am creating the IPA file using the in-house provisioning profile only. But while installing the same on one of our devices (iPhone 5s), I am getting below error.
"**A valid provisioning profile for this executable was not found.**"
I tried to install the same IPA file on another device (iPhone 4s). I have not installed the distribution provisioning profile in that device also. And it's working fine there. So only I concluded that We don't need to install any provisioning profile on the device in case of iOS enterprise program.
Below is my provisioning profile from enterprise account which I am using.
I am not sure why this is happening. Please help me and let me know if I am missing something.
You have to use a provisioning profile that is set for distribution. This profile needs to be using a certificate that is installed on the Mac you want to create the archive from. The profile gets installed along with the application.
You do not have to have the device added to the portal (only development devices need to be added).
One note - the profile will expire yearly. You will have to publish at least one update every year to include an updated and renewed provisioning profile.
Here's some screenshots:
Keychain Access:
Build Settings (Xcode):
Archive:

Install iPhone application in my device

I was recently developing an iPhone application using Xcode. Now I want to install this app on my iPhone in order to test it.How can I do this? could you tell me please a step by step answer because I am new to this.
I have already created an account on the
iPhone Dev Center
now what is the next step?
As per Apple guidelines:
To test your app on a variety of devices and iOS versions, create a special distribution provisioning profile, called an ad hoc provisioning profile, and send it, along with the app, to testers. An ad hoc provisioning profile doesn’t require that testers be enrolled in an Apple Developer Program, be added to your team, create signing certificates, or use Xcode to run your app. Instead, app testers simply install the app and the ad hoc provisioning profile on their device to launch the app. You can then collect and analyse crash reports or logs from these testers to resolve problems before you ship your app.
Can I do what is mentioned here? and if yes how ?
go to memeber login area and login with your credential..
go to certificate , Identifiers & Profile tab
go to keychain access and create a .csr file and save it, it'll
required for creating certificates
create a certificate from certificate tab
create App Ids from identifier tab
Register your device UDID from Devices tab
Create distribution profile from Provisioning Profile tab and download & save it.
Install the Provisioning profile to your device and build your project using that profile.
Archive your project and create .ipa file
Final step: Install that .ipa file to your device.
Hope it'll help you. Happy Coding.....
With the free account you can not test/run apps on a device.

Resources