[iOS] Partager des données entre application avec app group

lundi 6 février 2017

Nous allons voir dans cet article comment partager des données entre deux applications au travers du mécanisme app group.

  • 1. Tout d’abord quand on créé un projet, il faut se rendre sur l’onglet capabilities du projet.
  • 2. Prenez la capability App Groups et cliquez sur ON.
  • 3. vous devrez choisir un compte développeur et entrez le mot de passe du compte pour activer sur votre AppId la capability de App group.
  • 4. Ensuite il faut définir un identifiant de groupe qui permettra à plusieurs autres application d’accéder aux données de ce groupe. Pour cela, on clique sur le + et on ajoute un group name.
    Group name est un préfixe au bundle identifier.
  • 5. Ensuite il faut vérifié les étapes suivantes qui sont avec un v à côté:
    • add “App Groups” entitlement in your entitlements file
    • add “App Groups” entitlement to your Apple ID
    • add “App Groups Containers” entitlement to your Apple ID.
  • 6. Voici le code qu’on met à disposition du group d’application:
  • NSUserDefaults *myDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.name.bundleIdentifier"];
    [myDefaults setValue:@"sharingData" forKey:@"UserName"];
    
  • 7. Ensuite dans l’autre application, il faut faire aussi les 5 étapes précédemment citée et on accède aux données
    NSUserDefaults *myDefaults = [[NSUserDefaults alloc] initWithSuiteName:@"group.tag.testGroupDemo"];
    NSLog(@"Hello, %@", [myDefaults valueForKey:@"UserName"]);
    

Pour cet article, je me suis inspiré d’un excellent tutoriel complet ici

Tags: App Group , NSUserdefault