Partagez

Suivez moi

Twitter

Google+

LinkedIn

Créer une app iOS pour RFduino

Dans ce tutoriel, je vais expliquer comment créer le squelette d'une app iOS pour RFduino.

 

Si vous voulez en savoir plus…

Afin d'en savoir plus sur le RFduino, vous pouvez jeter un œil à À propos de RFduino.

Note préliminaire

Le tutoriel suivant va vous montrer comment créer le squelette d'un projet iOS pour RFduino. Il ne couvrira pas les communications entre le périphérique iOS et le module RFduino. Pour cela, vous devriez jeter un coup d'œil aux exemples « officiels » sur sa page GitHub.

Creation d'un projet iOS pour RFduino

Création d'un nouveau projet

Créez un nouveau projet d'application iOS (dans cet exemple, une « Single View Application »).

Création de projet - étape 1   Création de projet - étape 2

 

Framework RFduino

Récupérez le framework RFduino depuis « https://github.com/RFduino/RFduinoApps/tree/master/iPhone%20Apps/rfduino », et placez le dans un sous-dossier « rfduino » du dossier de votre projet (voir la structure du projet ci-dessous)

Structure du projet

 

Puis ajoutez ce dossier à votre projet :

  • Cliquez avec le bouton droit sur le projet, puis sélectionnez « Add files to <project’s name> ».
  • Selectionnez le dossier « rfduino », cochez les targets souhaitées, puis cliquez sur « Add ».
    • Ajout du dossier rfduino - étape  1   Ajout du dossier rfduino - étape  2

       

      Nettoyage de l'application

      Supprimez les fichiers « AppDelegate.h » and « AppDelegate.m » du projet (pas ceux du dossier « rfduino »).

      Suppression AppDelegate

       

      Renommez les fichiers suivants :

      • « ViewController.h » en « AppViewController.h »
      • « ViewController.m » en « AppViewController.m »

      Dans ces deux fichiers, remplacez toutes les occurrences de « ViewController » par « AppViewController ».

      Puis dans « Main.storyboard », selectionnez « App View Controller » et remplacez sa classe « ViewController » par « AppViewController ».

      Main.storyboard

      Si vous ne souhaitez pas renommer les fichiers ViewController, vous devez modifier le fichier « ScanViewController.m » puis remplacer toutes les occurrences de « AppViewController » par « ViewController ».

      Le code de RFduino n'a pas été fait pour des apps basée sur StoryBoard. Donc vous allez devoir éditer « ScanViewController.m » et remplacer la totalité de la fonction « - (void)didLoadServiceRFduino:(RFduino *)rfduino » par

      - (void)didLoadServiceRFduino:(RFduino *)rfduino
      {
          UIStoryboard *storybord = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
          AppViewController *viewController =[storybord instantiateInitialViewController];
      
          viewController.rfduino = rfduino;
      
          loadService = true;
          [[self navigationController] pushViewController:viewController animated:YES];
      }
                  
      N'oubliez pas de remplacer toutes les occurrences de « AppViewController » by « ViewController » si besoin.

       

      Framework CoreBluetooth

      Ajoutez le framework « CoreBluetooth » à votre projet:

      • Ouvrez la racine du projet
      • Allez dans l'onglet « Build Phases »
      • Déployez la section « Link Binary With Libraries »
      • Cliquez sur le signe « + » sous la liste des bibliothèques
      • Ajoutez le framework « CoreBluetooth »

      Ajout du framework CoreBluetooth

      Fonctionnalité RFduino

      Ouvrez « AppViewController.h »
      Ajoutez les directives d'import suivantes :

      #import "RFduinoDelegate.h"
      #import "RFduino.h"
                  

      Faites du contrôleur un delegate de « RFduinoDelegate », et ajoutez une propriété « rfduino ».
      @interface AppViewController : UIViewController<RFduinoDelegate>
      
      @property(nonatomic, strong) RFduino *rfduino;
      
      @end
                  

      Ouvrez « AppViewController.m »
      Ajoutez un @synthesize pour la propriété « rfduino ».

      @synthesize rfduino;
                  

      À la fin de la méthode « - (void)viewDidLoad », ajoutez la ligne suivante :
      rfduino.delegate = self;
                  

      La fin

      Votre application devrait compiler, et si vous la lancez depuis votre iPhone, vous serez accueillis par la liste des modules RFduino disponibles. Si vous sélectionnez un élément de la liste, vous serez envoyés vers la vue principale (actuellement vide).

      Modules disponibles

      Maintenant, vous n'avez plus qu'à finir votre application :-)



      comments powered by Disqus