自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 实时消息传输协议(RTMP)详解

概述概念:RTMP协议从属于应用层,被设计用来在适合的传输协议(如TCP)上复用和打包多媒体传输流(如音频、视频和互动内容)。RTMP提供了一套全双工的可靠的多路复用消息服务,类似于TCP协议[RFC0793],用来在一对结点之间并行传输带时间戳的音频流,视频流,数据流。通常情况下,不同类型的消息...

2017-03-30 22:31:34 3912 0

原创 移动端跨平台技术总结

概述曾经大家以为在手机上可以像桌面那样通过 Web 技术来实现跨平台开发,却因为性能或其他问题而放弃,不得不针对不同平台开发多个版本。这也违背了跨平台开发的初衷。而React Native让跨平台移动端开发在次回到人们的视野中,其成功的原因除了他“一次编写处处运行”,还因为它相比h5等前端技术,有...

2017-03-29 17:41:11 6191 1

原创 JSBridge深度剖析

概述做过混合开发的人都知道Ionic和PhoneGap之类的框架,这些框架在web基础上包装一层Native,然后通过Bridge技术的js调用本地的库。在讲JSBridge技术之前,我们来看一下传统的实现方式。Android端Native调JSnative调用js比较简单,只要遵循:”javas...

2017-03-27 13:16:03 14356 2

原创 小程序实现原理解析

概述作为一名前端开发,如果你还停留在应用开发层面,那你就OUT了,快来跟我一起探讨下小程序框架本身底层实现的一些技术细节吧,让我们从小程序的运行机制来深度了解小程序。 小程序是基于WEB规范,采用HTML,CSS和JS等搭建的一套框架,微信官方给它们取了一个很牛逼的名字:WXML,WXSS,但本...

2017-03-26 22:04:43 58368 10

原创 React基础之JSX语法

概述JSX是React的核心组成部分,它使用XML标记的方式去直接声明界面,界面组件之间可以互相嵌套。可以理解为在JS中编写与XML类似的语言,一种定义带属性树结构(DOM结构)的语法,它的目的不是要在浏览器或者引擎中实现,它的目的是通过各种编译器将这些标记编译成标准的JS语言。使用JSX语法后,...

2017-03-26 15:23:51 1241 0

原创 Android自定义日历源码收集

概述以前在一家OA公司的时候,做的第一个项目便是日程模块,当时由于对OA理解 的偏差,写了很多无用的代码和逻辑,也走了很多的弯路。几年过去了,现在回想起来还历历在目,今天给大家收集了一些关于日历、日程的源码。很普通的日历下载地址:http://www.dandroid.cn/?p=136支持收缩的...

2017-03-25 22:36:13 5272 2

原创 深入理解Java之jvm启动流程

概述当我们写一个Java类,并重写Main方法,程序就能运行起来。main方法的背后,程序为什么能运行,jvm究竟做了什么处理?要理解这些,就需要了解jvm的设计原理以及启动的流程。虚拟机的启动入口位于share/tools/launcher/java.c的main方法,整个流程分为如下几个步骤:...

2017-03-24 21:46:25 10755 5

原创 传遍朋友圈的Workflow,到底是什么鬼

概述Workflow(工作流):指“业务过程的部分或整体在计算机应用环境下的自动化”。是对工作流程及其各操作步骤之间业务规则的抽象、概括描述。工作流主要解决的主要问题是:为了实现某个业务目标,利用计算机在多个参与者之间按某种预定规则自动传递文档、信息或者任务。但是我们今天要谈的Workflow不是...

2017-03-24 14:42:01 3644 0

原创 android classloader双亲委托模式

