Xamarin iOS release automatic provisioning - none of the currency installed provisioning profile - ios

I have read and tried all the fixed associated with releasing and app to the App Store, but I cannot find any suitable fix. I have setup an iOS developer account and created account, I have setup Xamarin to automatic provisioning but I am getting the error message "none of the currency installed provisioning profile". I have tried the following
Upgrade Xamarin and X Code
Change all Bundle Identifiers to the same
Delete all the certificates from the KeyChain
Restarted MacBook
Switched from Manual to Automatic bundles
Created a test app
Removed certificates from iOS account
Rebuild, cleaned, achieved the project several times
I just cannot resolve this problem, any help would be highly appreciated as it's driving me around the bend to release the app into the App Store.
Many thanks

You should use manual provisioning instead of automatic provisioning when releasing your app to app store.
From the official document about publishing iOS app to App Store:
https://learn.microsoft.com/en-us/xamarin/ios/deploy-test/app-distribution/app-store-distribution/publishing-to-the-app-store
In the release build steps:
Navigate to the iOS Bundle Signing tab. Make sure that Configuration
is set to Release, Platform is set to iPhone, and that Manual
Provisioning is selected.
Of course you will need to have the corresponding distribution certificate and distribution provisioning profile created in Apple Developer page.

Many thanks for the help, I managed to resolve the problem with the following setups
Update all packages
Removed x-works (it was the latest version any way)
Re-install x-works
Delete all relating certificates in Keychain
Delete any certificates, profiles etc in app development site
Re-start Xamarin and MacBook (in the end did this several times)
Log out of Apple account in Xamarin
Re-log back into the Apple account in Xamarin
Setup auto provisioning in Xamarin i..e dev, dist etc and created the appropriate certificates
Generate a certificate within keychain using iOS account details
Plugged in iPhone and rebuilt the complete project
Achieved the build
Now it connected to the App Store and released the app
I am pretty sure you don't need to do all these steps, but seems like it took it back to the start of setting up Xamarin for app releasing. One problem might have been multiple certificates in KeyChain which caused the problem.
Many thanks for all the help and support.

Related

Cannot deploy iOS app to app store or actual device despite working provisioning profiles

I previously released my app to the iOS store but my certificates expired and so I created new certificates and profiles. I am using Xamarin Forms on Windows with a paired Mac. Everything is up to date.
I followed all of the steps in this answer already: Could not find any available provisioning profiles for iOS
I am able to see my provisioning profile in Xcode and release the project there with the same bundle identifier as my Xamarin project. It even works when I use Automatic Provisioning and a device simulator. But, when I run either Automatic or Manual Provisioning and try to deploy to an actual device I get the same error "Could not find any available provisioning profiles on iOS".
Any help would be greatly appreciated. Thanks!

Appcenter iOS install error "this app cannot be installed because its integrity could not be verified"

