android studio NDK使用教材以及出現

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 的文件夾下

發佈了69 篇原創文章 · 獲贊 7 · 訪問量 18萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章