У меня есть исходный код из демонстрационного приложения, которое включает в себя некоторое родное кодирование. Я хотел бы интегрировать некоторую часть этого кода в свое собственное приложение.
Вот как структурируется код:
app/
java/
com.demoUser/
caffe_android_demo/
MainActivity
caffe_android_lib/
CaffeMobile
jniLibs/
libcaffe_jni.so
Очевидно, в нативном коде есть некоторые части, которые относятся к имени пакета приложения, как в caffe_jni.cpp
:
JNIEXPORT void JNICALL
Java_com_demoUser_caffe_1android_1lib_CaffeMobile_extractFeatures(
someArgs...) {
...
}
Как я могу реорганизовать эти имена так, чтобы они могли быть вызваны из моего приложения com.myUsername
?
Или есть другой способ включить код из другого приложения в Android Studio?
Собственный код вызывает Java-метод demoMethodName () в вашем классе demoClassName. Убедитесь, что вы определили метод в вашем классе.
Ибо он вторая часть
Вы можете изменить имя функции, следуя приведенным ниже правилам
Prepend Java_ to the function name.
Describe the filepath relative to the top-level source directory.
Use underscores in place of forward slashes.
Omit the .java file extension.
After the last underscore, append the function name.
В вашем случае замените demoUser на ваше имя пользователя
JNIEXPORT void JNICALL
Java_com_myUsername_caffe_1android_1lib_CaffeMobile_extractFeatures(
someArgs...) {
...
}
Других решений пока нет …