NDK入门 hello-jni的编译与运行有关问题
NDK入门 hello-jni的编译与运行问题

按别的文章配置好有,
设置了NDK的路径到path环境环境变量后,在CMD中,用上述方法到hello-jni文件中编译可以通过,但是用模拟器运行整个hello-jni项目后会奔溃,后来java文件改成这样
public class HelloJni extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText( /*stringFromJNI()*/ "1" );
setContentView(tv);
}
}
就没错,之后改成这样
public class HelloJni extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText( /*stringFromJNI()*/ "1" );
setContentView(tv);
}
static {
System.loadLibrary("hello-jni");
}
}
就出错了,那么意思就是没办法执行 System.loadLibrary("hello-jni");
就是说刚刚用CMD编译出来的so文件无效么
但是如果按文章中用Cygwin来编译就出现了如图的错误

卡了两天了,请大家指教,我该怎么做,谢谢了。
------解决方案--------------------
不用cgywin直接编译就行
------解决方案--------------------
你是ndk-r9的版本,不需要这样用啊。
直接在eclipse里面配置编译。
------解决方案--------------------
你so文件放哪里的?
------解决方案--------------------
http://blog.****.net/codingandroid/article/details/9798887
我正好写了篇这个的博客,你可以看下。
windows的cmd编译的是windows下用的文件,android是基于linux的,可能这个原因用不了。
按别的文章配置好有,
设置了NDK的路径到path环境环境变量后,在CMD中,用上述方法到hello-jni文件中编译可以通过,但是用模拟器运行整个hello-jni项目后会奔溃,后来java文件改成这样
public class HelloJni extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText( /*stringFromJNI()*/ "1" );
setContentView(tv);
}
}
就没错,之后改成这样
public class HelloJni extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
tv.setText( /*stringFromJNI()*/ "1" );
setContentView(tv);
}
static {
System.loadLibrary("hello-jni");
}
}
就出错了,那么意思就是没办法执行 System.loadLibrary("hello-jni");
就是说刚刚用CMD编译出来的so文件无效么
但是如果按文章中用Cygwin来编译就出现了如图的错误
卡了两天了,请大家指教,我该怎么做,谢谢了。
------解决方案--------------------
不用cgywin直接编译就行
------解决方案--------------------
你是ndk-r9的版本,不需要这样用啊。
直接在eclipse里面配置编译。
------解决方案--------------------
你so文件放哪里的?
------解决方案--------------------
http://blog.****.net/codingandroid/article/details/9798887
我正好写了篇这个的博客,你可以看下。
windows的cmd编译的是windows下用的文件,android是基于linux的,可能这个原因用不了。