Android WebView硬件加速渲染网页UI的过程分析
Android WebView作为App UI的一部分,当App UI以硬件加速方式渲染时,它也是以硬件加速方式渲染的。Android WebView的UI来自于网页,是通过Chromium渲染的。Chromium渲染网页UI的机制与Android App渲染UI的机制是不一样的。不过,它们会一起协作完成网页UI的渲染。本文接下来就详细分析Android...
View Article再谈 GCD
之前针对项目简要写过一篇关于 GCD 的文章,但比较偏向应用,有些概念没有细致入微地去解释,而这些概念组合在一起十分头疼,今天就来梳理梳理,理论加实践。 GCD 中涉及到两个十分重要的概念, 就是任务和队列。 任务(Task): 你需要执行的操作,说白了就是一段代码,在GCD中,任务就是一个block; 队列(Queue):...
View ArticleAndroid绘图基础之Canvas & Paint & Rect & RectF
转载请注明出处:http://blog.csdn.net/crazy1235/article/details/73611978 Canvas Canvas – 画布 方法名 含义 drawArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle, boolean...
View Article细说并发4:Java 阻塞队列源码分析(上)
上篇文章 趣谈并发3:线程池的使用与执行流程 中我们了解到,线程池中需要使用阻塞队列来保存待执行的任务。这篇文章我们来详细了解下 Java 中的阻塞队列究竟是什么。 读完你将了解: 什么是阻塞队列 七种阻塞队列的前三种 ArrayBlockingQueue 看它的主要属性 构造函数 四种添加元素方法的实现 四种获取元素的实现 LinkedBlockingQueue...
View ArticleHololens入门之使用Vuforia
Hololens入门之使用Vuforia Hololens中使用Vuforia的教程已经一堆了,之前没有时间,项目中也没这个需求要用到Vuforia进行开发,所以一直没去研究过,昨天得空,参考网上一些教程构建了一个最简单的demo,写篇文章记录下流程。 1、去官网上创建一个license 2、创建数据库 3、在数据库中添加要识别的对象,本文以二维图片作为识别对象...
View ArticleAndroid Multimedia框架总结(二十八)NuPlayer到OMX过程
NuPlayer是谷歌新研发的。 AwesomePlayer存在BUG,谷歌早已在android m 版本中弃用。 sp<MediaPlayerBase> MediaPlayerService::Client::createPlayer(player_type playerType) { // determine if we have the right player type...
View Article从AILD与bindService谈Binder进程间通信原理(上)
从AILD与bindService谈Binder进程间通信原理(上) 前言 Android进程间通信可以分为三种方式:Binder机制,文件读写,Socket机制。这篇文章主要就是来谈谈Binder机制实现进程间通信的原理,主要分析AIDL进程间通信和bindService方法涉及的进程间数据传输相关逻辑。 AIDL实现进程间通信: 通过AIDL具体如何实现进程间通信,我推荐阅读以下文章:...
View Article目前最流行的运行时权限请求框架PermissionsDispatcher、RxPermissions和easypermissions的使用和对比
本文出处: 炎之铠csdn博客:http://blog.csdn.net/totond 炎之铠邮箱:yanzhikai_yjk@qq.com 本文demo地址:https://github.com/totond/PermissionsApplyDemo 本文原创,转载请注明本出处! 前言...
View ArticleIonic跨平台项目(九) 自定义cordova plugin(iOS)
插件的意义 plugin(全文都叫插件)是一个注入代码的包,它允许app呈现的Cordova webview与其运行的native平台进行通信。插件可以访问基于Web的app通常不可用的设备和平台功能。所有主要的Cordova API功能都可以实现为插件,还有许多其他功能可用于实现诸如条码扫描器,NFC通信或定制日历界面等功能。您可以在Cordova插件搜索页面上搜索可用的插件。...
View ArticleAndroid 低功耗蓝牙的多设备连接与数据接收,简单实现
不知不觉,通宵加班已经快两个星期了,快两年没这么干活了。 起因就是项目的一个功能,蓝牙多连接。应用同时连接多个设备,等待接收数据,处理后显示图表。 在这之前我没有搞过蓝牙方面的东西,只能从基础开始边看边干。 最开始不知道,看的是传统蓝牙的连接与传输,几天过后,发现与低功耗蓝牙不一样啊,又针对低功耗蓝牙开始找资料。 低功耗蓝牙支持的api最低是18。...
View Article我要15天消化掉Android官方API指南--封存
暂存到第四天,笔者近来学习任务重,可能有一段时间不能更新Android相关的内容了。但是,其他技术贴还是会发的,用自己想用的,学自己想学的,咱们一起加油。 学就要学的潇洒,给我一点点时间,让我先把JavaWeb搞定。未来我觉得客户端会变革,Hybird势必要成体系的推广。所以大家要是局限于Android的原生开发,不太好,多多学习。路在脚下,七老八十再休息。 ========Fire !!!!...
View Article地球上第一款测身高的安卓手机应用——AR 测身高
效果预览 原理概述 开发思路 寻找地面坐标 寻找头顶坐标 一些经验 建了个 QQ 群(群号:524439406),用于交流 tango 技术,欢迎加入: 本文介绍一个运行于 tango 手机的应用 demo,功能是测量人体高度。 效果预览 原理概述 该应用主要使用了 tango 的深度感知技术。...
View ArticleGLSurfaceView的简单分析及巧妙借用
学习在Android中使用OpenGLES,就不得不提到一个控件:GLSurfaceView。本篇博客将介绍GLSurfaceView的基本使用、GLSurfaceView的源码的简单分析,以及使用GLSurfaceView渲染图像到SurfaceView/TextureView或者PBuffer上等。 关于GLSurfaceView...
View Article【android x86 5.1.1】 adb install 流程分析
adb install 流程解析 相关文件及函数调用流程 adb install 流程 system/core/adb/adb.c àmain() system/core/adb/commandline.c àadb_commandline() system/core/adb/commandline.c àinstall_app() system/core/adb/commandline.c...
View ArticleSTM8S_008_WDG独立看门狗和窗口看门狗
相关标题:STM8S看门狗、IWDG、WWDGⅠ、写在前面STM8S看门狗WDG分为两类:IWDG:Independent WatchDog独立看门狗WWDG:Window WatchDog窗口看门狗 独立看门狗模块可以用于解决处理器因为硬件或软件的故障所发生的错误。它由一个内部的128kHz的LSI阻容振荡器作为时钟源驱动,因此即使是主时钟失效时它仍然照常工作。...
View ArticleAndroid应用层制作LED指示灯
在Java应用层修改LED指示灯的颜色,这个花了我半天时间, 才实现该功能! public class LEDActivity extends Activity implements View.OnClickListener { private static final String TAG = "LED"; Button mLedTest; int mLedStatus = 0; private...
View Article知识点x:单例模式的实现(插更)
抓住6月的尾巴插更一篇单例模式,关于排序算法应该要7月更完。毕竟写完这篇博客之后还要用四天的时间去复习两门考试并且完成两个5000字的小论文,伤不起啊。。。。。节省时间,话不多说,上知识点!!!...
View Article神奇的 ViewDragHelper,让你轻松定制拥有拖拽能力的 ViewGroup
为了吸引大家的注意力,先给大家看一张动图: 相信这种效果大家都见过吧?我第一次见到这样的效果时,心里也痒痒的,急于想实现这种功能,后来因为拖延症的问题,就一直没有去弄这件事。现在这段时间,工作比较轻闲,所以对自己几年 Android 生涯所运用的技术做一些总结与思考。拖拽这种功能正好可以形成一个主题。如题目所示,今天博文的目标就是介绍与分析 ViewDragHelper 这个类。...
View Article