Retrofit 原理简析
简介 Retrofit 所做的事情简单来说就是将你的 Http 业务 API --> Http 请求实现,类似于 Spring MVC 中的 Controller,它的主要任务是解析你的业务接口,从接口上获取你的 Http 接口协议,然后组装 Http 请求,进行异步 Request。 Retrofit 整合了多个组件,包括 JSON/XML 的 ORM...
View ArticleReact Native入门(四)之使用Flexbox布局
前言 flex,收缩,弹性的意思。 弹性(Flex)宽高 关于RN中宽高的设置,我们在上一篇设置Image加载网络图片的时候提到过,首先width和height是两个属性,用来指定一个组件的宽高,使用的时候可以这样: <Image source={pic} style={{width: 200, height: 200}} /> 也可以在外边定义,之后再引用,这个就不多说了!...
View ArticleAndroid源码解析四大组件系列(五)---广播的注册过程
广播这个篇幅打算用四篇文章来写,分别为广播注册、广播处理、广播的发送,广播深入细节理解,如果都写到一篇文章会比较长,所以拆分成四篇来写。 第一篇 Android源码解析—广播的注册过程 第二篇 Android源码解析—广播的处理过程 第三篇 Android源码解析—广播的发送过程 第四篇 Android源码解析—广播深入细节理解...
View Article使用UDP方式 与iOS端App通讯
首先需要安装一个TCP&UDP测试工具 连接类型选择UDP 目标IP 设置手机的IP, 端口8888 (这个端口在App端用来绑定) 指定端口, 是App向回发信息所需要的端口, 具体设置如下图所示 接下来为减少代码的键入, 我直接使用CocoaAsyncSocket这个三方库,作为中间媒介完成整个过程 { GCDAsyncUdpSocket *udpSocket; //...
View ArticleKotlin学习之-6.4 Coroutines
Kotlin学习之-6.4 Coroutines 在Kotlin V1.1中Coroutines 还处在实验阶段 有些接口会做一些耗时的操作例如网络IO请求,文件IO, CPU或者GUP密集的工作等,并且要求调用者阻塞知道操作完成。Coroutines提供了一种能够替换避免阻塞线程的方法并且代价更小、控制性更好的操作:suspension of a coroutine...
View Articlereact-native城市列表组件
城市列表选择是很多app共有的功能,比如典型的美图app。那么对于React Native怎么实现呢? 要实现上面的效果,首先需要对界面的组成简单分析,界面的数据主要由当前城市,历史访问城市和热门城市组成,所以我们在提供Json数据的时候就需要将数据分为至少3部分。 const ALL_CITY_LIST = DATA_JSON.allCityList; const HOT_CITY_LIST =...
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 Article自定义收集用户行为统计库 (非常方便 可以自己拓展)
EventCollect 这是收集用户行为统计的代码 reademe: 需求:: 现在App端需要写一个咱们自己的统计控件。 要求: 可以监控用户的所有行为,例如用户谁(没有登录的情况使用UUID), 进入那个页面,进入的时间,在这个页面操作了什么(点击了那个按钮,或者是点击了列表那个列), 离开页面时间,以及其他统计信息,例如版本号,手机系统版本,用户当前网络,用户位置,用户单次使用App时长等...
View ArticleAndroid响应式UI教程
原文:Responsive UI Tutorial for Android 作者:James Nocentini 译者:kmyhy 2017/5/4 更新说明: 由 James Nocentini 更新到 Android Studio 2.2.3。原文作者也是 James。 Android 运行的设备十分广泛,它们的屏幕尺寸和分辨率都不一样。因此,Android app...
View ArticleAndroid 自定义view之 Xfermode 制作动态文字加载动画
对于Xfermode 可能很多人看了一些就放弃了,今天我就个人理解,举简单的我们生活中的例子,让大家更容易理解这是个什么东西。其实并不是你们想象的那么难,你只要懂三步就够了。先来看一看这次的效果图,这个gif大家凑合看。 不要把Xfermode 想的这么难,我把Xfermode 理解成中学时 学的“集合” ,我们知道“集合”是处理 数据的。例如: 集合...
View ArticleiOS Runtime Method IMP指针详解
Method IMP 概念介绍 OC是消息转发机制,代码在编译的时候会生产Runtime中间代码,运行的时候执行Runtime代码,我们也可以动态的添加Runtime代码。 这篇之前讲过了如何创建类和Runtime中的属性,今天主要说一下关于Runtime的方法。 首先还要说一下Runtime类的结构体: struct objc_class { Class _Nonnull isa...
View Article给ROM包内置ROOT权限,刷机以后立马拥有ROOT权限
基本上的MI2机油都刷了第三方的RECOVERY(如秋大的,C大的)实现了双系统共存,一个系统是MIUI,另一个系统刷上如锤子,COLOR OS,乐蛙等。...
View ArticleAndroid 架构设计 本科《毕业论文》
不知不觉学生时代已经结束,由于在 Android 上面花了不少功夫,所以这次毕业论文也是对我 Android 学习的一次总结,基本上都是自己写的。有关 Android 架构设计的一些想法,当然也有一些主流 Android 框架的源码解析(比如 retrofit,EventBus 等)可以下来看一看。...
View ArticleOpenGL实现相机视频NV21格式转RGB格式
笔者介绍:姜雪伟,IT公司技术合伙人,IT高级讲师,CSDN社区专家,特邀编辑,畅销书作者,已出版书籍:《手把手教你架构3D游戏引擎》电子工业出版社和《Unity3D实战核心技术详解》电子工业出版社等。CSDN视频网址:http://edu.csdn.net/lecturer/144...
View Article