读书人

JNI惹的祸?解决方法

发布时间: 2012-03-27 13:44:24 作者: rapoo

JNI惹的祸?
在自家平台上运行一个游戏报出以下错误就直接退出了,从表面上看貌似是lib中不存在相应的C方法,不过这个游戏安装在其它平台上却跑得很欢

dalvikvm(1753): JNI WARNING: 0x40539680 is not a valid JNI reference
dalvikvm(1753): in Lcom/revo/sog/natives/FileMgr;.SetAppDir (Ljava/lang/String;)V (CallStaticVoidMethodV)

[解决办法]
用了NDK编译么?
[解决办法]
其他是什么平台?你的游戏是否是为那个平台定制的呢?
[解决办法]

探讨

jni封装的4个方法里面有1个可以调用另3个不可以,由这点我觉得应该是可以排除编译环境的问题了

[解决办法]
顶一下
[解决办法]
dalvikvm(1753): in Lcom/revo/sog/natives/FileMgr;.SetAppDir (Ljava/lang/String;)V (CallStaticVoidMethodV) 这三个方法不可以调用吧。

可能是由于对方的lib库在你的硬件上调用相应的驱动,没有实现。

你看看在高通的片子上调用驱动,是否和TI的骗子上调用的驱动的写法是否一致。
[解决办法]
我的平台也是一的信息!
高通的平台也是Android2.3的?
[解决办法]

我们也用高通平台,这个问题也困扰了我好久,最后找出了原因:

1.编译android时必须选择user模式编译;
2.必须要有gsensor,也就是可以转屏。

发现好多apk只有在user模式下才能正常运行,eng模式无法运行。

读书人网 >Android

热点推荐