編輯:關於Android編程
現在開發Android程序基本都已經從Eclipse轉到了Android Studio了, 最近項目需求, 需要用到ndk編程, 於是就折騰了一下。
首先我們新建一個工程叫做NdkDemo, 創建後的工程目錄結構如下
然後我們打開gradle.prZ喎?/kf/ware/vc/" target="_blank" class="keylink">vcGVydGllc87EvP6jrCDU2s7EvP61xM6ytsvQtNK7vuSjrCDI57n7w7vT0NC01eLSu77ku+Gx4NLrsrvNqLn9PC9wPg0KPHByZSBjbGFzcz0="brush:java;">
android.useDeprecatedNdk=true
接著配置ndk路徑, 點擊左上角File然後選擇Project Structure(或者直接點擊紅框標注的那個按鈕)進入配置界面, 然後在紅框內配置下載好的ndk路徑即可。
到此,配置工作就全部完成, 下面進行開發相關的工作。
相信在Eclipse進行ndk編程過的同學都知道我們要去編寫Android.mk, 但是在Android Studio是完全不用我們去編寫的, 我們只需要在gradle下寫幾個簡單的語句, Studio就會自動幫我們寫好Android.mk,非常方便。
defaultConfig {
...
ndk{
moduleName "ndk-demo" //要引用module的名字
ldLibs "log" //引用庫的名字(選填)
abiFilters "armeabi" //配置需要編譯出那些版本的so庫(如果不寫,就編譯出所有版本的so庫)
}
}
以上就是app目錄的build.gradle的配置, 只需要在defaultConfig 節點下寫入ndk相關的配置就可以了。
接著我們新建一個Comman類, 寫一個本地函數, System.loadLibrary的參數填的就是剛才在build.gradle配置的moduleName
public class Command {
public static native String getStringFromC();
static{
System.loadLibrary("ndk-demo");
}
}
然後我們右鍵app目錄, 選擇新建一個jni目錄
點擊下方的控制台Tab, 輸入一下命令, 就會發現神奇的在jni目錄下會自動生成相關的.h文件
解釋一下兩句命令行的意思。第一句意思是進入到app/src/main/java目錄下。第二句中, javah是jdk一個生成頭文件的工具, -d ../jni 表示生成的文件要放到上一層目錄的jni文件夾下, com.zwf.ndkdemo.ndk.Command就是剛才我們寫的Command的全路徑。
有了頭文件我們就可以開始編寫相關的c文件了, 在jni文件夾下新建一個c文件跟剛才的頭文件名字一樣, 寫入相關的功能。
點擊運行, 成功!
那麼, 我們生成的so庫在哪裡找呢。
完畢!Demo源碼
簡介NineoldAndroids是Github上一個著名的動畫庫,簡單來說,NineOldAndroids是一個向下兼容的動畫庫,主要是使低於API 11的系統也能夠使
最近幫朋友做了一個動畫菜單,感覺有一定的實用價值,就在此給大家分享一下,先看看效果:實現思路:從圖中可以看出,這三個(或更多,需要自己再實現)菜單是圍繞著中心點旋轉的,旋
本文是自己學習所做筆記,歡迎轉載,但請注明出處:http://blog.csdn.net/jesson20121020 在Android的UI開發中經常會遇
本文實例講述了android動態布局之動態加入TextView和ListView的方法。分享給大家供大家參考。具體實現方法如下:package org.guoshi; i