Android:Ubuntu下Jni学习入门实例
2010-09-06 08:42:00 来源:WEB开发网1. 环境
Ubuntu8.04+VMWare+eclipse(linux)+Android SDK(1.5以上)+(NDK) R4 for linux
NDK当前的最新版 http://dl.google.com/android/ndk/android-ndk-r4b-linux-x86.zip
2. 安装
NDK 安装先进入ndk目录,有个README文件,里面提到了API的文档在docs/STABLE-APIS.TXT里面,如何安装NDK,参考docs/INSTALL.TXT,还有如何使用NDK,参考docs/HOWTO.TXT。
NDK相关资料可以看, Android EOE 期刊第七期 http://wenku.baidu.com/view/d87586c24028915f804dc24a.html.
R4以前的版本都需要运行build/host-setup.sh来进行初始化,这个版本把它删除了,这样更方便。配置环境变量。
Shell代码: gedit ~/.bashrc or vi ~/.bashrc, 在~/.bashrc文件里面,添加
1. ) NDK_ROOT=~/android-ndk-r4b #后面的路径是NDK所在的目录,根据自己的目录修改
2. ) export NDK_ROOT
然后保存,重新打开bash。
3. 使用测试
以sample为例,编译的两种方法:
1).进入要目标工程目录,比如$NDK_ROOT/samples/hello-jni,然后执行$NDK_ROOT/ndk-build
2).在任何地方,执行$NDK_ROOT/ndk-build -C $NDK_ROOT/samples/hello-jni.
如果成功的话,会生成obj和libs两个目录。
怎么就这么个字数就超过了限制
4. 实例代码
求两数之和,给出半径求面积等
Java 代码:HustlanJNI.java
public class HustlanJNI extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView tv1 = (TextView)findViewById(R.id.TextView01);
//TextView tv1 = new TextView(getApplicationContext());
float a = 3;
float b = 4;
float result=add(a,b);
tv1.setText("The add(a,b) resutl:"+result);
//setContentView(tv1);
TextView tv2 = (TextView)findViewById(R.id.TextView02);
//TextView tv1 = new TextView(getApplicationContext());
更多精彩
赞助商链接