xamarin ios Why cant i select a Simulator - ios

I am very new to Xamarin, and i have been following the Hello.ios QuickStart Tutorial and the app builds, But i cannot select a simulator for debugging.
My only options in debug are Default or IOS Device.
I have made my app the starting application and i have the xcode simulator running. I also went into xcode and updated the simulation to 7.1 i think, but i still cannot select a simulation type.
I even tried to go into project-->Active Configuration and tried to select Debug|iphoneSimulator, but it defaults back to just Debug|iPhone
can anyone help me
Thanks
EDIT
i am also getting this error : no valid ios code signing keys found in keychain
I dont know if that is caused by my issue in my question.

For the code signing issue, remove the entry in the entitlements textbox under:
iOS project => Project Options => iOS Bundle Signing
See http://forums.xamarin.com/discussion/39674/iphonesimulator-build-results-in-no-valid-ios-code-signing-keys-found-in-keychain for more information.
An alternative is to configure a signing certificate using an Apple developer account.
Here is a good walkthrough for setting up a certificate.
http://developer.xamarin.com/guides/ios/getting_started/installation/device_provisioning/

Related

Code signing is required for product type 'Application' in SDK 'iOS 14.3'

I am trying to build an old iOS application in xcode 12.3 (macOS Catalina 10.15.6). The app was written by another person many years ago. So previously it was signed by another AppleID certificate.
Now I have already managed to build the app in xcode 12.3 and I can successfully run it on a virtual device (iPhone 11 pro). However when I try to run the app on the real iPad (iOS version 14.2) connected via usb I am getting this error: "Code signing is required for product type 'Application' in SDK 'iOS 14.3'".
I have already searched in SO and found few threads from many years ago which are not really helpful for me.
What have I tried so far?
Enabled two-step authentication for my AppleID and added my AppleID to xcode.
In project -> Signing and Capabilities section I enabled Automatic Signing and selected my Team (which is shown as 'FirstName LastName (Personal Team)'). Everything looks OK now in Signing and Capabilities section, no errors.
I have also tried to create a test app and I was able to run it on the same iPad connected to my comp. I used the same my AppleID that I am using with my real project.
Before the error there is also warning: ""MyProject" isn't code signed but requires entitlements. It is not possible to add entitlements to a binary without signing it."
Somehow I managed to run my app on external device (iPad) finally. I don't really understand how I did it but at some point it just compiled without errors and then started.
I was just trying out every suggestion one after another from this thread: Code signing is required for product type 'Application' in SDK 'iOS 10.0' - StickerPackExtension requires a development team error. I set up Automatic Signing with my AppleID, selected my Team, changed BundleID, changed Deployment Target version to 14.2 (the same as in my iPad), etc. I also tried to Clean the project and restart xcode after every change - nothing worked for me. But suddenly it started working after I changed Code Sign Identity under Build Settings for both targets (main app and tests). I just changed Code Sign Identity back and forth and it start working. Finally I set Code Sign Identity to "Apple Development" (as it was suggested in the error message in Signing tab).
It is funny but the answer that I was trying out at that time suggested totally different thing. But that answer was from few years back and there was no such settings in my interface. So I tried to set it in another way. And that is how it worked out for me. BTW, this is that answer: https://stackoverflow.com/a/47664721/4428219.
Maybe later I will make more detailed research what exactly was the setting that made it work for me. But for now I just committed my working configuration and want to write it down here while I remember the sequence of events.

Xcode: Could not locate installed application. Install claimed to have succeeded, but application could not be found on device

