您的位置:首页 > 移动开发 > Android开发

android studio NDK使用教材以及出现

2016-06-12 22:53 405 查看
android studio 插件的教程

参考的地址也顺便铁出来

参考一,这个讲的最靠谱

参考二

参考三

为使用的是gradle是 2.10

插件的版本是:classpath “com.android.tools.build:gradle-experimental:0.6.0-beta5” 这是项目下的gragle里面进行配置的

问题1:Gradle build Error:Cause: org.gradle.api.internal.ExtensibleDynamicObject, 原因是因为gradle配置文件中,不能按照传统之前那样使用进行赋值操作了,要使用=号进行操作,为把自己的清单复制上来把

apply plugin: ‘com.android.model.application’ // 注意:这里使用的插件有model

model { // 这里使用了model大括号

android {

compileSdkVersion = 23 // 这里全部使用了 = 号进行赋值

buildToolsVersion = “23.0.3”

defaultConfig.with {
applicationId = "com.jin.android.myapplication"
minSdkVersion.apiLevel  = 15
targetSdkVersion.apiLevel = 19
versionCode = 1
versionName = "1.0"

}

}
android.buildTypes {
release {
minifyEnabled = false
proguardFiles.add(file('proguard-rules.pro')) // 出现了错误这里忘记了,这里不能使用了 += 号赋值,之前版本是可以的,新版本要使用add进行添加
}
}

compileOptions.with {
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7
}
android.ndk {
moduleName = "NdkSample"
cppFlags.add("-std=c++11")
cppFlags.add("-fexceptions")
cppFlags.add("-I${file("src/main/jni//include")}".toString())
ldLibs.add("android") // 这里使用了add添加,把 android /log分开了。  之前使用 ["android", "log"] 这样写报错了。
ldLibs.add("log")
stl = "gnustl_shared"
}
android.productFlavors {
create("arm7") {
ndk.abiFilters.add("armeabi-v7a")
}
create("arm8") {
ndk.abiFilters.add("arm64-v8a")
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.4.0'
}


最好讲一下怎么在Android studio中生成 .h 头文件。网上的教程,太多太杂而且有点。。

首先要使用Terminal 里面。直接cd 到main下的src目录

mian目录下新建一个jni的目录

指令如下 :[root@localhost java]# javah -d ./jni com.jin.jni.JniLoad

前面代表在java的目录下, -d 表示输出目录, 后面是本地文件的定义的类

然后 头文件 .h 会自动生成在 jni 的文件夹下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android studio ndk