在安卓工程上增加了一个C库,自然的要使用JNI。编译通过之后,吾兴冲冲的安装到手机上进制测试,直接退出。怎么办?赶紧看看LOG,说是没有链接错误,意思是缺少对应的接口。奇怪的是,报错的接口与尝试接口(tried)其实是一样的。以吾这智商,是没想明白。怎么办?

  • 是不是参数问题?吾把参数去掉,还是报错。
  • 是不是写法不对?原来的写法使用宏展开,没有头文件。吾于是增加了一个头文件,使用标准写法。还是报错。

  一时垂头丧气,这怎么办啊?后来想,是不是JNI新旧两种方式互相冲突,不能共存?因为同工程中另外一个JNI使用的是NDK registerNativeMethods,功能正常。后来终于想起来了:新库需要加载两个so,吾只加载了一个,当然出错了。

开发工程师们看过来!
不容错过的勤学福利
科锐独家行业报告
阿里技术大牛的高质量课程
立即扫码免费领取

JNI新旧两种方式不冲突,可以共存相关推荐

  1. win7使用android字体文件,字体在哪个文件夹里 win7怎么安装新字体(两种方式)

    对于系统的字体,我们一般都是作为精简系统的选择,为例节省系统盘的空间,把多余的字体都给处理掉,但是做设计师.编辑等职业因为工作需求,用到的字体会很多,所以就需要安装大量的字体.那么自己到底存放在那个文 ...

  2. 通达OA 新旧两种数据库连接方式

    老的连接方式: include_once("/inc/conn.php"); $cursor = exequery($connection,$query); 新的连接方式: inc ...

  3. 关于数据中台建设,“新旧”两种思路对比

    数据中台是商业模式从IT时代进入DT时代的必然产物,是从流程驱动转向数据驱动的必然结果.以数据中台为导向,凭借数据证明或判断决策,形成数据服务思维,最终实现企业数字化转型. 数据中台建设模式颠覆了传统 ...

  4. 新旧两种方法给年份year,定义一个宏,以判别该年份是否闰年。提示:宏名可以定义为LEAP_YEAR,形参为y,既定义宏的形式为 #define LEAP_YEAR(y)

    方法一:#include<stdio.h> #define LEAP_YEAP(y) (y%4==0)+(y%100==0)+(y%400==0) int main() {     int ...

  5. java如何做全局缓存_传智播客JNI第七讲 – JNI中的全局引用/局部引用/弱全局引用、缓存jfieldID和jmethodID的两种方式...

    讲解JNI中的全局引用/局部引用/弱全局引用.缓存jfieldID和jmethodID的两种方式,并编写两种缓存方式的示例代码. 1.从Java虚拟机创建的对象传到本地C/C++代码时会产生引用,根据 ...

  6. 利用反射机制创建新类的两种方式及比较

    [0]README 0.1) 本文描述+源代码均 转自 http://blog.csdn.net/fenglibing/article/details/4531033 , 旨在深入理解 如何利用反射机 ...

  7. 两种方式实现登录跳转新窗体

    两种方式实现登录跳转新窗体 直接隐藏登录窗体 显示主界面 //验证是否有此用户 int? flag = studentService.StudentLogin(userNameText.Text.Tr ...

  8. 通过反射创建新类示例的两种方式及比较

    通过反射创建新类示例的两种方式及比较 作者BLOG:http://blog.csdn.net/fenglibing 通过反射创建新的类示例,有两种方式: Class.newInstance() Con ...

  9. 【我的C语言学习进阶之旅】介绍一下NDK开发中关于JNI函数的两种注册方式:静态注册和动态注册

    目录 一.要介绍本篇博客的原因 二.静态注册 2.1 实现原理 2.2 实现过程 2.3 弊端 2.4 示例 三.动态注册 3.1 实现原理 3.2 实现过程 3.3 优点 3.4 示例 一.要介绍本 ...

  10. 服务器主机GHOST装系统,大神请绕道!科普电脑装系统最基本的两种方式,萌新千万不要错过...

    原标题:大神请绕道!科普电脑装系统最基本的两种方式,萌新千万不要错过 Hello大家好,我是兼容机之家的小牛! 电脑装系统用GHOST好,还是原装版本好?这是很多小伙伴疑惑的问题,那么让我们来具体分析 ...

最新文章

  1. html社交模板,Olympus – 社交网HTML静态模板
  2. html 载入中,用纯CSS实现加载中动画效果
  3. IOS 文件读取4种方法 转字符串 和data
  4. MpAndroidChart源码修改之饼状图添加标志线
  5. linux 时间会跳吗,linux系统时间暂时跳跃
  6. RuntimeError: Failed to register operator torchvision::_new_empty_tensor_op. +torchtorchversion版本匹配
  7. 解决Rails找不到Javascript的错误
  8. Security log is full,only administrator can log on to fix the problem(安全日志满了)
  9. html内容超出不自动滚动,16.css: overflow使用 例: 固定div大小,不让内容超出div
  10. Sentaurus TCAD模型创建、激活电极等
  11. 3ds Max2021软件安装包+安装教程
  12. linux服务器安装字体,删除字体,详细步骤
  13. 【SQL注入技巧拓展】————14、Bypass 360主机卫士SQL注入防御(附tamper脚本)
  14. Hazelcast介绍
  15. C语言中快排函数——qsort()
  16. AD16摆放元件丝印
  17. windows 网络远程连接samba,并修改windows默认连接samba端口445到指定端口(支持监听ipv6 及ipv4 IP地址)
  18. iOS中更新版权 Copyright
  19. 03-QNX Shell常用指令
  20. 中文英文翻译-英翻中文在线翻译

热门文章

  1. 全科初高中智能学习机器人_智能学习机器人推荐,阿尔法蛋大蛋2.0学习内容智能推荐...
  2. MySQL抽稀_Android GPS定位轨迹抽稀之道格拉斯-普克(Douglas-Peuker)算法详解
  3. java框架快速使用mysql_阿里java架构师教你怎么用mysql怒怼面试官
  4. python竞赛内存_python的内存机制
  5. 我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比
  6. 浅谈找到***点后的处理(清理***)
  7. Android应用神器:高级终端Termux
  8. 性能测试学习线路图(建议)
  9. ubuntu14安卓phalcon
  10. 【转】如何删除一个repository(仓库)