I manually deleted my app from the iPhone and now I get this error message when trying to run it again from Xcode.
I cleaned the build folder, restarted the device, Xcode and the Mac, nothing helps.
I also tried everything that's mentioned here: Install claimed to have succeeded, but application could not be found on device
How do I force a re-installation?
As always, when the question is posted on SO, one finds a solution ;)
I edited the Scheme, setting the build configuration from debug to release and that installed the app again. Changed it back to debug and now it's running again as expected.
I ran into the same issue while testing a app on iOS 13 via XCode 11.0. Building via the legacy system solved it (File > Workspace Settings... > Build System > Legacy Build System).
Hope it helps
I had a similar issue after one of Carthage/XCode updates. It means iOS was not able to install app on the phone. XCode apparently is not able to provide this information directly. The first thing to do is open your phone console - go to Window/Devices and Simulators then select your device and click Open Console. In the console you can search for your app name what should provide you more detailed fail info. In my case it was sth like this:
Applications did fail to install: (
"<LSApplicationProxy: 0x118913b60> com.mydomain.myapp (null) <com.mydomain.myapp <INVALID >:0>"
) (appInfos: (null))
There was another console log few rows before flagging the problem:
0x16f4df000 -[MIExecutableBundle codeSigningInfoByValidatingResources:performingOnlineAuthorization:ignoringCachedSigningInfo:checkingTrustCacheIfApplicable:error:]: 789: Code signing identifier (org.alamofire.Alamofire.iphonesimulator) does not match bundle identifier (org.alamofire.Alamofire.iphoneos) for /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.E83T1l/extracted/myapp.app/Frameworks/Alamofire.framework
There was an issue with one of the frameworks Alamofire I'm using in the project. I changed bundle identifier of the project and build framework again what solved the problem.
Hope it helps!
In my case, the problem was an embedded framework that was not being signed. In the General tab of the project settings, setting the embed setting to 'Embed & Sign' did the trick.
In my case it was a problem with new Development certificate. It's created automatically after Xcode updated to 11 and may not be included in current provisioning profile.
I was facing similar issue in Xcode 11.1. I have fix this issue. Not sure about this solution that it will to work for all or not.
My device iOS version was older then the iOS Xcode target build version.
Steps:
I have put Xcode target Device to iPhone device OS version.
Delete derived data
Start xcode and open project
Clean the project and gererate build and install in device
Note: Please check your developer account, certificate validation and already registered device warning.
Hope this solution will help some peoples. Happy coding.
After trying everything here, for me the solution was to change my distribution profile to use the new Apple distribution certificate that covers all apple platforms. This should be compliant with xcode 11 (if you're not experiencing one of the other million problems since the "upgrade").
The cert change is mentioned here:
https://developer.apple.com/documentation/xcode_release_notes/xcode_11_release_notes
Cert creation instructions here:
https://help.apple.com/developer-account/#/devbfa00fef7
Once done, make sure the correct profile is selected in Signing & Capabilities, and 'Apple Distribution' is selected under Build Setting -> Signing for the appropriate build configurations
A solution that solved this issue for me was to check the signing team for my tests target. Selecting the same development team then meant that my app was able to be built and run on device.
Build system: New Build System
Xcode: Version 11.1
Uninstall all the other apps that are under the same "Organization" or "Bundle Identifier" with your current app and try again.
It works for me. Hope it does for you too.
On your iPhone go to Settings/General/Profiles & Devices/Apple Development: "YOUR APPLE ID" and delete all apps from there. It fixed the problem for me.
It happened to me when trying to launch a watchOS app on a real device.
The only solution that worked was:
Delete iOS app from device
Delete watchOS app from device
Close and reopen Xcode
Clean build folder
I did a Product -> Clean then Build, and it was able to run.
Go to settings on your phone and wipe out all certificates and apps and then install your app again. That helped me
Problem occured on XCode 11
TL;DR:
Try changing Embed option in General=>Section Frameworks, Libraries.. to Do Not Embed (although it sounds strange)
In my General=>Section Frameworks, Libraries.. list are Security.framework and the CocoaPods Pods_projectname.framework amongst others. Default setting of these two was Do Not Embed. Sounded strange to me, so I changed it without need alternating to Embed & Sign or Embed Without Signing. With both options the error occured!
On your iPhone go to Settings/General/Profiles & Devices/Apple Deelopment: "YOUR APPLE ID" and delete all apps from there. It fixed the problem for me.
This was the solution that worked for me.
Please double check the bundle ID of the installed application to see if it is re-applied, this will also cause this problem .I uninstall the app and solve the problem.
In my case i have PROD certificate and trying to install the app in the device, later i changed to development certificate it got installed.
As Marcin's answer suggested, I visited the phone console and in my case, it is this error message:
-[MIFreeProfileValidatedAppTracker _onQueue_addReferenceForApplicationIdentifier:bundle:error:]: 182: This device has reached the maximum number of installed apps using a free developer profile: {(
So if you are signing your app with a Personal Team certificate, make sure that you don't have more than 3 apps.
Read more here: Why can I not install more than three apps?
As for me,
I added a custom key-value to Info.plist of main watchOS application file. That was wrong.
After removing it, all works correctly.
It seems this is not allowed but where is no other information about it.
If you have other under-development apps installed, try uninstalling those you are not using, and run Xcode to install your app again. It works for me.

visual studio mac ios bundle signing platform is always iphone simulator

I am having troubles using my iPad as a testing device for my Xamarin.Forms App Running in Visual-Studio-2017. I have already done the requirements to use my own app but it still doesn't show on the devices. Here are the steps I have done so far.
Created my own account on free provisioning as described on this site. https://learn.microsoft.com/en-us/xamarin/ios/get-started/installation/device-provisioning/free-provisioning?tabs=macos
Opened my Xcode and created an empty app to setup the free provisioned account as described on the link above.
Fixed my the codedesign keychain access by inputting my Mac password and clicking always allow
Changed my info.plist information on signing as shown below
On bundle options, I have changed my signing identity and provisioning profile created by xcode. and changed the platform to iphone and clicked ok. See the image below.
After I clicked ok, Visual Studio says it was saved. But everytime I checked on my a debug device, it only shows simulators! Shown below:
I have tried restarting visual-studio mac numerous times but still how the same result! My devices hasn't shown at all!
I have scoured the internet and I couldn't find any concrete solution.
I was able to find the solution. Just change the Debug to Debug | iPhone as shown below... And it will show your device.

Code signing is required for product type 'Application' in SDK 'iOS 10.2'

i am completely new to Mac OS and develop for iOS.
I created a TEST Unity3d Project using this tutorial:
https://unity3d.com/de/learn/tutorials/topics/mobile-touch/building-your-unity-game-ios-device-testing
Now i try to build the app in Xcode 8.2.1, but i just get an error:
["Unity-iPhone" isn't code signed but requires entitlements. It is not possible to add entitlements to a binary without signing it.
Code signing is required for product type 'Application' in SDK 'iOS 10.2' - screenshot 1]
I found many informations about this in the internet. But nothing worked for me.
The most informations in internet are for older xcode versions and i think apple changed many about code signing in xcode 8..
In Xcode Preferences, i use a default free AppleID with a default team.
[screenshot 2]
Trying to disable code signing did not work:
[screenshot 3]
Completely disable code signing also does not work:
[screenshot 4]
I use Mac OS El Capitan.
iPhone 7 v10.2.1
Can anyone help me out?
All screenshots
Try this: In Xcode, click on the project at the top of the left column, then choose the target you're trying to build. Select the general tab, and check "Automatically manage signing." You should also be able to run it in the simulator without even doing the above.
Thank you for your great reply.
I had problems to find the "general" tab.
Then i found a great screenshot in another post to find the general tab.
With this screenhot and your great answer i got it working!
Thanks!
In my case, it was due to automatically signing certificate, i have unchecked that and i have enter the certificate manually

No valid iOS code signing keys found in keychain

I can Archive and Publish an app in debug mode, but when switched to App Mode i get the following error:
/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets: Error: No valid iOS code signing keys found in keychain. You need to request a codesigning certificate from https://developer.apple.com.
the attached file shows i do have the relevant Certificates but Xamarin keeps complaining
The app has been successfully published before but using a different profile on the same mac. Both users key chains contain the same certificates
I resolved that changing plataform build configuration from iPhone to iPhoneSimulator.
got it work in the end by remving all the certificates and then putting them back in the Key chain
I get this error when I open Xamarin University Exercises with Visual Studio 2015. A bug was entered and they decided that it is expected behavior. Xamarin Bug
If you work in Xamarin Studio and set this property for whatever reason, then open it in VS, you may hit this issue with no way to edit / remove the Entitlement setting in the Project Properties.
I guess the Exercises are created with Xamarin Studio.
The accepted workaround is to open the iOS .csproj and manually edit the <CodesignEntitlements></CodesignEntitlements> for the Debug|iPhone PropertyGroup.
I struggled too for the last day to make Xamarin (now Visual Studio for Mac) successfully deploy on my device with the free developer signing (since I'm new in this area and I'm not ready yet to join the developer program yet), and what helped was to first deploy a dummy app with the same bundle identifier from XCode like others suggested on different sources, keep CodesignEntitlements as it is in the .csproj file, but replace CodesignKey's value iPhone Developer like in the answer here: https://stackoverflow.com/questions/58062268/no-valid-ios-code-signing-keys-found-in-keychain-you-need-to-request-a-codesign#=
Hope this will help somebody in the future like it helped me!
Sometimes that happens when you newly start your computer and Visual Studio. Just don't hit green triangle debug Combobox-button and check what is selected in this combobox. If it is "Device" as in picture 1 select a simulator from the list as in picture 2 and start debugging. Else you get this error since VS will try to start debugging in a real device if "Device" selected in the combobox.
you can try either of this
remove any keys, if existing form Entitlements.plist .
Change the proj run mode to debug , select device .
I needed to create Signing Identity certificate from scratch and recreate Provisioning Profiles (on apple developer site). Then download using xcode.

Resources