今天下午,发现上午运行OK的程序,死都不能运行了。提示“Fatal signal 11”。
我是用JNI C++编程,一发现这状况,我晕了,我都确定没有修改任何代码,代码执行怎么会两样呢?
最后,我到处注释代码,加日志找原因,原来是变量初始化的问题。也就是说如果变量没有注意初始化,那么可能被初始化为各种值(不一定是0)。
结论,在android下进行jni开发,要重视变量初始化工作。
增加一个android NDK bug:(修改滞后,无法立即生效)
我的app有修改之后,我删除手机里面的app,然后run app,结果这个app是我修改之前的,不是我修改之后的。要再删除,再run才能真正run我修改之后的。
以上问题可能是我自身的问题。有高手看到请回复指点。