[工作积累] jboolean is neither JNI_TRUE nor JNI_FALSE
2024-08-25 08:12:42
jboolean result = env->CallBooleanMethod(ShopDataAndroid.IAPBridge_Object, ShopDataAndroid.IAPBridge_getProductList);
return (result == JNI_TRUE) ? : -; // this is not gonna work
http://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/types.html#wp9502
因为JNI_TRUE (1) 和JNI_FALSE (0) 是JNI定义的宏, 所以按道理讲, 返回值应该是JNI_TRUE或者JNI_FALSE才对. 然而实际在android上返回值可能不是1, 这种行为非常令人不爽.
目前只能转换为native bool或者用result != JNI_FALSE
最新文章
- python 三元运算
- Python标准模块--built-ins函数
- 文字处理控件TX Text Control的使用
- webpy 访问局域网共享资源
- Mac Pro 修改主机名
- Openstack的keystone的user-role-list命令的使用
- 【转】MYSQL入门学习之十二:存储过程的基本操作
- 反向代理代理百度、google
- leetcode中一些要用到动态规划的题目
- Linux文件编程实例
- android中使用DisplayMetrics获取屏幕参数
- WPF界面设计技巧(5)—自定义列表项呈现内容
- java基础---Java---面试题---银行业务调度系统(线程同步锁、枚举、线程池)
- vue组件如何被其他项目引用
- Android Studio获取开发版SHA1值和发布版SHA1值的史上最详细方法
- 使用Cobbler批量部署Linux和Windows:Windows系统批量安装(三)
- C#设计模式(2)——工厂模式
- 1418 抱歉 ACM 欧拉公式
- Fiddler 会话过滤功能
- 设计模式之访问者模式(Visitor )