package com.example.hellojni;
import java.io.UnsupportedEncodingException;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
public class HelloJni extends Activity
{
static {
System.loadLibrary("hello-jni");
}
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
Tools tools = new Tools();
TextView tv = new TextView(this);
Log.d("pz", "-------<<<<<<<<,-----------");
byte[] arg = new byte[100];
tv.setText(stringFromJNI(arg));
Log.d("pz", "------ 把 byte[] 转化为 String------第一种 处理方式-----可以但有问题--------------");
String argString = tools.getDate2(arg);
Log.d("pz", "------argString------- : " + argString);
Log.d("pz", "------ 把 byte[] 转化为 String------第二种 处理方式------推荐非常好用-------------");
String string = new String(arg);
String[] strings = string.split("\0");
String string2 = "";
try
{
string2 = new String(strings[0].getBytes("GBK"), "UTF-8");
}
catch (UnsupportedEncodingException e)
{
e.printStackTrace();
}
Log.d("pz", "------string ------- : " + string);
Log.d("pz", "------strings[0] ------- : " + strings[0]);
Log.d("pz", "------string2 ------- : " + string2);
Log.d("pz","------------------------------ 十进制 ------------------------------------");
Log.d("pz", "----arg[0]---- : " + arg[0]);
Log.d("pz", "----arg[1]---- : " + arg[1]);
Log.d("pz", "----arg[2]---- : " + arg[2]);
Log.d("pz", "----arg[3]---- : " + arg[3]);
Log.d("pz", "----arg[4]---- : " + arg[4]);
Log.d("pz", "----arg[5]---- : " + arg[5]);
Log.d("pz","-------------------------- 十六进制 ------------------------------------");
Log.d("pz", "----arg[0]---- : " + Integer.toHexString(arg[0]));;
Log.d("pz", "----arg[1]---- : " + Integer.toHexString(arg[1]));
Log.d("pz", "----arg[2]---- : " + Integer.toHexString(arg[2]));
Log.d("pz", "----arg[3]---- : " + Integer.toHexString(arg[3]));
Log.d("pz", "----arg[4]---- : " + Integer.toHexString(arg[4]));
Log.d("pz", "----arg[5]---- : " + Integer.toHexString(arg[5]));
Log.d("pz","------------------------------ 字符 ------------------------------------");
Log.d("pz", "----arg[0]---- : " + (char)arg[0]);
Log.d("pz", "----arg[1]---- : " + (char)arg[1]);
Log.d("pz", "----arg[2]---- : " + (char)arg[2]);
Log.d("pz", "----arg[3]---- : " + (char)arg[3]);
Log.d("pz", "----arg[4]---- : " + (char)arg[4]);
Log.d("pz", "----arg[5]---- : " + (char)arg[5]);
setContentView(tv);
Log.d("pz", "--------------c调java中的方法--------------------------");
DataProvider.callmethod1();
DataProvider.callmethod2();
DataProvider.callmethod3();
DataProvider.callmethod4();
}
public native String stringFromJNI(byte[] arg);
public native String unimplementedStringFromJNI();
}
没有合适的资源?快使用搜索试试~ 我知道了~
Android NDK C掉java java调C 的demo
共46个文件
class:10个
java:6个
png:6个
3星 · 超过75%的资源 需积分: 9 14 下载量 197 浏览量
2013-05-10
15:59:42
上传
评论
收藏 136KB ZIP 举报
温馨提示
在 eclipse 中 配置 NDK 的编译环境 android-ndk-r7b-windows或者 android-ndk-r8e-windows-x86 配置一下,就可以运行了!
资源推荐
资源详情
资源评论
收起资源包目录
TestNDK_01_original.zip (46个子文件)
TestNDK_01_original
.externalToolBuilders
Test_NDK_01.launch 1007B
NDK_Builder.launch 1KB
bin
classes.dex 8KB
res
drawable-ldpi
ic_launcher.png 2KB
drawable-hdpi
ic_launcher.png 4KB
drawable-mdpi
ic_launcher.png 2KB
jarlist.cache 119B
classes
com
example
hellojni
BuildConfig.class 349B
R$layout.class 428B
R$drawable.class 413B
HelloJni.class 4KB
DataProvider.class 1KB
R$attr.class 346B
R.class 501B
Tools.class 986B
R$string.class 461B
TestActivity.class 521B
resources.ap_ 11KB
TestNDK_01_original.apk 31KB
res
drawable-ldpi
ic_launcher.png 2KB
drawable-hdpi
ic_launcher.png 4KB
values
strings.xml 227B
drawable-mdpi
ic_launcher.png 3KB
layout
test.xml 397B
main.xml 398B
obj
local
armeabi
libhello-jni.so 55KB
objs
hello-jni
hello-jni.o.d 1KB
hello-jni.o 31KB
assets
gen
com
example
hellojni
BuildConfig.java 162B
R.java 749B
jni
com_example_hellojni_HelloJni.h 790B
Android.mk 2KB
hello-jni.c 6KB
com_example_hellojni_DataProvider.h 1KB
proguard.cfg 1KB
.settings
org.eclipse.jdt.core.prefs 598B
src
com
example
hellojni
Tools.java 435B
HelloJni.java 3KB
DataProvider.java 824B
TestActivity.java 306B
.project 1KB
.classpath 364B
project.properties 361B
AndroidManifest.xml 790B
libs
armeabi
libKEYPADAPI.so 18KB
libhello-jni.so 11KB
共 46 条
- 1
资源评论
- wang1987wang19872014-08-26在ndk-r8下跑不起来
- tang2007103123332014-05-05作用不是很大。 但还是谢谢你。
hb454645829
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功