I see that this question has been asked many times but I see no solution that works for me so I'm hoping that providing more info might shed some light.
We use appcenter.ms to test iOS apps. Until our iOS certificate expired this method worked fine. We generated a new enterprise certificate and ad hoc provisioning profile for new releases of the iOS app. Which led to the first curiosity.
I see how to upload a certificate on appcenter.ms but not a provisioning profile. I thought there was an option to do this in the past but perhaps I am mistaken. However, the app is signed with a provisioning profile before upload, so perhaps this is not needed now.
Once the app is uploaded, it can't be installed. It remains grey and when you tap it, you get the "this app cannot be installed because its integrity could not be verified" error. Again, that the .ipa is created with an ad hoc certificate and profile in Xamarin (VS for Mac).
Also, I can't install the provisioning profile on a device from appcenter.ms. You basically get stuck in a loop where you seem to successfully install the profile but have to keep doing it because it never actually installs.
I hope this is enough info for some insight and thanks in advance for any feedback.
We were able to solve this by redoing and downloading development certs and via
And also downloading and double clicking the apple development certificate here
After that our keychain showed both as trusted and we could build to the iPhone again.
The issue can be the your device is simply not registered on the developer portal and/or that ad-hoc provisioning profiles have not been regenerated.
You need to register your device, regenerate a provisioning profile with this device in it and rebuild your app using this profile.
This can also happen because of
Developer ID Notary Service - Outage
which can be checked on https://developer.apple.com/system-status/
Notarization is well explained here:
Notarization gives users more confidence that the Developer ID-signed
software you distribute has been checked by Apple for malicious
components. Notarization is not App Review. The Apple notary service
is an automated system that scans your software for malicious content,
checks for code-signing issues, and returns the results to you
quickly. If there are no issues, the notary service generates a ticket
for you to staple to your software.
Work around fix:
Select your app.
Navigate to TextFlight tab
Create External Testing group
Add one tester
Add build which you want to download using TestFlight
Open TestFlight and download an app.
In my case this was caused by trying to include an entitlement for aps-environment "development" when using an Ad-Hoc provisioning profile. The value for this environment in Entitlements.plist must match what is hard coded into the provisioning profile file - if you open an Ad-Hoc profile in a text editor you will see it expects the "production" environment.
The possible solutions depending on your requirements are to either use the Development profile/certificate, or change the aps-environment to "production" to continue using an Ad-Hoc provisioning profile.
It can also happen if you have other incorrect entitlements - worth checking what entitlements are enabled under the Identifier in Apple Developer portal and removing unnecessary ones.
I had this issue because when building the app on xCode for distribution (Product->Archive then Distribute App), I chose automatic signing. After manually signing the app and choosing my own generated certificate and profile, everything worked again fine.
I removed the Entitlements file from the Addition Resources in iOS Bundle Signing and it worked.
I think the MSAL configuration was set to debug in entitlements.plist
I have also face this issue before but for me the reason was little different
First the build was enterprise one and the build was made on the earlier Xcode version on which the iOS version you are using on the device was not supported by the Xcode.
All I did was to update my Xcode and make a new build and shared the build. After that we were able to install that build over device Hope it works for you as well
This is how I solved for myself.
In you iPhone Settings > General > VPN & Device Management you should see your company name (if an app from it is installed), and if you click on it, you will see a button like "Verify" above the list of apps installed provided by the company. Just click on "Verify".

Beta from Crashlytics fail to install build on testers' devices

I'm sending my app to testers with Beta from Crashlytics which is an amazing tool to do app testing.
I had every new tester's device UDID registered in my developer account and then distribute a new build.
My testers got email invitation and accessed app's installation which could not be completed on their device.
They kept seeing an alert showing up with message:
Unable to download app - MyApp could not be installed at this time -
Done / Retry
Testers' testing status are "installed" in my Crashlytics dashboard but they're actually not able to finish installation.
Please help me find any possible factor causing this problem.
Perhaps the provisioning profile embedded in the build has been invalidated. Use Xcode to create a new archive, then use Fabric to upload a new build with that archive.
Discussion:
In my case, I had deleted the provisioning profile in the Apple Developer Member Center that had been embedded in each of my Fabric Beta builds. This caused the app testers had previously installed to immediately crash when they tried to launch it (embarrassing). It also caused the "Unable to download app - MyApp could not be installed at this time - Done / Retry" issue when testers tried to (re)install the app via Fabric Beta. Uploading a new build with my new provisioning profile embedded fixed the issue (each tester had to install the new build).
I've run into this problem back on iOS8 and just recently saw it again for iOS9, the only thing that solved the install issue was for my users to delete any previous version that they had downloaded, restart their phone, and try again.
You can also verify with them if Crashlytics properly installed on their iDevice, I've seen more than once where the configuration profile caused the issue, it's worth removing that (Settings -> General -> Configuration Profile (towards the bottom)) and retrying the install.
This is usually caused by one of two problems:
Incorrect provisioning profile/code signing settings. Double- and triple-check that the following settings are the same for the project and the provisioning profile: bundle identifier, development vs. distribution, adhoc.
Caching - sometimes, even when you've done everything correctly, things still just go awry. In such cases, you can try: deleting the previous version of the app from your phone, cleaning your project, deleting and re-downloading provisioning profiles, and building the app again.
RubyMotion Solution
For me, it was because I was using a development distribution profile, but with the wrong entitlements. Well, entitlement, singular.
I still had the 'beta-report-active' entitlement enabled, which was not included with the development distribution profile I am using. It is instead included with the production distribution profile (which is needed to distribute to TestFlight). However, I just wanted to deploy to my local phone, and not air my dirty app laundry to my entire internal test group, so this is where I found myself.
In any case, removing the 'beta-report-active' entitlement fixed my issue.
I tried the normal route of checking for proper certs and also deleting the app and provisioning profile along with rebooting device. In my case it was installing on device A and not device B. Device A was older iPhone 5c running iOS 9 and device B was newer iPhone 8 running iOS 11.x. When I archived the app for distribution I was selecting device A during the archive. Once I selected "Generic Device" it worked. But I'm sure I've built in the past selecting a specific device instead of generic and it worked. I was using Xcode 8.2, but I don't believe the Xcode version matters.

