針對剛?cè)腴TNDK的同學(xué)簡化一下入門程序的編寫
一徘键、新建NdkTest項(xiàng)目绍哎。
二、直接在目錄下新建native方法工具類寒波,方便調(diào)用乘盼。
三、MainActivity中調(diào)用Native方法更新UI俄烁。
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
NdkUtils ndkUtils=new NdkUtils();
TextView textView=new TextView(this);
textView.setText(ndkUtils.getStrinFromC());
setContentView(textView);
}
}
四绸栅、Rebuild Project,查看目錄下是否生成了相應(yīng)的class
五页屠、利用AS中的命令窗口Terminal的javah命令生成native方法的頭部文件 javah -jni 包名.類名粹胯,執(zhí)行命令之后再當(dāng)前目錄下會生成.h的文件
六蓖柔、在main中右鍵新建jni文件夾,把剛剛生成的.h的頭部文件剪切到此目錄下,新建名為ndkdemo(隨便起)的c文件风纠,把頭部文件中的方法復(fù)制到該文件中况鸣,改寫返回信息
七、在module的build.gradle中配置ndk的相關(guān)信息竹观,點(diǎn)擊箭頭右上角镐捧,整理編譯,根據(jù)錯誤信息栈幸,在配置文件中加入錯誤信息
八、記得在MainActivity中導(dǎo)入so文件庫帮辟,運(yùn)行項(xiàng)目速址,成功編譯,可以在項(xiàng)目編譯目錄下面找到so文件庫
static{
System.loadLibrary("ndkdemo");
}
九由驹、得到了so文件,直接引用so文件就更簡單了芍锚,只需要在main中新建名為jniLibs的文件夾,把相應(yīng)的so文件都復(fù)制進(jìn)去蔓榄,只要包名和方法名都相同并炮,在其他項(xiàng)目中就是這樣么簡單的引用so庫。
查看原文章
附上demo鏈接