Suivez votre progression
Accueil Trailhead
Accueil Trailhead

Ajout du kit Mobile SDK à un projet existant

Objectifs de formation

Une fois cette unité terminée, vous pourrez :

  • Utiliser CocoaPods pour ajouter le kit de développement Mobile SDK à une application iOS native existante
  • Utiliser CocoaPods pour mettre à jour une application du kit de développement Mobile SDK pour iOS natif
  • Comprendre l’interdépendance des Pods du kit de développement Mobile SDK

Utilisation de CocoaPods avec le kit de développement mobile

Si vous disposez déjà d’applications iOS que vous mettez à niveau avec le kit de développement Mobile SDK, cette unité peut vous aider à utiliser CocoaPods pour fusionner vos modules existants avec les modules du kit de développement Mobile SDK. Pour vos premiers pas avec CocoaPods, consultez le site https://cocoapods.org/.
Remarque

Remarque

CocoaPods est un gestionnaire de dépendances open-source tiers. Il est pris en charge par le kit de développement Mobile SDK et requis par forceios. Il n’est toutefois pas requis pour le développement du kit de développement Mobile SDK sur iOS. Consultez la section « Ressources » à la fin de cette page pour obtenir un lien vers les instructions de création manuelle d’un projet.

À compter de la version 4.0 du kit de développement Mobile SDK, forceios utilise CocoaPods pour créer des projets. Les développeurs peuvent également utiliser CocoaPods manuellement pour ajouter le kit de développement mobile aux applications iOS existantes.

Le kit de développement mobile fournit une spécification Pod CocoaPods, ou podspecs, pour chaque module du kit de développement mobile.

  • SalesforceSDKCore : implémente OAuth, les codes secrets, les réseaux et les API REST. Tous les autres Pods dépendent, directement ou indirectement, de ce Pod.
  • SmartStore : implémente le stockage hors ligne sécurisé. Dépend de SalesforceSDKCore.
  • Mobile Sync—implémente la synchronisation hors ligne. Dépend de SmartStore.
  • SalesforceAnalytics : implémente un mécanisme de génération de rapports qui envoie des statistiques Salesforce anonymes sur l’utilisation et la popularité des fonctionnalités Mobile SDK.
  • SalesforceSDKCommon : utilitaires partagés dans le kit de développement.
Le schéma ci-dessous illustre les dépendances entre les spécifications. Sur ce schéma, les flèches vont des spécifications dépendantes vers leurs dépendances.
Dépendances des subspec SalesforceMobileSDK-iOS.podspec
Si vous déclarez un Pod, vous obtenez automatiquement tous les éléments de la chaîne de dépendance de ce Pod. Par exemple, en déclarant un Pod pour Mobile Sync, vous obtenez automatiquement les Pods SmartStore et SalesforceSDKCore. Ce raccourci ne s'applique qu'aux pods de production.

Pour utiliser CocoaPods avec la version actuelle du Mobile SDK, procédez comme suit.

  1. Assurez-vous d'avoir installé la gem Ruby cocoapods tel que décrit sur www.cocoapods.org. Le kit de développement mobile 8.1 accepte les versions de pod 1.7.2 à 1.8.
  2. Dans le Podfile de votre projet, ajoutez le référentiel SalesforceMobileSDK-iOS-Specs comme source. Assurez-vous d'avoir placé cette entrée en premier, avant le chemin source de CocoaPods.
    target 'YourAppName' do
    source 'https://github.com/forcedotcom/SalesforceMobileSDK-iOS-Specs.git' # needs to be first 
    source 'https://github.com/CocoaPods/Specs.git'
    ...
  3. Référencez la podspec du kit de développement mobile que vous essayez de fusionner dans votre application. Par exemple, pour ajouter OAuth et les modules de code secret à votre application, déclarez le pod SalesforceSDKCore dans votre Podfile. Par exemple :
    target 'YourAppName' do
    source 'https://github.com/forcedotcom/SalesforceMobileSDK-iOS-Specs.git' # needs to be first 
    source 'https://github.com/CocoaPods/Specs.git'
    
    pod 'SalesforceSDKCore'
    
    end
    
    Cette configuration de pod représente le minimum requis pour une application Mobile SDK.
  4. Pour ajouter d'autres modules, remplacez SalesforceSDKCore par une déclaration de pod différente. Par exemple, pour utiliser Mobile Sync :
    target 'YourAppName' do
    source 'https://github.com/forcedotcom/SalesforceMobileSDK-iOS-Specs.git' # needs to be first 
    source 'https://github.com/CocoaPods/Specs.git'
    
    pod 'MobileSync'
    
    end
    Étant donné que le Pod MobileSync dépend de SmartStore et de SalesforceSDKCore, il n’est pas nécessaire de déclarer explicitement ces Pods.
  5. (Autre méthode) Pour utiliser la prochaine version de Mobile SDK, vous devrez cloner le dépôt SalesforceMobileSDK-iOS, extraire la branche dev et en récupérer les ressources. Dans ce cas, vous devez déclarer explicitement chaque dépendance de pré-version afin d’indiquer son chemin sur le dépôt. Si vous omettez une déclaration de dépendance, CocoaPods charge sa version du produit.
    1. Clonez github.com/forcedotcom/SalesforceMobileSDK-iOS localement dans la validation souhaitée.
    2. Dans la fenêtre de terminal, exécutez git checkout dev pour basculer sur la branche de développement.
    3. Exécutez ./install.sh dans le répertoire racine de votre clone.
    4. Pour chaque appel de Pod dans votre Podfile, ajoutez un paramètre :path qui pointe vers votre clone.
    Voici l'exemple précédent redéfini pour extraire les ressources d'un clone local :
    target 'YourAppName' do
    source 'https://github.com/forcedotcom/SalesforceMobileSDK-iOS-Specs.git' # need to be first 
    source 'https://github.com/CocoaPods/Specs.git'
    
    # Specify each pre-release pod 
    pod 'SalesforceSDKCore', :path => '/<path-to-clone-of>/SalesforceMobileSDK-iOS/'
    pod 'SalesforceAnalytics', :path => '/<path-to-clone-of>/SalesforceMobileSDK-iOS/'
    pod 'SmartStore', :path => '/<path-to-clone-of>/SalesforceMobileSDK-iOS/'
    pod 'MobileSync', :path => '/<path-to-clone-of>/SalesforceMobileSDK-iOS/'
    
    end
  6. Dans la fenêtre de terminal, exécutez pod install depuis le répertoire de votre projet. CocoaPods télécharge les dépendances des Pods requis, les fusionne dans votre projet et crée un espace de travail contenant le projet nouvellement fusionné.
    Important

    Important

    Après avoir exécuté CocoaPods, n'accédez à votre projet que depuis l'espace de travail que pod install crée. Par exemple, au lieu d'ouvrir MyProject.xcodeproj, ouvrez MyProject.xcworkspace.

  7. Pour utiliser les API du kit de développement mobile dans votre application fusionnée, souvenez-vous de ces conseils importants.
    1. Dans les applications Objective-C, importez des fichiers d’en-tête à l’aide de crochets obliques (« < » et « > ») à la place des guillemets doubles. Par exemple :
      #import <SalesforceSDKCore/SFRestAPI.h>