not able to add .ipa file in iphone device - xamarin

i have generated the .ipa file and trying to add in any iphone device but its not adding.
the error is showing like:- couldnot install(in xcode).
i tried with apple configurator 2:- in this scenario app is installing a bit just assume
75% and after that the app icon is getting grayed out and clicking on that app is giving
popup as :- could not install please try later.
somewhere i saw that you have to allow from your device to trust this app, location is like :- settings > general > profile&management > you will find your profile here for new app installing.i didn't get any profile there.
FYI
i am using free developer account and created the xamarin app from windows and building it through mac, the xcode version is 9.4 beta and i also tried to override with xcode version 11.3.
i am not getting whether i am missing something or messed up with xcode versioning.

i am using free developer account and created the xamarin app from windows and building it through mac...
If using a free apple developer account , you can not install a .ipa file to iOS Device .This is limited by Apple.
About IPA Support in Xamarin.iOS , you will see there are two uses as follow :
Ad Hoc Testing — An iOS application can be deployed to up to 100 users (identified by specific iOS device UUIDs) for Alpha and Beta testing purposes. See our Provisioning an iOS Device for Development documentation for detailed information on adding test iOS devices to your Apple developer account, and the Ad-Hoc guide, for more information on how to distribute in this way.
In House / Enterprise Deployment — An iOS application can be deployed internally, within a company, which requires membership of Apple's Developer Enterprise program. More information on In House Distribution is detailed in the In House Distribution guide.
In either case, an IPA package (a special type of zip file) must be created and digitally signed with the correct Distribution Provisioning Profile.
If using a free provisioning , there is a Limitation as follow :
Access to iTunes Connect is limited and therefore services such as publishing to the App Store and TestFlight are unavailable to developers provisioning their applications freely. An Apple Developer Account (Enterprise or Personal) is required to distribute via Ad Hoc and In-House means.
Therefore , if need to add .ipa file in iphone device , you should use a paid Apple Developer Program account.

Related

Certificate and profile for a mac app for installation on tester PCs

Things have been changing in the Mac Appstore.
As at 10.15.5, all apps, regardless of distribution via AppStore
or outside the AppStore, will need to be notarised. I dont
believe that's true of apps that are shared with your testers
via a profile that specifically lists their device.
I'm struggling to get the right combination of cert type and profile to
be able to distribute my app to my testers to run on their machines.
I have a company and that company has an apple account "Acme Widgets" and
the account holder is "admin#acmewidgets.com".
I have a personal apple dev account too, and I've added myself into the company as an admin.
So when I login to developer.apple.com as myself, I can switch between my
person account "Paul XYZ" and my company account "Acme Widgets".
I have an app developed using Xamarin (visual studio) with a Mac and iOS versions.
I can create a Debug and release versions of my iOS app, no problem. Upload it to the App Store and testers can get it with TestFlight.
Its the mac side that is causing problems...
I can create a Debug version of the mac app, and leave it unsigned.
Or I can sign it with a company developer ID and a profile that includes my Mac.
These run on my mac fine.
But release is causing problems. I want to create a release build that I can
share with my small set of testers. Therefore I think I need to use
the company "developer ID certificate", and a "MacOS development profile" that includes
their devices. But that wont run - I just get code signing errors.
I'm missing something obvious.
Can someone point me towards the type of cert (personal, personal in team or
team/company), and the type of profile I need to share a release version
with my testers?
Many thanks.
Paul

Generate .ipa file without Apple developer account

I'm trying to compile my ionic 3 app to ipa. I use MacInCloud.com. I don't have any Apple Developer account; I just have an AppleID and an iPhone 7 (if that helps).
Now while using XCode in MacInCloud, I clicked Product > Archive but then it displays Build Error. Turns out I need an iOS Provisioning Profile. As of now, I couldn't find a way to generate an iOS Provisioning Profile without having a paid Apple Developer account. I read here, the answer mentions A free developer account will allow you to build an app that will run for 7 days on a pre-defined set of devices (you would need to register any devices on which you want the code to run). but I couldn't find where to do this.
So can I actually generate an ipa file without a paid ios developer account? If no, is it possible for me to have someone generate a provisioning profile using their ios developer account for me?
Thanks
Update:
The methods described in the link in the comments requires me to connect my device. But I'm using MacInCloud.com, so there's no way for me to get Xcode to connect to my device.. at least I don't know how.

Xamarin.iOS - Using IPhoneSimulator's Keychain with a free iOS Development certificate

