Tag: Android ndk

Android cómo mantener la biblioteca nativa cuando la aplicación se detuvo

Desarrollar una aplicación que tiene tareas de fondo en C ++. Las tareas funcionan durante 1 minuto. Las tareas se invocan cada 5 minutos por IntentServiсe. Si la aplicación se descargó, mi IntentService carga la biblioteca compartida y las llamadas tareas nativas correctamente. Pero cuando la aplicación se está ejecutando y las tareas fueron invocadas, […]

¿Por qué Android Studio está ignorando mi archivo .bashrc en OSX?

He descargado un proyecto que utiliza ndk de Android. El archivo gradle contiene las líneas: task ndkBuild(type: Exec) { commandLine 'ndk-build', '-B', '-C', file('src/main/jni').absolutePath } Esto funciona muy bien al ejecutar ./gradlew assembleDebug . Tengo los siguientes contenidos en mi ~/.bashrc : # Append android sdk paths and stuff. export ANDROID_HOME=/Users/gradha/instalacion_manual/android-sdk-r10-mac_x86 #export ANDROID_NDK_ROOT=/Users/gradha/instalacion_manual/android-ndk-r8b export ANDROID_NDK_ROOT=/Users/gradha/instalacion_manual/android-ndk-r10e […]

Android, NDK, construcción de biblioteca estática

¿Es posible construir una biblioteca estática (.a) usando ndk-build de varias otras bibliotecas estáticas (.a). Por ejemplo, tengo varias librerías: lib1.a, lib2.a, lib3.a y necesito construir libmegalib.a lib Usar LOCAL_WHOLE_STATIC_LIBRARIES e incluir $ (BUILD_STATIC_LIBRARY) no ayuda. Crea libmegalib.a lib, pero sólo contiene contenido "! <Arch>" (8 bytes). Pero necesito que libmegalib.a contenga todas mis libs: […]

Pthreads morir en medio de un bloqueo mutex

Estaba pensando en el siguiente escenario sucediendo mientras un pthread se está ejecutando: pthread_mutex_lock(…); … // <- Thread dies here pthread_mutex_unlock(…); En otras palabras, un pthread comienza, en algún momento que bloquea un mutex, y por alguna razón, muere antes de que sea capaz de llamar a la función de desbloqueo de coincidencia, ya sea […]

La aplicación se bloquea en el emulador al cargar la biblioteca compartida nativa, pero funciona bien en un dispositivo físico

La cabecera casi explica el problema. Estoy recibiendo "Error de enlace insatisfecho" en el emulador. ¿Cuál podría ser la causa y cuáles son las posibles soluciones? Hace algún tiempo, cuando comenzamos a desarrollar la aplicación, funcionó bien en el emulador, y un día se detuvo. Sucedió en al menos dos máquinas independientes. Ideas, alguien? .. […]

Android NDK código nativo verdadero nativo?

Me pregunto si es más seguro para hacer las funciones criptográficas en código nativo. Usando Java no puede estar seguro de si el GC vuelve a ordenar la memoria y deja copias poco profundas de sus llaves en la memoria, incluso si usted cero la clave inmediatamente después de en / decryption. Tal vez esta […]

¿Cómo hago que el método JNI no llame estático cuando se usan objetos nativos de C ++?

Tengo el código siguiente del envoltorio de JNI C ++: #include "map_container.h" extern "C" { JNIEXPORT void JNICALL Java_com_map_Map_openMapNative(JNIEnv* env, jobject thiz, jstring path); }; static map_container* map = NULL; void Java_com_map_Map_openMapNative(JNIEnv* env, jobject thiz, jstring path) { const char* filename_utf8 = env->GetStringUTFChars(path, false); if ( mapview ) { delete mapview; mapview = NULL; } […]

Herramienta para generar un Android.mk

Tengo un gran proyecto de C + + que tiene alrededor de cien archivos de origen que se encuentran en un montón de subcarpetas. Inicialmente se desarrollaron utilizando Xcode IDE, por lo que no hay makefiles allí. Ahora necesito construirlo para Android usando NDK. Entiendo cómo crear Android.mk, pero me pregunto si hay alguna herramienta […]

¿Puede el NDK de Android compilar la fuente del módulo del kernel?

Quiero hacer un módulo de kernel cargado dinámicamente para android. No quiero instalar un linux, sólo tengo cygwin y android NDK.

Referencias indefinidas enlazan una biblioteca compartida pre-construida en Android con NDK

Tengo un libray compartido pre-construido llamado "tshark.so" que estoy intentando ligar cada vez que construyo otra biblioteca compartida (libwireshark_helper.so). Libtshark.so está en $ (LOCAL_PATH). Aquí está mi Android.mk LOCAL_PATH:= $(call my-dir) include $(CLEAR_VARS) NDK_MODULE_PATH := $(LOCAL_PATH) LOCAL_SRC_FILES:= wireshark_helper.c LOCAL_MODULE := libwireshark_helper LOCAL_PREBUILT_LIBS := libtshark.so LOCAL_C_INCLUDES += jni/libusb-compat/libusb jni/wispy jni/libpcap jni/libwireshark jni/libglib jni/libglib/glib jni/libglib/android jni/libwireshark/epan jni/libwireshark/epan/dissectors […]

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.