• Home
  • Youzik
  • Papystreaming
  • Darknet
  • Libertyland
  • Cacaoweb
  • GG maps
  • Yggtorrent
  • Zone téléchargement

Grimag

  • Accueil
  • Catégories
    • Smartphone
    • High Tech
    • Business
    • Web
    • Appli Jeux Vidéo
    • Shopping
  • Android c’est quoi ?
  • Nous Contacter
  • Nos comparatifs
    • Drone avec caméra
    • Clavier d’ordinateur
    • Onduleur
    • GPS
    • Répéteur WiFi

Développez une application pour android étape 16 (indexer mes ingredients sur ma recette)



Ce tuto sera plus orienté développement. Le but dans cette étape est d’indexer chaque ingredient de la recette dans ma table recette_contenu.

L’enregistrement de ma recette se fera donc en 2 étapes. Tous ces modifications se feront dans la méthode insertRecette de ma class BDAcces

//je rajoute le paramètre ArrayList aTableauIngredient qui contient la liste des ingredients
public long insertRecette(String sNomRecette, String sContenuRecette,ArrayList aTableauIngredient) 
   

I- enregistrement du nom de la recette et de la préparation dans la table recette_larecette en récupérant l’identifiant unique de ma recette

 //Enregistrement  du  nom et de la préparation de la recette dans ma base de donnée
    	  
    	  ContentValues initialValues = new ContentValues();
          initialValues.put("nom_larecette", sNomRecette);
          initialValues.put("recette_larecette", sContenuRecette);          
          long idrecette = mDb.insert(RECETTE_TABLE, null, initialValues);

II- Je boucle sur la liste des ingredients contenus dans mon tableau aTableauIngredient.
*si l’ingredient n’existe pas dans ma table recette_condiment je l’enregistre , et je récupére sont identifiant ensuite dans ma table recette_contenu j’enregistre l’identifiant de ma recette, celui de mon ingredient,l’unité de mesure et la quantité.

 //récupration de la taille de mon tableau
          int itaille= aTableauIngredient.size();
          String[] acol= new String[]{"nom_condiment","id_condiment"};
          
          for(int j=0;j

*Si lingredient existe déja dans ma base je récupére juste l'identifiant

 
else{
        		  int iPostNom = tmpcursor.getColumnIndex("id_condiment");
        		  tmpcursor.moveToFirst();
        		  String idtmpcomd=tmpcursor.getString(iPostNom);
        		//*****************enregistrement lien condiment recette*************
        		  ContentValues initiallienstmp = new ContentValues();
        		  initiallienstmp.put("id_larecette", idrecette);
        		  initiallienstmp.put("unitemesure_contenu", aTableauIngredient.get(j)[1]);
        		  initiallienstmp.put("id_condiment", idtmpcomd);
        		  initiallienstmp.put("nombre_contenu", aTableauIngredient.get(j)[0]);
        		  mDb.insert(INGREDIENT_RECETTE_TABLE, null, initiallienstmp);
        	  }
       

Cette architecture de ma base de données me permettra plus tard de pourvoir faire différentes requêtes,
par exemple la liste des courses sur une liste de recette en factorisant les ingrédients.

Code source ici

Il est temps de mettre à profit les tutoriels d'Android France:
Passez à la vitesse supérieure et investissez quelques dizaines d'euros pour acquérir les connaissances qui vous feront gagner de l'argent avec vos applications rendez-vous sur notre boutique Android-france pour ces formations en vidéo

Juin 15, 2009Gnakouri Danon


Une photo volée qui pourrait montrer le smartphone Dell sous androidEt le Samsung Unpacked est ... Le Samsung Jet
Gnakouri Danon

Co-fondateur du site Android france, senior lead developper, passionné de bière et de cigare cubain

15 juin 2009 Tuto développementDeveloppement50

2023 © Android-France