
android
文章平均质量分 67
Jenkins2012
音视频开发爱好者
展开
-
Android系统裁剪:手把手教你如何进行系统裁剪
内容有点长,想系统裁剪,这篇文章足矣,看完会对系统裁剪及系统有更深的认识。前言:android系统裁剪优化一直是各个厂商定制产品的关键步骤,包括浅层次的去除不必要的apk(android apk裁剪定制 )和深层次的裁剪整个编译系统和框架层. android作为开源系统,各个产品同质化严重,只有深层次的裁剪定制自己的系统,才能充分体现各自产品的特性,也是优化各自产品的关键步骤,此篇文章主要关注编译系统和框架层的裁剪,抛砖引玉, 还有很多地方可以改进的地方,基于工作中时间限制,没有彻彻底底的进行,此处..转载 2021-01-05 13:25:52 · 5120 阅读 · 1 评论 -
framework MediaCodec解码流程分析
MediaCodec到底是硬解码还是软解码?MediaCodec 调用的是在系统中register的解码器,硬件厂商会把自己的硬解码器register进来,就是硬解,如果他register一个软解码器,则是软解。MediaCodec并不是真正的codec,真正codec是在openMax,要保证是硬解,在MediaCodec里有接口可以枚举所有解码器,每种编码可能都有多个解码器,区分哪原创 2017-12-26 09:17:55 · 2515 阅读 · 0 评论 -
rk3399开发adb网络调试
1.从朋友那拿了一个rk3399开发版,确忘了要官网使用说明。。。大傻子,adb devices 找不到设备,adb connect ip也拒绝连接?安卓7.1也启动了开发模式,USB调试开关。还是不行,网上找了一大堆资料。最终还是官网给力。哎,详见官网adb说明。http://wiki.t-firefly.com/zh_CN/Firefly-RK3399/adb_use.html...原创 2019-12-20 11:33:41 · 2533 阅读 · 0 评论 -
基于Android-Framework视频H264/H265解码
主要解码部分代码void VideoPlayChannel::Decode(){ int ret =-1; int dec_out; int err_cnt =0; int dec_cnt =0; uint32_t length =0; uint64_t cur_time =0,last_time =0; uint32_t sleep...原创 2018-12-06 18:00:05 · 1228 阅读 · 0 评论 -
Android系统适配蓝牙遥控器键值Hi3798MV100
最近有个项目机顶盒要适配蓝牙遥控器,我们原来的盒子是红外的遥控器。从某宝买回来几款通用的遥控器,最简单的一款用cat /proc/bus/input/devices 命令查看name是BESCO KSL81P304在网上查找很多Android系统适配蓝牙遥控器键值相关的文档,发现没有一个彻底解决了我的问题。先说我遇到的问题1.蓝牙遥控器的HOME键点击后程序会回到android默认...原创 2018-12-03 15:30:04 · 6217 阅读 · 0 评论 -
android 操作系统文件报错 Read-only file system
操作设备文件系统上的文件结果遇到 cp: /system/etc/set_eth0.sh: Read-only file system解决办法:1. 最简单的,adb remount2. 不行的话,adb shell su之后将文件系统remount为读写权限: mount -o remount rw /system。出于安全考虑,记得完事后remount回只读: mount -o ro...原创 2018-09-05 15:51:52 · 1515 阅读 · 0 评论 -
linux中raw socket 和 libpcap中BPF过滤功能分析
项目描述:在我们的安卓系统终端中,既要支持以太网(基于MAC地址的二层网络传输通道)通信,又要支持互联网通信,我们其中一个进程中通过raw socket 接收eth0口的以太网数据,过滤掉其他MAC数据。另外一个进程中利用libpcap接收互联网数据同时转发到其他无线网卡。具体实现参考不少网上资料。代码如下:基于raw socket实现:void v2v_setFilter(i...原创 2018-08-03 16:08:03 · 1802 阅读 · 0 评论 -
NDK 编译jni头文件的javah工具配置
基于Android Studio的javah头文件配置设置截图:具体参数:Program: C:\Program Files\Java\jdk1.8.0_144\bin\javah.exeParameter: -classpath . -jni -d $ModuleFileDir$/src/main/jni $FileClass$Working directory: ...原创 2016-03-29 13:27:30 · 524 阅读 · 0 评论 -
Android 通过/dev/graphics/fb0 截取视频图像
在Android截屏技巧中有很多种,要想截取SurfaceView视频图像,普通的Android截屏API无法满足需求,经过本人的查找网上资料,有一种方法特别适合截取视频图像。关于dev/graphics/fb0 即FrameBuffer,可以参考http://blog.csdn.net/a1w0n/article/details/37727971;下面我说主要的实现流程:im原创 2018-01-12 16:43:51 · 2247 阅读 · 0 评论 -
查看android盒子arm版本,系统版本,网卡配置,7.0系统文件挂载方式
1.arm版本查看在android studio终端Terminal下执行,或者远程连接安卓盒子执行如下命令adb shell getprop ro.product.cpu.abi2.系统内核及安卓版本查看cat /proc/version3.网卡配置cd /etcbusybox vi set_eth0.sh4.Android 7.0 IP地址配置/data/m...原创 2019-04-24 18:15:36 · 2731 阅读 · 0 评论 -
android源码中编译ko文件,rtl8821au驱动文件
本文主要记录在Hi3798M 4.4版本的源码中编译ko文件的宏1.HiSTBAndroidV600R003C01SPC030/device/hisilicon/Hi3798MV200/BoardConfig.mk添加如下:# RTL8821AU WiFi+BT ComboBOARD_BLUETOOTH_WIFI_DEVICE_RTL8821AU := yifeq ($(B...原创 2019-05-20 13:45:01 · 2299 阅读 · 1 评论 -
android studio cmakelist 加载第三方库及NDK版本不兼容
1.android studio 3.0以上对ndk支持CMakelist.txt模式,原来的Android.mk,Application.mk逐渐被取代。.cmakelist.xml修改# For more information about using CMake with Android Studio, read the# documentation: https://d.a...原创 2019-07-05 14:05:52 · 1323 阅读 · 0 评论 -
Android Framework中编译汇编文件出错orreqs
在Android 4.4源码编译正常,在Android 7.0编译ERROR,可能和编译环境中的mk文件配置有关系1.编译器没有为neon协处理器指令配置 jsimd_arm_neon.S2.你要在Android.mk中添加LOCAL_ARM_NEON:=trueLOCAL_SRC_FILES:=jsimd_arm_neon.S.neon再编译就可以通过...原创 2019-07-17 15:33:47 · 386 阅读 · 0 评论 -
Android audio关于AudioRecord AudioTrack拾音例子(c++源码)
请参考我哥们的一篇实现,非常棒!https://blog.csdn.net/qq_38907791/article/details/90174049原创 2019-07-17 16:23:32 · 696 阅读 · 0 评论 -
最近跑海思安卓7.0 系统代码,编译一个简单的Hello程序
------------------------------------------------------------------------------1.Android.mkLOCAL_PATH := $(call my-dir)prebuilt_stdcxx_path := prebuilts/ndk/current/sources/cxx-stl/gnu-libstdc+...原创 2019-07-31 16:25:22 · 1247 阅读 · 0 评论 -
android binder进程间互联通讯Demo
本Demo基于Android 7.0 sdk,主要实现内容:1.客户端进程调用服务端进程接口,向服务端发起指令或数据传递2.服务端回调客户端接口,将处理结果反向传输给客户端进程主要实现基于IInterface的接口ICodecService,服务端的代理类BpCodecService,客户端回调的代理类BpClientCallback。主要文件有:main_codec_cl...原创 2019-08-23 15:48:38 · 580 阅读 · 0 评论 -
android udp推流VLC预览
ANDROID使用UDP向服务端发送裸h264数据流,发现3.0.7版本的VLC无法播放。后台回退版本版2.2.2版本,可以正常解码h264裸流。通过抓包分析:h264数据正常,本地采集也可以播放(H264BSAnalyzer-雷神作品)确定和播放器有关系。正常版本2.2.2延时设置:欢迎关注,会不会分享流媒体,音视频,安卓相关内容。后期会组织...原创 2019-08-27 15:45:32 · 1218 阅读 · 0 评论 -
Android 模拟按键截屏技巧
模拟按键(同时按下音量-和电源键)截屏,对于surfaceview播放视频图像的view也可以实现动态截图。实现方法:1.编写模拟按键的截屏脚本文件。如下:#! /system/bin/shsendevent /dev/input/event0 1 114 1 sendevent /dev/input/event0 0 0 0sendevent /dev/inp原创 2018-01-12 11:26:01 · 1763 阅读 · 0 评论 -
android logcat 终端调试应用
linux终端中用adb logcat命令查看android系统和应用的log,按ctrl+c中断输出log记录。logcat日志中的优先级/tag标记:android输出的每一条日志都有一个标记和优先级与其关联。优先级是下面的字符,顺序是从低到高:V — 明细 verbose(最低优先级)D — 调试 debugI — 信息 infoW — 警告 warn原创 2017-12-19 11:04:42 · 355 阅读 · 0 评论 -
Android 日常开发总结的技术经验 60 条
1. 全部 Activity 可继承自 BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2. 数据库表段字段常量和 SQL 逻辑分离,更清晰,建议使用 Lite 系列框架 LiteOrm 库,超级清晰且重心可以放在业务上不用关心数据库细节。3. 全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.转载 2016-03-08 09:11:54 · 475 阅读 · 0 评论 -
同等尺寸下为何android压缩出来的图片质量不如iphone
同等尺寸下为何android压缩出来的图片质量不如iphone原创 2016-02-24 17:49:07 · 1301 阅读 · 0 评论 -
alibaba freeline 集成步骤
中文解说 http://blog.csdn.net/a345770381/article/details/52523652freeline原理链接:https://yq.aliyun.com/articles/59122freeline 开源地址:https://github.com/alibaba/freeline?spm=5176.100239.blogcont59122.9.42转载 2016-09-20 10:53:00 · 450 阅读 · 0 评论 -
ExecutorService 线程池使用和分析
android线程池的理解,晚上在家无事 预习了一下android异步加载的例子,也学习到了一个很重要的东东 那就是线程池+缓存 下面看他们的理解。[size=1.8em]Handler+Runnable模式我们先看一个并不是异步线程加载的例子,使用 Handler+Runnable模式。这里为何不是新开线程的原因请参看这篇文章:Android Runnable 运行在那转载 2016-09-08 10:17:15 · 1418 阅读 · 0 评论 -
Android多分辨率适配框架
Android多分辨率适配框架(1)— 核心基础Android多分辨率适配框架(2)— 原理剖析Android多分辨率适配框架(3)— 使用指南转载 2016-12-03 09:40:33 · 1330 阅读 · 0 评论 -
Android ImageView 正确使用姿势
本文主要介绍了 ImageView 的相关重要方法,从源码角度剖析了一些容易令人混淆或百思不得其解的问题。一、正确合理使用ImageView的src和backgroundsrc :为 ImageView 原图内容,存放原图大小,不会被拉伸;background:为 Imageview 的背景,会根据 ImageView 给定的长宽进行拉伸;在 ImageView转载 2016-11-23 21:15:29 · 828 阅读 · 0 评论 -
Java多线程 -- Map容器性能比较
Java多线程 -- Map容器性能比较版权声明:本文为博主原创文章,未经博主允许不得转载。单线程单线程环境下可以使用HashMap和TreeMap。TreeMap上遍历返回结果是按照Key排序的。测试方法记录写入Map中N条记录的时间,单位毫秒。记录从N条记录的Map中读取10W条记录的时间,单位毫秒。N=25W,50W,75W,100转载 2016-11-23 21:39:34 · 538 阅读 · 0 评论 -
Java Thread join() 用法
Java Thread中, join() 方法主要是让调用该方法的thread完成run方法里面的东西后, 再执行join()方法后面的代码。示例:class ThreadTesterA implements Runnable { private int counter; @Override public void run() {原创 2016-11-23 21:49:55 · 498 阅读 · 0 评论 -
xwalkview 替换掉webview 注意事项
import org.xwalk.core.XWalkView; javascript 交互应用需要将 @org.xwalk.core.JavascriptInterface替换掉 @JavascriptInterface否则出现调用js函数无效。原创 2017-02-09 16:37:45 · 3068 阅读 · 0 评论 -
android 图片压缩算法
由源图像压缩为固定目标尺寸的图像。1.求源宽,高为计算压缩尺寸做准备。BitampFactory.Options.inSampleSize 控制BitmapFactory分配恰当的内存空间。BitampFactory.Options.inJustDecodeBounds 为true可以在decodeFile并且不分配内存空间,但可以计算出源图像的width和height。原创 2017-02-22 14:20:27 · 844 阅读 · 0 评论 -
Android Message 内存泄漏问题
在Android 4.1以上SDK中Message类的回收修复之前的内存泄漏bug在Android 4.4版本的Message类回收函数实现如下: /** * Return a Message instance to the global pool. You MUST NOT touch * the Message after calling this func原创 2017-03-08 16:55:09 · 1465 阅读 · 0 评论 -
adb设备连接以及文件拷贝
1.通过IP连接。首先确保PC和android 设备之间在同一网段,ping命令测试正确。2.PC端要有adb工具。在windows系统可以通过sdk包里面的,找到platform-tools,tool目录,并将目录配置到环境变量,如下变量名:Android_ADB变量值:C:\Android\sdk\platform-tools;C:\Android\sdk\tools在原创 2017-12-13 13:54:52 · 1917 阅读 · 0 评论 -
android 终端运行 vim / vi 命令执行失败 busybox解决之
在智能android 终端开发中,会遇到修改终端mac地址或者ip地址的情况。如:root@Hi3798MV100:/ vi /etc/set_eth0.sh/system/bin/sh: vi: not found 的问题。解决方法:采用busybox vi /etc/set_eth0.sh 命令即可正确打开文件。关于busybox 介绍 百度百科如下:BusyBox原创 2017-12-13 15:40:34 · 9713 阅读 · 0 评论 -
Android之lunch命令
在编译android framework 层代码时遇到的问题。错误信息如下:Entering directory ..make: Nothing to be done for all_modulesmake: Leaving directory " "问题原因:没有选择编译目标平台 解决方法:添加选择平台编译选项具体步骤:1.source build原创 2017-12-13 18:38:23 · 2784 阅读 · 1 评论 -
代码查看工具source insight 安装破解说明
熟悉了Android framework源码编译工具,熟悉了adb ,ndk-build,mm,mmm,m,busyboxam等常用命令。下面就开始查看framework代码的预览工具了,目前主流推荐的就是source insight,我们公司的同事都在用这个代码查看工具。安装破解方法,以下为摘自博客:https://www.cnblogs.com/Napoleon-Wang/原创 2017-12-14 10:12:30 · 821 阅读 · 0 评论 -
webrtc 初见rtcmulticonnection和XWalkView
WebRtc 初见 一、 服务端 源码地址https://github.com/muaz-khan/RTCMultiConnection 文档说明http://www.rtcmulticonnection.org/docs/ 1.1 RTCMultiConnection是基于WebRTC进行实时连接的开源多人音视频通讯服务器,最新版本为V3.4.2. 1.2服务器部署(部署环境为ubun原创 2016-12-16 13:58:44 · 2370 阅读 · 0 评论 -
Android 开发规范1.0
命名规范java 代码命名规范java代码中不出现中文,注释中可以出现中文,变量用名词,方法用动词表示。函数内局部变量命名只能包含字母,且全部为小写。前缀小写+用途首字母大写其他小写。 1.1.3 静态常量,枚举类型。 一律使用大写+“原创 2016-03-29 13:33:06 · 369 阅读 · 0 评论