I developed an iOS app using Titanium on a macbook. I need to create the IPA file for allowing other testers to try my app on their devices (via TestFlight). I have no iPhone nor iPad, but accordingly to plenty of articles on the web this is not a problem at all.
BUT, I need a Provisioning Profile and I cannot create one without a device.
So, how can I compile?
In order to compile it to be installable on their devices via TestFlight, you must add their devices to your account and then add those to the provisioning profile. Then you can build the app and upload it to TestFlight.
The way TestFlight works is that when you add testers to your team, it will send you their device UDIDs. Then you will go to the iOS developer portal and add them to your devices list, then you'll (re)create the provisioning profile with those devices added.
EDIT:
I don't know why I was downvoted for a right answer, but in case clear steps are necessary, here it is:
Create TestFlight account
Do "Add Application" so that you have your app entry in the TestFlight system
Invite your testers to your team
Wait for your testers to accept, and add their devices to their TestFlight account
Take the UDIDs for their devices that TestFlight sends you, and go enter those devices into your iOS developer account
Create your provisioning profile using those devices that you just entered
Create your IPA using that provisioning profile
Upload your IPA to TestFlight
Give your testers permission to download the build from the Permissions tab in TestFlight
I think you were making the incorrect assumption that you needed the IPA first, which is not true. TestFlight is first the mechanism to get the UDIDs of your testers devices, before you create the IPA. After that, TestFlight is your mechanism to distribute the app to your testers. I and many other people have done exactly the above steps many times, and you can be assured that you don't have to have the IPA first, you only create it after you have the device UDIDs of your testers.
try this code
ti build -p ios -T dist-adhoc
or
ti build -p ios --deploy-type production --ios-version 9.0 --keychain --target dist-adhoc --output-dir
Related
I am android developer but I have just started the iOS development it was quite a fun until and unless i faced the distribution time.
My app is completed. now I have to give/send demo of the app to my client, I did R&D and found that to install app on device I need a UDID. I have one device also with me I have already added its UDID in my profile, so I can test on it.
Now tell me if I ask my client for UDID and if he supply me UDID, then after it how can I run app on his device. I can not access the client device physically.
I know this has been asked so many times and I have read those question. but most of them are outdated as I can not find those options in xcode
I am using xcode 9.2 and swft 4.2 . Please suggest me a batter way of doing that......
There are many options:-
Create adhoc profile then add UDID of client, then create IPA.Now create diawi link and share to client
Create enterprise profile, Create diawi and then create diawi and share it.
Go with testflight.
Useful Links:-
How create diawi
Create adhox
Use of test
Thanks
If you have client's device UDID then you can send build using Diawi link, Simply follow this steps.
First of all add client's UDID in developer.apple account.
Then Create "Provisioning profile -> AdHoc" profile. when you create AdHoc profile at that time select Client's UDID. (See more details https://support.magplus.com/hc/en-us/articles/204270188-iOS-Creating-an-Ad-Hoc-Distribution-Provisioning-Profile)
Using AdHoc profile archive project in xcode and export .ipa of application.
Upload exported .ipa file in https://www.diawi.com/
After finishing upload you can share build link with client.
Open this build link in safari browser(in device) to install application.
I suggest you use TestFlight.
You can create App on Appstore Connect and then upload one build to the Appstore using Xcode. After that you can simply use TestFlight to allow Internal or External Testers to download the app using TestFlight.
Advantages of TestFlight is that you don't need to have UDIDs of users, you can invite them using their email addresses. Also, you can invite external testers by using the Public Link now. You don't need email addresses of users if you create a Public Link and share the links with the users.
Apple beta distribution options are following,
You must have apple developer account enrolled to give away beta app.
1) TestFlight internal testers:- We can direct distribute by adding testers apple email to TestFlight section in AppStoreConnect.
2) TestFlight External Testers:-
We need to add any email ids of testers, they will get invitation with a redeem code, testers will have to redeem it using TestFlight app. User will notify for every build through TestFlight app. For External we have to submit for review for the first time only for every app version. Recently apple released feature to create a Public Link to invite testers, which you can share to any tester and tester can insert details directly from a web page.
3) Diawi Link:- You can upload build directly to Diawi, and distribute to testers whose UDIDS are attached with provisioning profile. There are some limitations to upload to Diawi like max ipa size is 100mb, expiration time 1day,....
4) AppBox:- To get rid if Diawi limitations, Some one introduce AppBox. AppBox is an open source GitHub repo, I found it some time ago, not using it regularly so I don't have deeper idea. AppBox is using dropbox to upload and using link to share with testers, we can directly upload to AppStore as-well.
Hope it covers all options of beta distribution for iOS, will update answer for AppBox as I will use more.
I have a normal Apple Developer Program (not the Enterprise one)
and I need to distribute an iOS application without adding each UDID to the provisioning profile. I do not want to jailbreak iphones.
It is possible to make an Enterprise provisioning profile where the signed applications can be installed on any device without adding it to the provisioning profile. (Correct?)
And it is possible only with Enterprise program. (Correct?)
Are there any other ways to get rid of this dummy need of adding the betatester's UDIDs and recompiling the app whenever new testers come, with Apple Developer Program only?
Providing you're already registered with the Apple Developer Programme, you can upload your build and from within iTunesConnect use the TestFlight options to make your app available for download.
There are two options, 'Internal Testing' and 'External Testing'.
(In answer to question about the profiles, you don't need to have an Enterprise Provisioning Profile.)
As you wish to make the app available for unknown devices, you will need to use external testing. Here is a link to Apple's info on it https://developer.apple.com/testflight/
You will need the email addresses of the beta users (up to 1000 users) as those will be used to send an invitation to download via TestFlight from the device they wish to download to.
For external testing, your app will need to be submitted to Apple for Beta Review, which normally only takes a day or so for them to approve. Once approved this build is available to invite the beta testers to download
I hope this helps
I have just started using the hockey app, before this,I ask for the tester's device UDID add that to Mobile Provisioning profile, create IPA and give that to the tester, so that he/she could test.
Now After seeing this Hockeyapp, I am interested to use this, my questions is do I have to create IPA by taking UDID from my testers and then upload the app to hockeyapp dashboard to be used by my testers?
Unless you have an Enterprise account and provisioning, you need to collect your tester's device UDIDs and add them to the provisioning profile you use to build your IPA which you then submit to HockeyApp.
HockeyApp can help you collecting the UDIDs for your testers when they register but any way you need to include them into the build.
I have finished working on an iOS app that I would like to give some friends of mine to test on their devices before submitting it to the app store. However, they live in another parts of the world, and am unable to get a hold of their respective devices. Is there a way for me to use their UDID and generate an .ipa file to send them to test on their device via email, without them having to physically provide me with their actual device?
I have heard of TestFlight as a possible solution, but can it be used for a device that is located in another part of the world, and I simply have the UDID to work with? Please bear in mind that the people whom I wish to have test my app are NOT iOS developers, and are therefore NOT registered with Apple's Developer program. Can it still be done?
For that you have to create new device in your iOS Provisioning Portal with your friends UDID. And then in your Provisioning Portal > Provisioning > Distribution > Your provisioning profile and edit your currant distribution profile and add newly created divice in that distribution profile. than create ad hoc distribution IPA with this new provisioning profile. And, taadaa, this IPA will run on your friends iPhone.
Here is the screenshot for distribution certificate.
Use this video to create distribution profile and IPA for ad-hoc.
It is same as we are giving our app to client for review.
Yes, TestFlight is exactly the type of service you would use to do this easily with non-developer testers. They will be able to click a link in the e-mail and it will install your app on their phone. It doesn't matter where they are physically located as long as you add their UDIDs to your TestFlight and Apple Developer account.
Testflight allows you to do so. ALl you need to do is to register their UDID in your account and send them a link to download the app. Then you send your applications through the account and they will receive an email to download the app.
Hope this helps..
I have done my iOS app, but I don't want to submit to App Store.
Shall I pass it to my friend and run on his iPhone without jailbroken?
I heard it has some certain certificate allow other guys to run it.
I have developer account.
would you please provide some materials if have some ways to achieve it in legal.
Edit my question:
what is proper way to run the application on iPhone for testing with my remote designer? That is, he can transfer the application via itune, not xcode.
You have to register his UDID in apple developer portal. Then you can install your app on his phone from Xcode.
You can distribute your application using standard developer account certificate ($99), but it is limited to 100 devices.
Below is the documentation from Apple:
iOS developers enrolled in the Standard Program can also distribute an
app outside of the App Store on up to 100 different devices for
testing purposes only. To use ad hoc distribution, create an archive
of your app, or have a teammate send you an iOS App Store Package
(.ipa) of the archived app.
You distribute your app by providing the .ipa file for users to
install on their devices. Because you select a valid ad hoc
provisioning profile to archive the app, users don’t need to install
the profile on their device, only the .ipa file. Users can use iTunes
to install the app on their devices. If users want to use Xcode to
install the app on their device, share the archive as an .xcarchive
file package.
Detail documentation is found here