android web混合开发 混合开发实例——JS与Java的交互
今天说说安卓混合开发。 曾经有一个话题是web终会一统app,然后我们看到随着时间的推移。web越来越强大(H5啊,js各种框架啊),但同时原生app也在不断发展。 或许在将来还会再有这种话题论战,但目前,混合开发,结合web和原生app二者各自的优势,已经是众望所归了。...
View ArticleReact Native 自定义控件之验证码和Toast
React Native通过近两年的迭代和维护,最新版本已经到了0.45.1,关于最新版本的介绍请查看我之前的博客:0.45新特性。话说回来,尽管迭代的挺快,但还是有很多坑,很多基础的组件和API还是不完善。 今天给大家带来的自定义小专题,其实对于React Native来说,自定义组件的过程更像是Android、iOS的组合控件。大体步骤有如下几个步骤(不完全准确,但是方向大体准确):...
View Article我要15天消化掉Android官方API指南--第四天
今天全国大范围有雨,我也连续扯了三天,今天屯干货。 Intent是个好东西,我申请专利的软件产品,当时为了加速申请,写的代码很潦草。忘记了解决Activity声明周期,还好鄙人逻辑思维不差,要不然跳来跳去,非疯掉不可。这个图片大家随意看看就好,不用记,踩过一次坑,保证你终身难忘。编程有啥可背东西吗?你疯狂的踩坑,疯狂的积累,倒逼自己长脑子,长见识,岂不是人生乐事(我疯了,哈哈,别理我)...
View ArticleBase封装(二)-- 封装属于自己的Library(UI篇)
绪论 之前分享了一篇 Base封装(一)–我的最简MVP架构简单的封装了自己的MVP架构,至于BaseActivity和BaseFragment之前的文章都已经分享过了,只不过做了一些优化。接下来继续分享我的封装之路,今天要分享的是常用的UI,同样大家看到不合适的地方多多指正啊.. 常用组件...
View Article再谈 GCD
之前针对项目简要写过一篇关于 GCD 的文章,但比较偏向应用,有些概念没有细致入微地去解释,而这些概念组合在一起十分头疼,今天就来梳理梳理,理论加实践。 GCD 中涉及到两个十分重要的概念, 就是任务和队列。 任务(Task): 你需要执行的操作,说白了就是一段代码,在GCD中,任务就是一个block; 队列(Queue):...
View Article【stm32f407】I2C实验
一.I2C介绍 IIC(Inter-IntegratedCircuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。它是由数据线SDA和时钟SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,高速IIC总线一般可达400kbps以上。如图: I2C协议一共有6种协议信号 ① 空闲状态 ②...
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 ArticleHololens入门之使用Vuforia
Hololens入门之使用Vuforia Hololens中使用Vuforia的教程已经一堆了,之前没有时间,项目中也没这个需求要用到Vuforia进行开发,所以一直没去研究过,昨天得空,参考网上一些教程构建了一个最简单的demo,写篇文章记录下流程。 1、去官网上创建一个license 2、创建数据库 3、在数据库中添加要识别的对象,本文以二维图片作为识别对象...
View ArticleSVG在Android中的使用
你们还在为了手机的适配而烦恼吗???那我们可以采用矢量图标进行在项目中使用。无论是放大和缩小都不会导致失真的出现。 svg简介 SVG的 全称是 Scalable Vector Graphics,叫可缩放矢量图形。它和位图(Bitmap)相对,SVG 不会像位图一样因为缩放而让图片质量下降。它的优点在于节约空间,使用方便。...
View Article细说并发4:Java 阻塞队列源码分析(上)
上篇文章 趣谈并发3:线程池的使用与执行流程 中我们了解到,线程池中需要使用阻塞队列来保存待执行的任务。这篇文章我们来详细了解下 Java 中的阻塞队列究竟是什么。 读完你将了解: 什么是阻塞队列 七种阻塞队列的前三种 ArrayBlockingQueue 看它的主要属性 构造函数 四种添加元素方法的实现 四种获取元素的实现 LinkedBlockingQueue...
View Article目前最流行的运行时权限请求框架PermissionsDispatcher、RxPermissions和easypermissions的使用和对比
本文出处: 炎之铠csdn博客:http://blog.csdn.net/totond 炎之铠邮箱:yanzhikai_yjk@qq.com 本文demo地址:https://github.com/totond/PermissionsApplyDemo 本文原创,转载请注明本出处! 前言...
View Article从AILD与bindService谈Binder进程间通信原理(上)
从AILD与bindService谈Binder进程间通信原理(上) 前言 Android进程间通信可以分为三种方式:Binder机制,文件读写,Socket机制。这篇文章主要就是来谈谈Binder机制实现进程间通信的原理,主要分析AIDL进程间通信和bindService方法涉及的进程间数据传输相关逻辑。 AIDL实现进程间通信: 通过AIDL具体如何实现进程间通信,我推荐阅读以下文章:...
View ArticleIonic跨平台项目(九) 自定义cordova plugin(iOS)
插件的意义 plugin(全文都叫插件)是一个注入代码的包,它允许app呈现的Cordova webview与其运行的native平台进行通信。插件可以访问基于Web的app通常不可用的设备和平台功能。所有主要的Cordova API功能都可以实现为插件,还有许多其他功能可用于实现诸如条码扫描器,NFC通信或定制日历界面等功能。您可以在Cordova插件搜索页面上搜索可用的插件。...
View ArticleAndroid 低功耗蓝牙的多设备连接与数据接收,简单实现
不知不觉,通宵加班已经快两个星期了,快两年没这么干活了。 起因就是项目的一个功能,蓝牙多连接。应用同时连接多个设备,等待接收数据,处理后显示图表。 在这之前我没有搞过蓝牙方面的东西,只能从基础开始边看边干。 最开始不知道,看的是传统蓝牙的连接与传输,几天过后,发现与低功耗蓝牙不一样啊,又针对低功耗蓝牙开始找资料。 低功耗蓝牙支持的api最低是18。...
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 ArticleAndroid WebView简要介绍和学习计划
我们通常会在App的UI中嵌入WebView,用来实现某些功能的动态更新。在4.4版本之前,Android WebView基于WebKit实现。不过,在4.4版本之后,Android WebView就换成基于Chromium的实现了。基于Chromium实现,使得WebView可以更快更流畅地显示网页。本文接下来就介绍Android...
View ArticleAndroid WebView加载Chromium动态库的过程分析
Chromium动态库的体积比较大,有27M左右,其中程序段和数据段分别占据25.65M和1.35M。如果按照通常方式加载Chromium动态库,那么当有N个正在运行的App使用WebView时,系统需要为Chromium动态库分配的内存为(25.65 + N x...
View ArticleAndroid WebView执行GPU命令的过程分析
Android WebView使用的Chromium引擎,虽然没有自己的GPU进程或者线程,但是却可以执行GPU命令。原来,Android WebView会给它提供一个In-Process Command Buffer GL接口。通过这个接口,Chromium引擎就可以将GPU命令提交给App的Render Thread执行。本文接下来就详细分析Android...
View Article