Accès rapide : 
                Programmation Android 
                Android : Plan de la formation 
                Android Introduction à Android 
                Introduction à Android : Présentation 
                Introduction à Android : Architecture des plateformes 4.x 
                Introduction à Android : Architecture des plateformes 5.x et supérieures 
                Introduction à Android : Outils de développement 
                Introduction à Android : Architecture d'un projet 
                Introduction à Android : Anatomie d'une application Android 
                Android Notre première application Android 
                Notre première application Android : Création du projet Android 
                Notre première application Android : Mise en place du layout de votre Activité via l'assistant 
                Notre première application Android : Edition de la partie de code 
                Notre première application Android : Gestion de l'internationalisation 
                Notre première application Android : Finalisation de l'application 
                Notre première application Android : Déploiement sur un SmartPhone 
                Android Debugger ses applications 
                Debugger ses applications : Utilisation de l'émulateur Android 
                Debugger ses applications : Passer son système en mode « Développeur » 
                Debugger ses applications : Utilisation du débugger DDMS 
                Debugger ses applications : Logs, mémoire, mode debug 
                Android L'interface graphique 
                L'interface graphique : Les layouts Android 
                L'interface graphique : Mise en place d'un thème graphique 
                L'interface graphique : Gestion de l'internationalisation 
                L'interface graphique : Gestion du menu Android 
                L'interface graphique : Mise en place d'un « Menu Hamburger » 
                L'interface graphique : Utilisation d'images 
                L'interface graphique : Dessiner avec un canvas 
                Android Création de Widgets 
                Création de Widgets : Par utilisation de l'héritage 
                Création de Widgets : Par définition d'un fragment 
                Android Gestion des Activités 
                Gestion des Activités : Mise en uvre d'activité 
                Gestion des Activités : Cycle de vie d'une activité 
                Gestion des Activités : Communication entre activités 
                Gestion des Activités : Configurateur d'application (AndroidManifest.xml) 
                Android Les données persistantes 
                Les données persistantes : La gestion des préférences 
                Les données persistantes : Utilisation d'une base de données SQLite 
                Les données persistantes : Manipulation de fichiers 
                Android Services et multithreading 
                Services et multithreading : Mise en uvre d'un service 
                Services et multithreading : Utilisation d'un service 
                Services et multithreading : Utilisation de threads 
                Services et multithreading : Utilisation du service de notifications 
                Services et multithreading : Démarrage d'un service au boot du système 
                Android Description des APIs 
                Description des APIs : Lister les senseurs présents sur le périphérique 
                Description des APIs : Utilisation des accéléromètres 
                Description des APIs : API de localisation 
                Description des APIs : API de cartographie 
                Description des APIs : Communication avec un serveur HTTP 
                Description des APIs : Accès au Bluetooth 
                Android Utilisation de code natif 
                Utilisation de code natif : Installer le NDK 
                Utilisation de code natif : Appels de méthodes natives 
                Utilisation de code natif : Compléments d'informations sur JNI 
                Merci de votre attention 
                     
                     
                    
                 
                
             
            
            Utilisation de code natif : Compléments d?informations sur JNI Récupération d?un attribut : JNIEXPORT jstring JNICALL  Java_HelloWorld_toString(JNIEnv *env, jobject obj) { 	char buffer[256]; 	jclass cls = (*env)->GetObjectClass(obj); 	jfieldID fid = (*env)->GetFieldID(cls,"a","I"); 	jint a = (*env)->GetIntField(obj,fid); 	sprintf(buffer,"Toto [a = %d]",a); 	return (*env)->NewStringUTF(buffer); } Dominique Liard - 2011 .. 2019 Notes: Récupération attributs :
      La récupération  de l?attributs va s?effectuer en plusieurs étapes :
A partir de notre objet passer en paramètre on va récupérer une jclass. 
Une fois que l?on a notre jclass, on va récupérer le jfieldID: l?identifiant de l?attibut. 
Enfin, grâce à cette ID, on peut récupérer l?attributs (de type java int) avec à la méthode GetFieldID. Cette méthode renvoi un jint.
Méthode et attributs
      La méthode GetIntField n?est pas la seule méthode disponible. Nous pouvons utiliser des attributs d?autre type. A chaque type primitif java correspond une méthode. Par exemple pour le type double, nous avons la méthode: GetDoubleField(jobject obj, jfieldID fid) qui renvoi un jdouble. 
      Grace à la manipulation précédente nous avons pu accéder à un attribut statique. Pour pouvoir accéder à un attribut d?objet il aurait fallut utiliser une variable de type jobject au lieu de celle de type jclass.
            Diapositive précédente 
            Diapositive suivante 
             
            
            
	
	
	
		Vous êtes un professionnel et vous avez besoin d'une formation ? 
		Conception d'IHM avec 
		Voir le programme détaillé 	
	
	
 
             
            
         
        
    
        2025  © SARL Infini Software - Tous droits réservés 
        Mentions légales 
    
    
        Les informations présentes dans ce site vous sont fournies dans le but de vous aider à acquérir les compétences nécessaires à 
        l'utilisation des langages ou des technologies considérés. Infini Software ne pourra nullement être tenu responsable de l'utilisation
        des informations présentes dans ce site. 
    
    
    
    
    
        De plus, si vous remarquez des erreurs ou des oublis dans ce document, n'hésitez surtout pas à nous le signaler en envoyant un mail
        à l'adresse : .
    
    
    
        Les autres marques et les noms de produits cités dans ces documents sont la propriété de leurs éditeurs respectifs.
    
    
 
    
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :