
Android 开发
文章平均质量分 92
bitstream1024
bad coding to good coding
展开
-
Android NDK JNI开发知识笔记
文章目录Android NDK JNI开发知识笔记JNI Java层与C层数据传输C层获取Java层数据成员变量获取静态变量获取SampleC层调用Java层方法C层传数据到Java层参考阅读Android NDK JNI开发知识笔记本片文章主要记录自己在做Native开发过程中接触到的知识。JNI Java层与C层数据传输C层获取Java层数据成员变量获取将类数据从C层传到Java层主要通过以下几个步骤:使用GetObjectClass函数获取Java类的jclass指针利用GetFie原创 2020-11-04 20:51:07 · 762 阅读 · 0 评论 -
查看动态库.so中依赖库
最近因升级Android P需要去除编译出来的动态库中的libstdc++.so和libandroid.so的依赖,在进行验证是否去除相关库依赖时可以采用如下方法:1、使用readelf命令 在控制台使用命令readelf -d后面加上需要验证的动态库就可以看是否有去除了libstdc++.so和libandroid.so的依赖;readelf命令详情可见:https://blog....原创 2018-08-16 20:51:40 · 7864 阅读 · 0 评论 -
在Android Studio自己的项目中使用GitHub开源库
很早就知道在GitHub上有很多优秀的Android开源库,这两天在AS上配置了Git,然后尝试在GitHub上导了一个开源库到自己的项目中,结果特别酷炫,有一种发现新大陆的感觉。当然,过程难免会碰到一些问题,在这里和各位看官分享一下,希望能够帮到正在查阅相关问题的你。首先,在GitHub上找到你需要使用的开源库,然后将这个项目下载下来,例如我要使用这个开源库https://github.co...原创 2018-08-16 21:18:05 · 4172 阅读 · 5 评论 -
Android NDK error: undefined reference to 'log2'问题分析解决
在使用NDK进行JNI开发时,在静态库中使用了log2函数,然后在Android编译的时候报了这个个错误:error: undefined reference to ‘log2’;首先,google上走一番,基本可以确定这个问题是因为编译时链接不到’log2’这个函数所在的库而引起的,所以接下来就在从这个方向开始查。 PS:开发环境Eclipse+NDK17由于log2这是数学函数,所以需要...原创 2018-08-29 20:30:27 · 4154 阅读 · 0 评论 -
No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android问题解决
在使用Android Studio导入项目时,如果项目使用了NDK编程,有时会出现这样的错误:No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android,这个错误一般是出现在3.2版本的AS上,这是因为AS 3.2默认使用NDK18来编译C代码,而NDK18中将mips64...原创 2018-10-24 22:55:19 · 580 阅读 · 0 评论 -
获取Android 设备信息——build.prop
使用Android设备信息作为控制相关变量获取Android设备相关信息build.prop文件adb获取设备信息Android Jni编程C层获取设备信息获取Android设备相关信息在Android开发中有时需要获取设备信息,一般可以通过ADB命令来获取设备build.prop文件中记录的设备信息,有时也需要在代码中获取这些信息,如下介绍两种可以使用的方法,获取设备相关信息。build....原创 2018-12-04 21:55:27 · 3946 阅读 · 0 评论 -
Linux下使用adb命令的一些坑
Linux下使用adb命令的一个问题记录Linux adb采坑记录Linux安装Linux下adb命令使用Vim编辑器退出小结Linux adb采坑记录笔者最近接到一个很easy的任务,需要在Linux环境下连接手机,跑一个脚本,听起来十分的容易,但是忙忙碌碌也是折腾了一天。因此,特地记下一些中途可能踩到的坑,给自己一个提醒。Linux安装我们都知道Android内核其实是Linux,因此...原创 2018-12-10 21:49:01 · 16614 阅读 · 4 评论 -
Android开发在C层读取资源文件的两种方式
获取资源文件Android应用往往会有很多资源文件需要使用,这些资源文件一般会放在assets目录编进apk中,当apk中使用了so库的时候,由于编进apk的资源文件没有固定的目录,因此不能在C层通过设置路径的方式读取;这里提供两种C层读取资源文件的方式,仅供参考。1、C层获取AAssetManager指针JNI作为C和Java的桥梁可以完成许多工作,因此第一种方法可以通过Java层向C层传...原创 2019-01-12 21:01:23 · 3537 阅读 · 1 评论 -
undefined reference to ‘vtable for std::length_error‘ 问题分析
博主最近在使用NDK编译动态库时碰到一个特别奇怪的问题,我们需要调用同事给的静态库然后编译动态库,之前一直mk文件什么都是配置好了,一直也没有什么问题,在同事更新了一个库之后没有成功生成动态库,编译信息如下:/buildbot/src/android/ndk-release-r17/external/libcxx/include/stdexcept:0: error: undefined re...原创 2019-03-18 12:13:14 · 4413 阅读 · 0 评论 -
白话Android自定义ListView实现
Android ListView大概算是Android中最常用也是最难用的一个控件,老实说之前这个控件的用法着实让我别扭了一阵子,要知道看程序能懂,但离了书之后发现就是写不出来的感觉真是相当失落。好在,现在终于能够自己写出来的,所以在这里记录一下我写自定义ListView的过程,提供一个思路,希望能够帮助到一些初学者。真问主要分三个部分来介绍自定义ListView:基本的ListView...原创 2018-06-26 20:49:27 · 18705 阅读 · 3 评论 -
Android NDK编程中Application.mk和Android.mk写法
在Android编程中NDK编程是十分重要的一个部分, 利用NDK可以在很大程度上提高效率。由于,Android使用java语言,有时需要用C/C++语言完成一些耗时的工作,这就可以有NDK来完成。NDK编程中最重要的是要写好Makefile文件,这个文件说明了利用C/C++写的程序如何被编译为Android可用的so包。接下来我们就谈一谈Makefile文件的两个重要部分:Application...原创 2018-06-17 17:57:18 · 5643 阅读 · 0 评论 -
Android自定义AlertDialog实现
本文主要介绍AlertDialog的基本知识,以及使用自定义AlertDialog实现用户登录UI的程序。本文内容主要份分为以下几个部分:AlertDialog介绍自定义AlertDialog实现用户登录UIAlertDialog介绍Android对话框是提示用户作出决定或输入额外信息的小窗口。 对话框不会填充屏幕,通常用于需要用户采取行动才能继续执行的模式事件。Dial...原创 2018-06-14 23:17:59 · 6137 阅读 · 1 评论 -
YUV 常用图像格式 NV12、NV21、I420、YV12、YUYV 像素分布
介绍常见 YUV 和 RGB 图像像素分布原创 2018-03-17 21:28:06 · 56361 阅读 · 2 评论 -
NV21格式图像旋转 c++,平移、缩放实现代码
NV21格式图像旋转原创 2018-03-21 20:44:52 · 5396 阅读 · 0 评论 -
使用Android Studio开发NDK程序时出现couldn't find "lib××××.so的问题
NDK编程是Android开发的一项重要技能,利用JNI编程可以将许多复杂的处理过程用C/C++来进行,从而提高效率!不了解JNI的同学可以先看看这里 https://blog.youkuaiyun.com/cgwang_1580/article/details/79586710最近,采用Android Studio来进行ndk开发,由于Android Studio 2.2之后采用cmake的方法来...原创 2018-04-16 20:31:55 · 7008 阅读 · 0 评论 -
Eclipse && Android Studio 常用快捷键整理
刚接触Eclipse没有多久就因为项目需要开始学习使用Android Studio,因为个人比较喜欢用快捷键,初用AS的时候许多快捷键与Eclipse不同,会有些不习惯。虽然可以将AS的快捷键设置为同Eclipse一样,但我还是选择追随AS原本的设置,感觉比较作-_-||Ctrl+B 跳转到定义,这个太有用了 双击Shift 全局搜索,不仅可以搜文本,还能搜设置,解决了我很...原创 2018-04-07 13:31:17 · 305 阅读 · 0 评论 -
adb server is out of date. killing 可能的解决方法
在学习采用adb命令来调试Android程序的时候已经不记得多少次碰到这这个问题:打开Eclipse or Android Studio 发现不能找到设备,于是在dos窗口中输入命令adb shell,出现以下问题:adb devicesadb server is out of date. killing...ADB server didn't ACK* failed to star...原创 2018-04-07 13:41:46 · 2584 阅读 · 0 评论 -
TortoiseSVN出现Cleanup failed to process the following paths的解决办法
TortoiseSVN是一种集中式的版本控制器,在项目管理中经常使用;但是,在用TortoiseSVN的使用中有时会出现Check out错误的问题,根据提示进行clean up操作,会出现Cleanup failed to process the following paths的弹窗错误,出错的原因主要是上一次的操作还没有完成时点击了cancel,然后进行下次操作时就容易出现冲突,以下是解决...原创 2018-05-05 18:59:44 · 4343 阅读 · 1 评论 -
Android NDK开发测试
Android NDK开发 测试前言:Android开发小白,由于项目里用到NDK开发,在看代码的时候遇到了就稍微学习了一下NDK开发的一些简单知识,以后会在这块继续做补充…几个概念:JNI( Java Native Interface,Java本地接口 ),它提供了若干的API实现了Java和其他语言的通信(主要是C&C++)。.so(shared object,共享对象.........原创 2018-03-16 20:53:50 · 901 阅读 · 0 评论