Android--使用Gson解析JSON数据
Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率;本文将介绍两种方法解析JSON数据,需要的朋友可以参考下 Json是一种类似于XML的通用数据交换格式,具有比XML更高的传输效率. 从结构上看,所有的数据(data)最终都可以分解成三种类型: 第一种类型是标量(scalar),也就是一个单独的字符串(string)或数字(numbers),比如"北京"这个单独的词。...
View ArticleAndroid--屏幕适配方案
原文网址:http://blog.csdn.net/lmj623565791/article/details/45460089 1、概述...
View ArticleAndroid 蓝牙开发(八)hfp接听、挂断电话
转载请注明出处:http://blog.csdn.net/vnanyesheshou/article/details/71429860 本文已授权微信公众号 fanfan程序媛 独家发布 扫一扫文章底部的二维码或在微信搜索 fanfan程序媛 即可关注 继续研究hfp相关功能。蓝牙耳机可以控制手机接听、拒接、挂断电话,拨打电话等功能。本文主要分析下起这些操作的大致流程。...
View Article最新版本React Native实现JsBundle预加载,界面秒开优化
前些时间和大家分享了一系列关于React Native For Android的文章。这两天又对React Native增量热更新的博客进行了填充,增加了图片增量更新的实现方案和过程。有兴趣的朋友可以去浏览详细内容。为了方便,我将前几篇的博客链接贴出来供大家参考: Android原生项目集成React Native React Native与Android通信交互 React Native...
View Article一起来造一个RxJava,揭秘RxJava的实现原理
RxJava是一个神奇的框架,用法很简单,但内部实现有点复杂,代码逻辑有点绕。我读源码时,确实有点似懂非懂的感觉。网上关于RxJava源码分析的文章,源码贴了一大堆,代码逻辑绕来绕去的,让人看得云里雾里的。既然用拆轮子的方式来分析源码比较难啃,不如换种方式,以造轮子的方式,将源码中与性能、兼容性、扩展性有关的代码剔除,留下核心代码带大家揭秘RxJava的实现原理。 什么是响应式编程...
View ArticleAndroid 项目开发填坑记 - 获取系统语言(兼容7.0)
如果移动端访问不佳,请访问–> Github版 关键词:Android7.0 、系统语言 、顺序不一致 获取系统当前语言是一个比较常用的功能,在 Android 7.0 系统上旧函数获取到的当前系统语言并不正确,或者说从 Android 7.0 起,Android 系统语言的规则变了。 背景 下面是未适配 Android 7.0 的代码: // 获取 Locale 的方式有二 Locale...
View Article使用Olami SDK实现一个语音输入数字进行24点计算的iOS程序
前言 在目前的软件应用中,输入方式还是以文字输入方式为主,但是语音输入的方式目前应用的越来越广泛。这是一个利用 Olami SDK 编写的一个24点iOS程序,是通过语音进行输入。 Olami SDK的介绍在下面这个网址 https://cn.olami.ai/wiki/?mp=sdk&content=sdk/ios/reference.html 在这个网址中详细的介绍了Olami...
View Article再谈布局之 UIStackView
UIStackView 是 iOS9 新增的一个布局技术。熟练掌握相当节省布局时间。 UIStackView 是 UIView 的子类,是用来约束子控件的一个控件。但他的作用仅限于此,他不能被渲染(即用来呈现自身的内容),类似于 backgroundColor 等。 这个控件只有4个属性: Axls: 子控件的布局方向,水平或者垂直; Alignment: 设置非轴方向子视图的对齐方式,类似于...
View ArticleUITabBarController实现Tab切换
在很多的应用中,基本都是使用Tab方式进行模块间的切换。在Android中很多控件可以实现这类效果,TabLayout、TabHost… 而在iOS中系统为我们提供了UITabBarController类来实现Tab页面之间的切换。有几个页面我们就创建几个UINavigationController,然后通过tabbar.viewControllers = @[navi1, navi2,...
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 ArticleAndroid WebView硬件加速渲染网页UI的过程分析
Android WebView作为App UI的一部分,当App UI以硬件加速方式渲染时,它也是以硬件加速方式渲染的。Android WebView的UI来自于网页,是通过Chromium渲染的。Chromium渲染网页UI的机制与Android App渲染UI的机制是不一样的。不过,它们会一起协作完成网页UI的渲染。本文接下来就详细分析Android...
View ArticleiOS10.3后允许App运行中变更App图标
引 在iOS10.3中,苹果提供了一个比较有意思的功能。 不知道大家注意到没有,iPhone自带的日历和始终App的图标是实时显示当日日期和当时的时间的,时间的秒钟还会走动,这其实就做到了在安装完App后,还能自由地变更App的图标,而现在,我们普通的开发者也可以实现了。但是这只能在iOS10.3之后实现。 效果如下: 可以看到在点击按钮操作后将App的图标更换掉了。...
View Article浅谈 Masonry 布局框架
Masonry 是一个轻量级的布局框架,拥有自己的描述语法,采用更优雅的链式语法封装自动布局,简洁明了并具有高可读性,而且同时支持 iOS 和 Max OS X。Masonry 是一个用代码写 iOS 或 OS 界面的库,可以代替 Auto layout。 Masonry 使用注意点 使用 mas_makeConstraints 方法的元素必须事先添加到父元素的中,例如 [self.view...
View ArticleinitWithFrame,intWithCoder与awakeFromNib回顾与小结
很多时候对一些比较基础的知识点没有深究,只是一味地按照所谓的套路写程序,难以真正进步。很多习惯性的编程模式之所以成为“规范”,自有其道理。作为一名优秀的程序员,要知其然,更要知其所所以然。每一个细小的知识点都不容放过。 initWithFrame , intWithCoder 与 awakeFromNib...
View Articleffmpeg实战教程(七)Android CMake avi解码后SurfaceView显示
在上一篇文章中实现了Android平台MP4解码YUV数据, 本篇我们实现Android平台解码avi并用SurfaceView播放。 先上图看效果: 思路: 1.把封装好的视频数据解码为YUV 2.YUV数据转化为RGB。 3.一帧一帧的传给SurfaceView显示出来 PS:...
View Article