5

Я пытаюсь создать проект библиотеки Android с собственным кодом. В разделе «Известные ограничения» в разделе http://tools.android.com/tech-docs/new-build-system/gradle-experimental поддерживаются проекты гибридных библиотек. Но я, кажется, не вижу родной, поэтому файлы создаются в папке libs файла aar библиотеки.Проблемы с созданием библиотеки Android с собственным кодом

Вот как мой проект установка выглядит

  1. Круги шагов в http://tools.android.com/tech-docs/new-build-system/gradle-experimental для поддержки НКА
  2. Добавлена ​​библиотека модулей, которые статически загружают выходец так файл и открывают возможности с помощью некоторых методов
  3. Добавлены другое модуль, который использует собственный модуль. Задайте зависимости модуля для включения проекта библиотеки.

Когда я запускаю это приложение, я получаю UnsatisfiedLinkError, который я ожидал, поскольку я не вижу никаких родных, поэтому файлы генерируются в файле aar.

Это как мой build.gradle файл библиотека выглядит

apply plugin: 'com.android.model.library' 

model { 
    android { 
     compileSdkVersion = 23 
     buildToolsVersion = "23.0.1" 
    } 
    android.ndk { 
     moduleName = "native" 
     cppFlags = ['-std=c++11'] 
     stl = "gnustl_shared" 
    } 
} 

Это как build.gradle моего приложения модуль выглядит

apply plugin: 'com.android.model.application' 
model { 
    android { 
     compileSdkVersion = 23 
     buildToolsVersion = "23.0.1" 
    } 
} 
dependencies { 
    compile project(':mylibrary') 
} 

ответ

1

Это является общей проблемой в Gradle экспериментальной 0,2. 0 и 0,2.1. Была та же проблема, обновлена ​​до 0.3.0-alpha4, и она сработала (просто замените 0.2.0 на 0.3.0-alpha4 в build.gradle вашего проекта). Для обновления вам понадобится Gradle 2.6 (щелкните правой кнопкой мыши по модулю/откройте настройки модуля/выберите Project подменю/установить Gradle версия field to 2.6). Обратите внимание, что я использую Android Studio 1.4 RC3.

+0

Работает с 0.3.0-alpha4 и gradle 2.6. Мне не нужно было обновляться с AS 1.3.2 – Harkish

+0

Вы можете отлаживать собственный код? У меня проблема с этим, и мне интересно, не отлаживается ли отладка в гибридной библиотеке или что-то не так. – Nedko

+0

Какая ошибка вы видите? Я получаю следующее, когда отлаживаю проект гибридной библиотеки «Ошибка при запуске на сервере отладки устройства: com.android.tools.ndk.run.DebuggerContext $ StartServerException: java.lang.IllegalStateException: сервер LLDB не найден». BTW Я могу отлаживать проект гибридного приложения без проблем – Harkish

Смежные вопросы