Hy,
我收到了旧代码,编码于2014年,我被要求更新一些功能。
我在运行代码时遇到问题,因为它是在eclipse上构建的,现在我将其导入Android Studio。
首先,代码调用项目中包含的3个库,其中一个是cpp。这就是为什么我认为需要添加bundle-ndk。
我添加了:android.useDeprecatedNdk = true到gradle-wrapper.properties
这些是我目前拥有的gradle文件:
// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
repositories {
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0'
}
}
allprojects {
repositories {
jcenter()
}
}
First Library Gradle
apply plugin: 'com.android.library'
android {
compileSdkVersion 16
buildToolsVersion "23.0.3"
defaultConfig {
minSdkVersion 5
targetSdkVersion 16
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
第二个图书馆
apply plugin: 'com.android.library'
android {
compileSdkVersion 16
buildToolsVersion "23.0.3"
defaultConfig {
minSdkVersion 5
targetSdkVersion 5
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile project(':FirstLibrary')
compile 'com.android.support:support-v4:18.0.0'
compile files('libs/libGoogleAnalyticsV2.jar')
}
第三个图书馆
apply plugin: 'com.android.library'
android {
compileSdkVersion 16
buildToolsVersion "23.0.3"
defaultConfig {
minSdkVersion 5
targetSdkVersion 7
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
dependencies {
compile 'com.android.support:support-v4:18.0.0'
}
项目的模块Gradle
apply plugin: 'com.android.application'
android {
compileSdkVersion 8
buildToolsVersion "23.0.3"
defaultConfig {
applicationId "com.application.id"
minSdkVersion 8
targetSdkVersion 17
}
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-project.txt'
}
}
}
dependencies {
compile project(':secondLbrary')
compile project(':thirdLibrary')
}
收到最新错误:
错误:任务':library:compileDebugNdk'执行失败。
错误:您的项目包含C ++文件,但它没有使用受支持的本机构建系统。 考虑使用CMake或ndk-build与稳定的Android Gradle插件集成: https://developer.android.com/studio/projects/add-native-code.html 或使用实验插件: http://tools.android.com/tech-docs/new-build-system/gradle-experimental
请建议!!!
答案 0 :(得分:2)
这通常与gradle版本有关 - 您应该更新到最新版本并重试。看这里Plugin is too old。
另外 - 为什么你需要“com.android.tools.build:gradle-experimental:0.7.0-alpha4”?
答案 1 :(得分:0)
用于在android studio中编译cpp代码:
您需要在build.gradle中添加以下行
externalNativeBuild { cmake { 路径" CMakeLists.txt" } }
我希望这会对你有所帮助。