Size: a a a

Android NDK (C++) — русскоговорящее сообщество

2018 December 14

AA

Andrey Alekseenko in Android NDK (C++) — русскоговорящее сообщество
И правильно сделали, в топку такой зоопарк, как был.
источник
2018 December 20

MK

Max Karpovich in Android NDK (C++) — русскоговорящее сообщество
Всем добрый день, не мог бы кто-нибудь подсказать, почему у меня возникает следующая проблема:

Что хочу сделать: закинуть ресурсы в .obb файл, монтировать его в c++ части, и использовать ресурсы в с++.

Что делаю:
1 Cоздаю .obb файл:
jobb.bat -d assets/ -o obb/patch.28.<package-name>.obb -k key -pn <package-name> -pv 28
2. Закидываю его в <external-storage>/Android/obb/<package-name>/
3.
namespace Platform {
   void on_mount_callback(const char* filename, const int32_t state, void* data)
   {
       AStorageManager* man = AStorageManager_new();
       int isMounted = AStorageManager_isObbMounted(man, filename);
       AR_LOG("MYDEBUG is mounted = %d, state = %d", isMounted, state);
       if (isMounted)
       {
           char* mntPath = (char*)AStorageManager_getMountedObbPath(man, filename);
           if (state == 1) {
               Asset_JNI::expansionPath = mntPath;
           }
       }
       AStorageManager_delete(man);
   }
}

JNIEXPORT void JNICALL
Java_<func-name>_setExpansionFile(
       JNIEnv *env, jclass type, jstring expansionPath) {

   constexpr const int16_t DATA_LENGTH = 256;

   AStorageManager* man = AStorageManager_new();
   char* data = (char*)malloc(DATA_LENGTH);

   AStorageManager_unmountObb(man, env->GetStringUTFChars(expansionPath,0), 1, Platform::on_mount_callback, data);
   AStorageManager_mountObb(man, env->GetStringUTFChars(expansionPath,0), "key", Platform::on_mount_callback, data);
   AStorageManager_delete(man);
}

Что получаю:
В колбэке у меня state равен 21. Т.е ошибка AOBB_STATE_ERROR_COULD_NOT_MOUNT

Помогите, пожалуйста разобраться в чем дело
источник
2019 January 03

AM

Andrey Martynenko in Android NDK (C++) — русскоговорящее сообщество
Всем привет, есть где примеры отображения preview  c камеры средствами opengl в портретной ориентации? а то все примеры которые нахожу, в ландшафтой. А эксперементируя с матрицами переворотов, получаю очень размазанные и деформированые изображения
источник
2019 January 10

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
Добрый день всем! Подскажите, как прилинковать static library в другую static library?  Хочу написать приложение, которое бы использовало статическую библиотеку, которая в свою очередь зависит от другой статической библиотеки
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Alexey
Добрый день всем! Подскажите, как прилинковать static library в другую static library?  Хочу написать приложение, которое бы использовало статическую библиотеку, которая в свою очередь зависит от другой статической библиотеки
Как обычно target link libraries
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
не работает
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Alexey
Добрый день всем! Подскажите, как прилинковать static library в другую static library?  Хочу написать приложение, которое бы использовало статическую библиотеку, которая в свою очередь зависит от другой статической библиотеки
target_link_libraries(  library
                       opencv
                       log )

Твоя библиотека, затем те с которыми линкуешься.
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
https://pastebin.com/KCFz1nGS   - вот cmake для первой библиотеки, которая зависит от других библиотек (openssl, libssh2)
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
и второй cmake, в котором указана зависимость от первой библиотеки
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
при общей сборке получаем ошибку линковки:
https://pastebin.com/rwX8mPrR
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Чёт я посмотрел и не нашёл проблем, копать надо. Ты ещё имеешь несколько acrosync с разными названиями, что путает.
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
вот и я не могу найти проблему :(
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
lib_acrosync  - библиотека, которая зависит от libacrosynced.a, которая зависит от openssl  и libssh2
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
куда и в какую сторону копать - не знаю уже
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
подозреваю, что линковщик так не умеет делать (из статики линковать в другую статику)
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Выглядит так как будто что libacrosynced не прилинкована к libssh2
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Хотя прилинкована
источник

DD

Denis Dodonov in Android NDK (C++) — русскоговорящее сообщество
Alexey
куда и в какую сторону копать - не знаю уже
Смотреть исходники, реально ли всё правильно. Сбилдить либу, посмотреть symbols.
источник

A

Alexey in Android NDK (C++) — русскоговорящее сообщество
источник