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();
}