I have troubles with saving an account credentials inside an IPhoneSimulator's Keychain. I cannot use AccountSaver.Create().Save(credentials, "app") without Entitlements.plist. However when I add it to my project, compilation error shows up:
Could not find any available provisioning profiles for iOS.
I've added iOS Development certifcate to my account on Mac and tried to create a free provisioning profile but failed due to a lack of IPhone device.
Suprisingly, when I tried to build dummy project with added Keychain to Entitlements inside Xcode on my Mac and run it on a simulator no compilation errors occured.
My questions are: Do I have to make Apple Developer Account to test my Xamarin.iOS app inside IPhoneSimulator or is it possible without it and I'm doing something wrong? If so, what should I do to be able to compile my app?
I use Visual Studio 2017 on Windows 8 connected to a Mac Agent (Mac Mini).
P.S.: Most posts states, that simulator doesn't need provisioning profile, but according to this thread:
Starting with Xamarin.iOS 8.10, if the Entitlements.plist file is set at all for the iPhoneSimulator build configuration, then codesigning is required and thus an iOS code signing certificate is required to be installed in your keychain. ~ Xamarin Forum
Some time has passed since I asked this question, but I think it deserves an answer not only in the comments.
As #wottle wrote it is required to be enrolled i Apple Developer Program in order to have access to Keychain.
I sugest also to use Xamarin.Essentials' SecureStore instead of AccountSaver.
We have a bunch of Apple Store applications that had their Apple Distribution profiles expired. The issue was gone once we regenerated the Apple Distribution Certificate and created a new Distribution Profile for the impacted Applications.

One Xcode with 2 developers?

My Xcode used to be registered under my own developer program .
There is a company with their own developer program , that used to upload apps
from their own mac .
I would like to upload a build from my mac and my Xcode, using their developer program.
Do i need to create a new certificate to my Xcode/mac from the beginning for that ?
Can i just download their certificates and provisioning , drag to my Xcode and just upload a build to their program ?
If you have the right combination of certificate, provisioning profile, and bundle id, you can build the app from any Mac using any Xcode (assuming it supports the necessary SDK and device versions).
It would be cleaner to have your developer ID included in their team so that Xcode can manage profile changes and get updates but it's not necessary.
(Note: you use Keychain Access for certificates, not Xcode.)

Testing a Mac App on Registered Devices

I have a Cocoa Mac App that I don't know if it will on the Mac AppStore.
The application is still in development, and I want few persons to be able to launch it on their devices while the app gets new features.
The situation is the following :
I have a Mac Developer Certificate
Devices are registered in the Mac Member Center.
Every time they launch the app, GateKeeper complain the app doesn't come from the Mac AppStore, nor is provided by a identified developer, no matter if I sign the app or not.
So I tried to sign it and a provisioning profile is embedded into the app. If I don't sign it nothing embedded.
I should mention that the app has a Spotlight importer and QuickLook generator bundled into it.
I didn't find any clear explanation on how to resolve this issue in the Apple documentation, and most (if not all) blog posts, or articles on the Internet are about iPhone apps, not Mac ones (the process/requirements seems to be different on the two platforms).
The documentation is unclear on if all testers should be team members (which seems crazy because some of them aren't developers and don't have Xcode installed).
Can someone provide a clear step-by-step explanation on how to do that ?
Or maybe a article/blog post link or tips ?
Edit :
Here are screenshots of the app bundle structure and plug-in structure :
Everything seems to be right.
The way I obtained that is : I didn't set "Code Signing Identity" build setting, but rather archived the app, and exported it specifying code signing identity at that time.
Edit :
More and more curious, when I run codesign command in the terminal, codesign -vvv MyApp.app, the output tends to suggests that all is rightly done :
MyApp.app: valid on disk
MyApp.app: satisfies its Designated Requirement
Interpreting this question as essentially:
"how do I beta test Mac App Store apps" ?
Apple hasn't yet published an official workflow in the App Distribution Guide, but the following process works:
Tester sends "System Information utility > Hardware tab > Hardware UUID" to developer
Developer updates dev provisioning profile to include the hardware UUID
Developer uses Xcode Organizer Archives tab, Distribute > "Save as Mac Application", then select the updated development signing identity.
Developer sends newly built app to the tester
Note: The development identities have yellow caution ! icons during the re-signing process but they can still be used.
Not only does this avoid the GateKeeper prompt, but the development provisioning profile is also needed for any store technologies you might be using to work during testing, e.g. iCloud, GameCenter, etc.

Resources