Информация о системе:
Android Studio 3.2.1
Linux Ubuntu 16.04
Введение
Недавно я наткнулся напроблема с моей IDE (Android Studio).Я использую его для разработки Native / Java-приложения вместе с Gradle и CMakeLists.
Я использую несколько CMakeLists для экспорта некоторых функций в C / C ++ для использования с моим приложением.
Так что эти Cmakelists будутсоздайте некоторую библиотеку, которую можно использовать.
Задача
Когда я «создаю» свой проект, он будет успешно построен, но библиотека не изменится, изменена она или нет.
После этого я подумал, что мне может понадобиться «Очистить мой проект», прежде чем это сделать, но ничего хорошего не произошло.
Вы можете увидеть мой build.gradleпод постом.
Пробное решение
Обходной путь, который я нашел, состоит в том, чтобы скомпилировать каждую библиотеку с CMAKE-GUI, а затем скомпилировать мой проект Android, чтобы увидеть модификациюсделанный ранее.
Я думаю, это плохо и ненормально.
Помощь
Я хочу знать, почему мой проект снова не делает мою библиотеку и "установите его в соответствующую папку.
Это ненужнопопробуйте показать мои CMakeLists, потому что он работает на CLion с Linux и Windows с Visual Studio.
Build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 28
buildToolsVersion '28.0.3'
defaultConfig {
applicationId "com.media.[NAME_OF_MY_PROJET]"
minSdkVersion 24
targetSdkVersion 28
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
ndk { abiFilters "armeabi-v7a" }
externalNativeBuild {
cmake {
cppFlags "-O3 -fno-stack-protector -fintegrated-as "
arguments "-DANDROID_ABI=armeabi-v7a", "-DANDROID_TOOLCHAIN=clang",
"-DANDROID_NATIVE_API_LEVEL=24", "-DANDROID_NDK=/Android/Sdk/ndk-bundle",
"-DANDROID_STL=c++_static", "-DANDROID_SDK_ROOT=/Android/Sdk/"
}
}
}
buildTypes {
/* customDebugType {
debuggable true
} */
debug {
jniDebuggable true
}
/* release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}*/
}
externalNativeBuild {
cmake {
path "../CMakeLists.txt"
}
}
}
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
androidTestImplementation('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
testImplementation 'junit:junit:4.12'
}