IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Android NDK build


Sujet :

Android

  1. #1
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 48
    Points : 41
    Points
    41
    Par défaut Android NDK build
    j'essai de faire un projet android en utilisant NDK pour appeler mes fonction C, le probleme ce qui m'insulte en me disant "Please define the NDK_PROJECT_PATH variable to point to it"

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Salut,

    As tu respecté, les demandes de NDK ? c'est à dire :
    Les fichiers .C et le Android.mk dans un répertoire <projet_android>/jni
    créer un répertoire <projet_android>/libs

    Ensuite avec Cygwin ou ton terminal Linux, se placer répertoire du projet Android
    cd C:/<projet_android>

    Puis lancer le ndk-build en donnant son chemin d'accès.
    C:/android-ndk-r5b/ndk_build

    Voila si tu fais tout ça et que ton Android.mk est bien écrit tout devrait fonctionner (attention à la majuscule du Android.mk)

    Si ça ne marche toujours pas donne plus de détail, merci

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2011
    Messages
    48
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2011
    Messages : 48
    Points : 41
    Points
    41
    Par défaut
    j'ai fait tout ça en plus,
    voila mon Android.mk contient
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    LOCAL_PATH := $(call my-dir)
    include $(CLEAR_VARS)
    LOCAL_MODULE    := opcv
    LOCAL_SRC_FILES := getdata.c
    include $(BUILD_SHARED_LIBRARY)
    mon fichier.C contient ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    #include "getdata.h"
    JNIEXPORT int JNICALL JAVA_android_video8_lib_getdata(JNIEnv* env, jobject obj, jint s)
    {
    	int som;
    	som=s;
    	return (som);
    }
    mon fichier.h

    contient ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    #include <jni.h>
    #include <stdio.h>
    #include <stdlib.h>
    /* Header for class com_ndkdm_NativeLib */
     
    #ifndef _Included_android_video8_lib
    #define _Included_android_video8_lib
    #ifdef __cplusplus
    extern "C" {
    #include "opencv/cv.h"
    #include "opencv/highgui.h"
    #include "opencv/cxcore.h"
    #include "opencv/cvaux.h"
    #endif
     
     
    JNIEXPORT int JNICALL JAVA_android_video8_lib_som(JNIEnv* env, jobject obj, jint s);
     
    #ifdef __cplusplus
    }
    #endif
    #endif
    et ma classe java contient ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    package android.video8;
     
    public class libo {
     
    	static {
    		System.loadLibrary("opcv");
    			}
    		public native int som(int s);
    }
    ça na pas de raison que ce ne marche pas eje comprend rien

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Avril 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2011
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Désolé pour l'attente, je crois qu'il y a deux erreur a ton code dans ton fichier jni, ta fonction devrai s'appeler avec libo comme le nom de ta classe dans le java :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JNIEXPORT int JNICALL JAVA_android_video8_libo_getdata(JNIEnv* env, jobject obj, jint s)
    Et dans ton fichier java, tu doit l'appeler :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    	static {
    		System.loadLibrary("opcv");
    			}
    		public native int getdata(int s);
    Je pense que ça devrai fonctionner comme cela.

Discussions similaires

  1. Réponses: 1
    Dernier message: 30/06/2013, 20h06
  2. Pas de forum sur android NDK?
    Par Spidyy dans le forum Android
    Réponses: 0
    Dernier message: 01/01/2013, 04h39
  3. Android NDK
    Par nizkowsky dans le forum Android
    Réponses: 2
    Dernier message: 12/05/2011, 16h57
  4. Android NDK (C++), Jeux et Inputs
    Par kremvax dans le forum Android
    Réponses: 2
    Dernier message: 30/12/2010, 14h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo