2011-07-23 3 views
-1

J'ai écrit un programme C++ avec make fichier dans le dossier JNI.and a écrit un programme avec SDK. Je veux utiliser la bibliothèque C++, mais quand je l'utilise et l'exécute sur l'émulateur, j'ai error.it dit que je devrais utiliser force exit.Problème avec Android ndk

source de C++: (wipeSRC.cpp)

#include <stdio.h> 
#include <stdlib.h> 
#include <sys/stat.h> 
#include <jni.h> 

JNIEXPORT jint JNICALL Java_X_XX_WF_Simple(JNIEnv* env, jobject obj,jstring addrs) 
{ 
    return 1; 
} 

Makefile:

# makefile to pack JNI with AMR-NB native library 
# 

LOCAL_PATH:= $(call my-dir) 

include $(CLEAR_VARS) 
LOCAL_MODULE := wipeLib 
LOCAL_SRC_FILES := wipeSRC.cpp 


include $(BUILD_SHARED_LIBRARY) 

et SDK avec JAVA:

package X.XX; 

import android.app.Activity; 
import android.os.Bundle; 

public class WF extends Activity 
{ 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Simple("hello"); 
    } 
    static 
    { 
     System.loadLibrary("wipeLib"); 
    } 

    native int Simple(String addrs); 

} 
+0

Afficher le message d'erreur de logcat. –

+0

@Chris Strattom Je suis nouveau dans ce domaine .... mais je n'ai pas d'erreur dans Eclipse. c'est l'exécution. out pu dans l'éclipse est normal. mais quand le programme luanched, il a dit que l'application .... s'est arrêtée de façon inattendue. Veuillez réessayer. – MIMAD

+0

Vous devez apprendre à utiliser logcat à partir du PC pour voir les messages d'erreur sur le périphérique. Si vous n'en trouvez pas, vous ne cherchez pas au bon endroit, car les bûches sont assez "bruyantes", même si tout fonctionne aussi bien que jamais. –

Répondre

0

résolu! J'ai utilisé Windows 7 en dernier, mais sais que j'essaie Windows XP.

la solution est que: utiliser cygwin dans Windows 7 et copier la bibliothèque pour gagner XP. alors utilisez XP pour coder dans JAVA.at le dernier problème sera résolu.

Je pense qu'il est préférable que tous les programmeurs se tournent vers Linux. : D