Android JNI, какой текущий рабочий каталог для исполняемого кода C / C ++?

В Android, если используется совместная библиотека C / C ++, созданная с использованием NDK, и загружает файл, что является его текущим рабочим каталогом? благодаря

Текущий каталог «/», а не каталог приложения:

#include <jni.h> #include <android/log.h> char cwd[1024]; if (getcwd(cwd, sizeof(cwd)) != NULL) __android_log_print(ANDROID_LOG_INFO, "", cwd); 

Чтобы получить каталог приложения, вам нужно использовать вызовы JNI для Java-кода, который, в свою очередь, получает каталог приложений android из контекста.

Negative. Родовой код getcwd () вернет '/', который не является каталогом приложений. Чтобы позволить родным знать, где он находится, необходимо передать директорию приложения (полученную из объекта Контекста) в native с помощью собственного метода. Или попробуйте вызвать метод Context с собственными кодами, что слишком сложно.

Возможно, образец NDK в «android-ndk-rxx / samples / two-libs» даст вам полезное сообщение.