概述ClassLoader的双亲委托模式:classloader 按级别分为三个级别:最上级 : bootstrap classLoader(根类加载器) ; 中间级:extension classLoader (扩展类加载器) 最低级 app classLoader(应用类加载器)。根(Boo...

2017-03-23 17:20:06 11759 0

原创 深入理解Android Instant Run运行机制

Instant RunInstant Run,是android studio2.0新增的一个运行机制,在你编码开发、测试或debug的时候,它都能显著减少你对当前应用的构建和部署的时间。通俗的解释就是,当你在Android Studio中改了你的代码,Instant Run可以很快的让你看到你修改...

2017-03-22 10:59:52 11657 0

原创 android 自定义控件那些事

概述在android应用开发过程中,固定的一些控件和属性可能满足不了开发的需求,所以在一些特殊情况下,我们需要自定义控件与属性。而自定义控件通常有两种:自定义View和自定义ViewGroup。View树首先看一下Android视图的组成结构: View树的绘制原理:树的遍历是有序的,由父视图到...

2017-03-21 13:53:16 1171 0

原创 mac 搭建Android开发环境

在mac上搭建Android环境和在window上大体相同,不过就是在做环境变量配置等方面有自己独到的方式,那么我们今天就讲一下在mac系统下搭建Android环境。下载相关文件下载的文件包括Java、Android Studio。Java下载地址:http://www.oracle.com/te...

2017-03-20 19:36:12 16167 2

原创 从代码层读懂HashMap的实现原理

概述 Hashmap继承于AbstractMap,实现了Map、Cloneable、java.io.Serializable接口。它的key、value都可以为null,映射不是有序的。       Hashmap不是同步的,如果想要线程安全的HashMap,可以通过Collection...

2017-03-19 22:25:26 3296 2

原创 深入理解Android渲染机制

基础知识CPU: 中央处理器,它集成了运算,缓冲,控制等单元,包括绘图功能.CPU将对象处理为多维图形,纹理(Bitmaps、Drawables等都是一起打包到统一的纹理)。GPU:一个类似于CPU的专门用来处理Graphics的处理器, 作用用来帮助加快格栅化操作,当然,也有相应的缓存数据(例如...

2017-03-18 14:33:52 5666 4

原创 OpenGL ES简介

概述在聊Android的View渲染流程中,通常会有一个比较核心的步骤:通过OpeGL ES接口调用GPU接口通知GPU绘制图形。其完整的流程:UI对象—->CPU处理为多维图形,纹理 —–通过OpeGL ES接口调用GPU—-> GPU对图进行光栅化(Frame Rate ) —-&...

2017-03-17 18:08:19 4351 0

原创 Android实现仿支付宝流水

今天给大家讲的是如何自定义下拉的ListView实现支付宝账单的效果,月份是需要悬浮的,然后没一个月归为一类,先看一个效果图吧。场景:后台下发的数据就是一个List<对象>,考虑到实际情况,还需要做下拉的分页操作,所以,基于上面的情况,我们需要自定义一个可以拦截月份的view。先定义一...

2017-03-17 16:02:07 6242 3

原创 Mac搭建 React Native 工具篇Atom+Nuclide

关于如何在mac下搭建React环境这里就不详细介绍了,有兴趣的朋友可以看:在Mac上搭建RN基础环境,今天要说的是如何在mac下使用Atom+Nuclide组合环境来开发项目。安装Atom如果没有的大家可以到官网下载:https://atom.io/,也可以到国内的镜像地址下载:https://...

2017-03-15 22:43:07 6727 3

原创 关于Android studio报junit错误的问题

概述前不久,打开以前的Android项目,报了一个 错: Exception in thread “main” Java.lang.NoClassDefFoundError: junit/textui/ResultPrinter ,详细信息如下:Exception in thread "...

2017-03-15 18:06:10 2474 0

原创 android 自定义Lint

概述Android Lint是Google提供给Android开发者的静态代码检查工具。使用Lint对Android工程代码进行扫描和检查,可以发现代码潜在的问题,提醒程序员及早修正。为什么要自定义我们在实际使用Lint中遇到了以下问题: 原生Lint无法满足我们团队特有的需求,例如:编码规范。 ...

2017-03-14 12:40:03 2902 2

原创 Android面试题整理

似乎自去年下半年以来,大家跳槽的少了,还有有些公司裁员了,前几年火热的移动端、前端岗位也越来越少,回归理性。现在各大公司对移动Android/ios的需求基本要求都是三年以上相关经验,有过大型互联网项目经验,基础扎实。那么对于我们从事Android开发的程序员,我们究竟需要掌握哪些技术呢?面试官究...

2017-03-12 20:05:04 3162 0

原创 一起来聊聊虚拟红包的技术实现

2017年1月20日,腾讯发布消息称将推出Q-Glass,除了一般VR眼镜的标配功能外,Q-Glass还能实现眨眼抢红包。听起来是不是很酷炫?上市时间可要在10年后。不过,2016年底支付宝首推AR实景红包,QQ也紧随其后,一场AR实景红包大战悄然打响。 作为最近两年比较热门的技术,VR技术悄然...

2017-03-11 22:53:33 4510 1

原创 ios入门之消息推送

前言在去年的苹果大会上,苹果带来的iOS 10 系统中将之前繁杂的推送通知统一成UserNotifications.framework 来集中管理和使用通知功能,还增加一些实用的功能——撤回单条通知、更新已展示通知、中途修改通知内容、在通知中显示多媒体资源、自定义UI等功能。 那么在ios10之...

2017-03-11 09:48:59 1235 0

原创 IOS入门之StoryBoard

概述在iOS的发展历程中,IOS开发经历了三种主要流派:使用代码手写UI及布局;使用单个xib文件组织viewController或者view;使用StoryBoard来通过单个或很少的几个文件构建全部UI。而在最近几年的开发中,苹果对 Storyboard 的开发力度也不断增强,添加了更多功能和...

2017-03-08 22:18:25 3467 0

原创 Android通信安全之HTTPS

HttpsHTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 它是一个URI...

2017-03-07 22:03:10 1854 0

原创 Android的.so文件你需要知道那些知识

.so文件的前世今生早期的Android系统几乎只支持ARMv5的CPU架构,而现在它可以支持7种,几乎涵盖了市面上大部分的CPU架构。Android系统目前支持的CPU架构主要包含以下7种:ARMv5,ARMv7 (从2010年起),x86 (从2011年起),MIPS (从2012年起),AR...

2017-03-05 22:50:51 3427 0

原创 Android 配置Freeline教程

Freeline简介Freeline是蚂蚁金服旗下一站式理财平台蚂蚁聚宝团队15年10月在Android平台上的量身定做的一个基于动态替换的编译方案,5月阿里集团内部开源,稳定性方面:完善的基线对齐,进程级别异常隔离机制。性能方面:内部采用了类似Facebook的开源工具buck的多工程多任务并发...

2017-03-05 18:14:35 2303 0

原创 Mac 高效工作指南

序很多做开发的程序员,都喜欢用mac,其绚丽的外观,加上手感体验,很适合开发和装逼用。其实除了这些为什么那么多程序员喜欢用mac呢,分析了一下使用mac的好处,无外乎以下几点: Mac OS X 是基于 Unix 的,对于开发人员来说,Unix 下一堆好用的工具都可以随手捡到。并且好多的后端开发都...

2017-03-04 11:45:06 2544 0

转载 你想了解的前端知识都在这里了

前端开发全面知识库,包括HTML5,CSS3和js的基本框架知识,以及DOM和BOM操作的基础知识和一些基本工具和IDE。学习本篇,你将了解到以下知识。核心 CoreHTML5W3C http://www.w3school.com.cn/html5/ W3C https://www.w3.org...

2017-03-02 16:17:15 2963 0

原创 React Native之Picker组件详解

Picker简介在iOS和Android中选择器(Picker)是常见的控件之一,比如TimePickr(Android),pickerView(ios),并且这些基本控件可以实现诸如地址选择等效果。在RN开发中,系统也为我们提供Picker控件。应用如下:<Picker selecte...

2017-03-01 22:45:18 15026 9

提示
确定要删除当前文章?
取消 删除