35 votes

Le trousseau Xamarin Auth Store ne fonctionne pas après la mise à niveau de ios10

J'utilise Xamarin.Auth ( https://components.xamarin.com/view/xamarin.auth/ ) pour stocker mes informations d'identification, comme je l'ai toujours fait.

 var accountStore = AccountStore.Create ();
foreach (var account in  accountStore.FindAccountsForService("myAppName"))
    accountStore.Delete (account, "myAppName");

AccountStore.Create().Save(acc, "myAppName");
 

Après la mise à niveau vers iOS 10, je reçois cette erreur lors de l'enregistrement des informations d'identification:

 "Could not save account to KeyChain: -34018"

at Xamarin.Auth.KeyChainAccountStore.Save (Xamarin.Auth.Account account,System.String serviceId) [0x000b2] in <402cf9b3716845b3bdddef581cb33a3e>:0 
 

Dernière version installée 1.2.3.1 Le problème semble persister uniquement sur le SIMULATOR

77voto

Rafael Points 749

J'ai été fouiller dans le lien Pat envoyé dans le commentaire: bugzilla.xamarin.com/show_bug.cgi?id=43514

Et trouvé un utile commentaire par Pavel Sich, il a dit:

Juste assurez-vous d'activer le trousseau d'accès dans les Droits et sélectionnez les droits pour le Simulateur (Debug) s'appuie trop. Par défaut, cette valeur n'est pas définie.

Dans mon xamarin solution, j'ai double cliqué sur le .IOS projet pour ouvrir la fenêtre des options, choisis IOS Bundle Signature et changé la Plate-forme de sélectionner la zone de "iPhone" à "iPhoneSimulator", puis définissez le champ Personnalisé Droits mes Droits.plist. Maintenant, il fonctionne très bien pour moi.

Juste une remarque, c'est après l'édition du Droit.plist comme suggéré par Thibault D. dans la réponse précédente.

Espérons que cette aide.

14voto

thibaultd Points 2115

Selon ce fil, il suffit que vous ajoutiez un fichier de droits vide dans votre configuration de chant groupé:

 <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhoneSimulator' ">
  ...
  <CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
</PropertyGroup>
 

Vide le fichier Entitlements.plist :

 <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
</dict>
</plist>
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X