Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Android > NDK AAssetManager и JNI


Автор: Vetos 20.9.2015, 12:19
Здравствуйте программисты!
решил изучить программирование под андроид, с явой не знаком а вот си то что мне нужно. в примерах NDK под Android studio, есть пример nativeActivity. С этим разобрался, перестроил его под GLESv2, но проблема теперь заключается в загрузке шейдеров из файла. В примере с чайником Teapot, вроде как точка входа тоже nativeActivity, но там намудрено ещё и с явой и процесс чтения файла слишком запутан. Если же пример nativeActivity можно было скопировать и переименовать папку, то в случае с чайником приложение падает в библиотеке dl.exe. Т.е. мне теперь нужно к моей программке, которая построена на примере nativeActivity, прикрутить функцию чтения файла из Teapot. А там используется JNI и ява.

Вопрос: можно ли прикрутить яву и JNI к примеру nativeActivity. При чем хотелось бы по подробней, например:
-создать папку java  в папке main и т.д.

Спасибо!

Автор: Vetos 20.9.2015, 13:40
Кстати смог запустить проект Teapot. Оказывается нужно было всего лишь сделать clean project. Пока буду мучать этот пример, но от советов и посказок не откажусь.

Всё таки в этом примере куча явы, не подходит, хотелось бы на чистом си(++).А я так понимаю не получиться, потому что AAssetManager * подгружается опять же таки с помощью явы. использование AAssetManager из структуры android_app->activity->AAssetManager не приводит к ошибке, но файлы не находит. Может как нить методами std fopen fread fclose, но какой путь к файлам задавать, как и куда их закидывать. 

Автор: Vetos 20.9.2015, 15:33
fopen работает, но нужно указывать явный путь, а какой же этот путь для файлов лежащих в assets???
или хотя бы как сделать чтобы при установке apk файлы закидывались в домашнюю папку 
Код

/data/data/com.example.native_activity/files

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)