Activity中什么时候能调用到main。。
解决方案 »
- 地球已经不能阻止安卓了!安卓安装模拟xp/98系统、不是美化!
- 寻求android有创意的开发想法
- 求助 android客户端与服务器通信安全问题
- 关于Android平台usb/gadget驱动的问题求助!
- 自己改写的 “天天动听悬浮歌词效果“的问题,求助
- 对象赋值?
- 求指点啊,直接蒙掉!
- android修改hotseat的问题
- android 上怎么使用语音识别(c/c++语言开发)
- 求大神帮忙 做google map cluster的时候里面的setOnCameraIdleListener和我自己的冲突
- 求助!!!一个关于textview的问题,高手看一下,给点思路
- 求各位大神帮帮忙。老师催的急 ,谢谢了。看看是什么问题怎么解决
import android.os.Bundle;
import android.app.AlertDialog;public class HelloJni extends Activity {
static
{
System.loadLibrary("hello-jni");
}
public static native String dispHelloJni();
public static void main(String[] args) {
String str = dispHelloJni();
System.out.println(str);
}
}
c 里面改下,java 的我一般用静态的了
Java_com_example_hellojni_HelloJni_stringFromJNI( JNIEnv* env,
jclass thiz )
这是个android jni demo.写的很详细,包括java代码那部分。
你仔细看下Activity的生命周期图,详细你很快就能明白了
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//使用Log.v();或者System.out.println()都可以,如果你是用Eclipse开发,那么可以在DDMS控制台的Logcat里查看,如果你是记事本的话,在命令行里输入adb shell,连接到手机,输入logcat命令查看
}
}
写在 oncreate里吧
static {
System.loadLibrary("hello");
}
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState); TextView tv = new TextView(this);
tv.setText( stringFromJNI() );
setContentView(tv);
} public native String stringFromJNI();
}
大概就是这个样子。上次正忙,没仔细看。