JNI開發(fā)挺物,實現(xiàn)自己的C代碼,helloworld
在這里實現(xiàn)一個簡單的demo,完成加載自己的C代碼
使用Android studio坡倔,一步一步教你實現(xiàn)在屏幕上顯示出helloworld
如下圖顯示披粟,配置號NDK的路徑,沒有路徑的需要自己下載府框,在Android NDK location 下按提示下載ndk-bundle,下載完成后讥邻,則會自動配置好NDK路徑
來源于網(wǎng)絡(luò)
在gradle.properties 文件里面添'android.useDeprecatedNdk=true',如果不添加的話會在編譯的時候報錯迫靖,提示添加這段代碼,到時候按照提示進(jìn)行添加也可兴使。
來源于網(wǎng)絡(luò)
修改build.gradle配置系宜。打開\app\build.gradle文件,在'defaultConfig'里面添加如下代碼
ndk{
moduleName "hello" //生成的so名字
abiFilters "armeabi", "armeabi-v7a", "x86" //輸出指定的三種abi體系下的so庫
}
如圖:
來源于網(wǎng)絡(luò)
下面是在Activity寫下的調(diào)用代碼:
package com.cxria.ndkapplication;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.TextView;
public class MainActivity extends AppCompatActivity {
private TextView mTextView;
static {
//加載需要的library
System.loadLibrary("hello");
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTextView = (TextView) findViewById(R.id.textview);
mTextView.setText(getStringFromJNI());
}
//C語言實現(xiàn)的方法
public static native String getStringFromJNI();
}