iOS 8 TestFlight does not install app

So as the title says, I am trying to pre-release an ios8 app. The app is uploaded successfully from the archive and appears under pre-release. I press on submit for beta release and add internal test users. In testflight the app appears, but when I press install it says:
"Could not install app, testflight is currently unavailable. Try again later".
This makes no sense. I tried recreating the developer profiles, I tried it on different devices with different account... always the same. Any ideas?
I re-downloaded the distribution profile for the app and re-archived the app. Now TestFlight works. Make sure that you select a Distribution profile (not Development)
Full description with pictures ... https://stackoverflow.com/a/30801899/294884
I had the same issue with one application for internal users... This worked for me:
Go to Prerelease -> Builds
Turn Off Beta Testing
Refresh testflight at your device (Build will appear as unavailable)
Turn On Beta Testing
Refresh Testflight at your device and install
Same error. My provisioning file was inactive in iOS developer portal as my certificate was revoked by other developer. I'd to activate the provisioning file with new certificate (exported from keychain by that very developer). So, I'd to use these new provisioning and cert to archive my app.
None of the solutions worked for me. I had the problem, that I couldn't update the gems version (an earlier version was already installed) with the same error message.
Turns out, re-inviting the affected user solves the problem.

iPhone code signing key doesn't match provisioning profile "xxxxxxx"

For about 17 weeks I've been building an iOS app using Xamarin Studio. I've added an iPhone to the developer profile and edited the provisioning profile to include this new iPhone, to test and debugg my app (I was running it on my MacBook (but with OSX Mavericks 10.9), and all worked well.
Last week, my supervisor asked me to upload the app to another iPhone, to show a demo of the app to our customers. I added the device in the developer portal, and linked it to the already existing Provisioning Profile. When trying to run the app, I got the error: "No iPhone code signing key matches specified provisioning profile".
A coworker and I have tried to resolve this issue by importing Certificates and Keys from another MacBook, on which the app still ran, onto this MacBook. After that didn't work out, we tried deleting the Certificates and Private Keys in the Keychain on this MacBook and re-importing them from the other MacBook.
We tried to create a new Provisioning Profile and re-link both iPhones, but the error still occurred.
Now, the app won't even sign on the first iPhone I linked to the first Provisioning Profile in the developer portal, nor will it sign using the emulators in Xamarin Studio
What I wanted to ask was what makes this problem occur, and how to fix it. Do we need to create a new certificate and provisioning profile altogether, or is there something we can do to fix this problem without having to create new certificates and provisioning profiles?
I've contacted Apple Support, they redirect me to Xamarin. Xamarin redirects me to Apple Support... I just can't get help from the officials, so I'll try the community.
Any help would be much appreciated.
1.Go to Xcode, create a new project. Select your company name(do not select user), then type in anything you want as your bundle identifier.
2.Go back to Xamarin studio and change the bundle identifier to match the one you just created in Xcode.
3.Update the provisioning profile in options to include the bundle identifier you created in Xcode. Build, then Debug the solution and it should work.
For me the issue was the team identifier contained the only provisions, and the only selection in Xamarin studio were users. I just created a new project in Xcode that pointed to the team provision, then used that new bundle identifier (that was uploaded to the Apple dev site) in Xamarin studio.
I know it's tedious, but I would start over re-creating certificates and profiles.
You could follow this lovely step-by-step guide: Publishing to the App Store
you have assigned wrong developer and with your provisioning profile.
select it right on going into build setting>> code signing and select provisioning profile you create with developer account.

Resources