I'm using Appcelerator to build smartphone apps, only iPhone right now but the plan is to expand into Android territory later.
I'm having some problems (as many others I understand) with understanding the provisioning profiles and ad-hoc deployment.
I have created a provisioning profile that contains the UDID's of my iPhone, my iPad and my sons iPhone. I build using Titanium Studio, and then select the "Install to IOS Device" to build an app and also an "ipa" file. Syncing with iTunes to my own devices.
I'm now planning to use TestFlight with the ipa file to distribute beta versions. It seems to work OK with the existing UDID's in the profile. The problem is now when I add more UDID's. Do I have to update the profile manually (on developer.apple.com), download it and fully rebuild my app for every added UDID? Or is there a simpler way? As I understand it, the profile is embedded into the "ipa" file, so does that mean I HAVE to rebuild?
"Do I have to update the profile manually (on developer.apple.com), download it and fully rebuild my app for every added UDID?"
Yep, it's exactly as you say. When you build your app, the provisioning profile the app is built against is embedded within the .ipa file. This is used to determine which devices can run the app, as TestFlight illustrates after the .ipa file is upload - all devices within that profile that match devices you've registered with TestFlight are listed. So after changing the device provisioning, you'll need to download and install the provisioning profile by dropping it into XCode, and then rebuild the app.
Related
I am trying to deploy an iOS app Ad Hoc to an iPhone for beta testing. I've been developing the app on Windows VS, I have a Macbook air with all the necessary software (Xcode, VS, etc), and I have paired to it with VS on my Windows machine. I have also followed the following steps:
Created an Apple Developer account
Created an App ID with the bundle identifier as the same exact one as the one in info.plist
Created a signing certificate using my Macbook Air, downloaded it, and installed it into XCode
Created a provisioning profile with the App ID and the certificate, and made sure to include the device that I want to load the app onto.
Made sure everything above was set to "distribution" and "ad hoc" as needed.
Set Bundle Signing in my iOS project properties to Manual Provisioning, and selected the Signing Identity and Provisioning Profile to the ones that I created for this deployment.
Set the build to Release and the target to Remote Device
Ensured that the deployment target in info.plist was set to the highest available, which is 15.4, though my iPhone is at 15.6 (could this be the problem?)
Set the IPA Packaging Options to "Build iTunes Package Archive (IPA)"
Set "Include iTunesArtwork images and the iTunesMetadata.plist" to true in the same area
Successfully built the iOS project and produced a .ipa file
After all that, I've been trying to get the .ipa onto my phone, which is definitely the device I added to the provisioning profile.
I've tried two methods to do this, and both have failed:
Connecting my phone to my Windows machine and opening iTunes. Dragging the .ipa file onto the device. The app shows up on my phone, but when I try to open it, I get this error:
"This app could not be installed because its integrity could not be verified". Though it should have been.. The device is linked to the provisioning profile that was used to create the darn thing.
Connected my phone to my Macbook Air and accessed the device through XCode > Window > Devices and Simulators. I emailed myself the .ipa file and downloaded it onto the machine (the Microsoft docs explicitly state that emailing the .ipa should work just fine). In the "Intalled apps" section of the device, I clicked the little '+' and then pointed it to the downloaded .ipa. After a few seconds, it pops up an alert window that says "Unable to install *.iOS".
Other things I have tried since this has been a problem:
Recreating the above steps by re-registering my device, creating new certificates, downloading, installing, all that business.
Messing with the deployment target version.
Jumping out from behind the couch and startling it to make it do what it's supposed to.
I swear I'm done with Xamarin forever after this problem is solved, but all the headaches I've experienced have made me think twice about whether to even bother with .NET Maui haha thanks for any help you can provide
Firstly, the error This app could not be installed because its integrity could not be verified" may be caused by the proper certificate or the test devices are not visible in 'Devices' (UDIDs added) in developer.apple.com/account.I found two simialr issues, you can refer to them: link1, link2.
Secondly, have you follow this docs on how to generate the IPA file?
I am looking for a solution where I have built an iOS app in titanium alloy and I would like to share it with my business owners in another state. I am looking for a way to create an executable so they can preview it before deploying it to the app store.
Is this possible? If so how can I do it?
Thanks!
No. The app can only run in the simulator or on an actual iDevice. You could run it on your Mac in the simulator and do a screen record over the simulator, making a demo vide of the app?
I figured one way of doing it.
must have UDID's of all the devices you would like to distribute to.
go to: Apple Developer Member Center, navigate to provisioning profile.
add the phones/UDID's to the profile.
In Ti Studio 3, right click your project > run as > run configurations.
Under Titanium iOS Devices select your driver as iTunesSync, then select your new provisioning profile. then run your build.
after it syncs to iTunes, right click on your app and click 'show in finder'.
copy the .ipa application file and then you can distribute to your users. the app will only work on the devices that you provided UDID's for. The end user must also import the .ipa file to their iTunes to 'sync' to their phone/device.
http://docs.appcelerator.com/titanium/latest/#!/guide/Deploying_to_iOS_devices
I am learning how to create an ad-hoc version of the app so that I can put it on my local iTunes and from that, to transfer it to the device.
I created a distribution provisioning profile and named it Production Provisioning AdHoc. Then I added the device I am testing on to that profile. Then in code signing, for the distribution setting, I set it to that provisioning profile, but what should be the develop setting? Does that matter?
The problem I am experiencing is that when I archive my project and distribute it as AdHoc, I am able to see the app in iTunes, but when I do the sync and apply to transfer it to the device, even though iTunes says the app is on the device, the app never gets installed on the device.
Please help me understand what I may be doing wrong and how to fix it. I have been stuck on this since yesterday.
Thanks,
Alex
Not sure about iTunes allow .ipa transfer or not. But you can use Xcode to transfer .ipa to device.
Here is steps to install .ipa to your device.
« Open Xcode->Window->Organisor.
« Click on devices tab
« Drag your .ipa to your device listed in side bar.
Attempting to deploy an Enterprise application wirelessly, with partial success. I do have the Enterprise Developers Kit, I've created the provisioning profile, added the devices ID's, uploaded the mobile provisioning profile, the ipa, and the P-list.
When I install the app through xCode directly onto the iPad, then attempt to download it wirelessly, it works fine. When I attempt to use it on a device that hasn't had that direct install, it downloads about 66%-75% of the way, right when the title shows up on the app, then says "Unable to Download Application".
Any ideas?
So, if you're on here, you should check to see if your iPad or iPhone is up to date with whatever version you archived it with on xCode. I updated the iPad to 5.1.1 and it installed just fine. My bad.
I've done this a few times before with my own apps.
I've started working for a client and using there account I've created the necessary files on the dev portal. Downloaded and install them on my machine.
Followed the instructions to create an archived IPA for adhoc distribution.
Drag it into iTunes.
Then drag it to my device in iTunes. When i start dragging the app icon a red badge appears, but the app never starts to sync onto the phone.
I opened the ipa and looked at the mobile provisioning file and I see that my phones UDID is
included there.
Can anybody give me some insight into what the problem may be?
I had this happen when I could see myself in the provisioning profile under its code-signing identity but I was not on the distribution profile. And the issue relied on the build settings.
Go to your project -> Build Settings and check under Code Signing. Confirm that you are using the correct developer profile. Pay extra attention to mismatches between bundle identifiers.
Check the validity of the distribution profile in the same area.
Archive and make sure you are using the correct build configuration. When creating the ipa file confirm for the correct distribution profile again.
Hope that helps
There can be many reasons for that. one thing that cross my mind:
Check if their device iOS version is not higher then the SDK you are using or lower then your deployment target.
I can also recommend to use Testflight service (search Test Flight iOS in google), it is perfect for distributing builds to customers.