J'utilise iOS 9 comme cible et j'utilise Xcode 7.1. J'ai tout essayé au meilleur de mon niveau pour toutes les solutions d'ATS, mais cela n'a pas fonctionné. Ci-dessous se trouve la description de l'erreur suivante venant de la console. Si n'importe quelle suggestion vient je serai obligé.
Certains des éléments clés ici sont -
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
Error excluding Main.db from backup Error Domain=NSCocoaErrorDomain Code=4 "The file “Main.db” doesn’t exist." UserInfo={NSURL=file:///Users/Raj/Library/Developer/CoreSimulator/Devices/BC3A0589-3B9A-4AFD-8F2A-B1C92FA341DD/data/Containers/Data/Application/70B3043A-8553-41E5-A147-8508D08BF3E6/Documents/Main.db, NSFilePath=/Users/Raj/Library/Developer/CoreSimulator/Devices/BC3A0589-3B9A-4AFD-8F2A-B1C92FA341DD/data/Containers/Data/Application/70B3043A-8553-41E5-A147-8508D08BF3E6/Documents/Main.db, NSUnderlyingError=0x798465c0 {Error Domain=NSPOSIXErrorDomain Code=2 "No such file or directory"}}
2016-08-30 21:09:10.867 GFIM[80653:484899] SFOAuthCredentials:revokeRefreshToken: refresh token revoked. Cleared identityUrl, instanceUrl, issuedAt fields
2016-08-30 21:09:10.871 GFIM[80653:484899] INFO|0|SFPasscodeManager|Resetting passcode upon logout.
SFOAuthCredentials:revokeRefreshToken: refresh token revoked. Cleared identityUrl, instanceUrl, issuedAt fields
Ce sont les choses pourraient être la cause du problème.
2016-08-30 21:09:19.095 GFIM[80653:484899] SFOAuthCoordinator:webViewDidStartLoad: Host=test.salesforce.com : path=/
2016-08-30 21:09:19.863 GFIM[80653:484962] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2016-08-30 21:09:19.983 GFIM[80653:484962] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2016-08-30 21:09:20.016 GFIM[80653:484962] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2016-08-30 21:09:20.054 GFIM[80653:484962] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2016-08-30 21:09:20.194 GFIM[80653:484962] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2016-08-30 21:09:20.956 GFIM[80653:484962] NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
2016-08-30 21:09:38.285 GFIM[80653:484899] SFOAuthCoordinator:webView:shouldStartLoadWithRequest: (navType=1): Host=test.salesforce.com : path=/
2016-08-30 21:09:38.311 GFIM[80653:484899] SFOAuthCoordinator:webViewDidStartLoad: Host=test.salesforce.com : path=/
2016-08-30 21:09:38.834 GFIM[80653:484899] SFOAuthCoordinator:webView:shouldStartLoadWithRequest: (navType=1): Host=5-prod--stg.cs30.my.salesforce.com : path=/secur/frontdoor.jsp
À partir de iOS 9 Apple Enforce Pour créer une requête HTTP avec un hôte spécifique à des fins de sécurité . // fonctionne également sur iOS 10 avec Swift 3
Pour cela, vous devez ajouter le dictionnaire NSAppTransportSecurity à votre fichier .plist de Projet. Ensuite, votre plist ressemblera à quelque chose comme ceci.
Appuyez pour voir .Plist File Image
Ici, NSAllowArbitraryLoads signifie fondamentalement que vous vous connectez à n'importe quoi (c'est probablement MAUVAIS). Au lieu de cela, vous pouvez ajouter un hôte particulier à être connecté.
Si vous essayez de créer des requêtes HTTP avec ATS activé (à l'aide de NSURLSession ou de bibliothèques telles qu'AFNetworking), vous verrez des erreurs comme celle-ci.
Voici comment désactiver ATS entièrement. Ouvrez Info.plist et ajoutez les lignes suivantes:
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Votre fichier info.plist devrait ressembler à ceci
Voir cet article: https://stackoverflow.com/a/31077483/6763322
Je viens de l'exécuter dans l'appareil au lieu du simulateur. Il a commencé à fonctionner