Android Studio usa C/C++ para desarrollar aplicaciones

1. Seleccione Native C++ en el nuevo proyecto y luego el siguiente paso

2. Personalice el nombre y guarde la ubicación, seleccione Java como idioma, seleccione la versión correspondiente del SDK según la plataforma donde está instalada la aplicación y luego continúe con el siguiente paso.

 3. El estándar C++ se puede seleccionar de forma predeterminada, haga clic en Finalizar

 4. Una vez completada la carga, cambie el título del proyecto Android a Proyecto.

 Lista después del reemplazo

 

 El código C/C++ está en la carpeta cpp y hay algunos ejemplos de uso en el archivo MainActivity.java.

 5. Haga clic en Ejecutar para ver el efecto de ejecución.

 Instrucciones simples para usar el código:

Android Studio utiliza código C/C++ para desarrollar aplicaciones. Utiliza código C/C++ como biblioteca. La biblioteca de códigos C/C++ debe cargarse en el archivo MainActivity.java.

// Used to load the 'myapplication' library on application startup.
static {
    System.loadLibrary("myapplication");
}

Cómo utilizar la biblioteca:

1. El código C/C++ debe utilizar funciones en el formato especificado (si es un archivo C, elimine la "C" externa)

#include <jni.h>
#include <string>

extern "C" JNIEXPORT jstring JNICALL
Java_com_example_myapplication_MainActivity_stringFromJNI(
        JNIEnv* env,
        jobject /* this */) {
    std::string hello = "Hello from C++";
    return env->NewStringUTF(hello.c_str());
}

2. Agregue archivos C/C++ al archivo CMakeLists.txt

add_library( # Sets the name of the library.
             myapplication

             # Sets the library as a shared library.
             SHARED

             # Provides a relative path to your source file(s).
             native-lib.cpp )

3. Primero defina el uso en el archivo MainActivity.java:

public native String stringFromJNI();

4. Llame al código en C/C++ en la función onCreate

// Example of a call to a native method
TextView tv = binding.sampleText;
tv.setText(stringFromJNI());

Si tiene sus propios archivos C/C++ nuevos y archivos de encabezado .h, debe agregarlos al archivo CMakeLists.txt.

# 头文件位置
include_directories(src/main/cpp/)

Los archivos C/C++ llaman a Java

#include <jni.h>

JNIEnv* env=NULL;
jobject obj = NULL;
Java_com_example_myapplication_MainActivity_stringFromJNI(env,obj);

Supongo que te gusta

Origin blog.csdn.net/2301_77318278/article/details/131175553
Recomendado
Clasificación