xiangzhihong8的专栏

技术群:515980159,278792776;招聘群:188716429

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

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

2017-03-30 22:31:34

阅读数 3088

评论数 0

移动端跨平台技术总结

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

2017-03-29 17:41:11

阅读数 5597

评论数 1

JSBridge深度剖析

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

2017-03-27 13:16:03

阅读数 11795

评论数 2

小程序实现原理解析

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

2017-03-26 22:04:43

阅读数 47269

评论数 9

React基础之JSX语法

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

2017-03-26 15:23:51

阅读数 1110

评论数 0

Android自定义日历源码收集

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

2017-03-25 22:36:13

阅读数 3746

评论数 1

深入理解Java之jvm启动流程

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

2017-03-24 21:46:25

阅读数 8570

评论数 5

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

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

2017-03-24 14:42:01

阅读数 2730

评论数 0

android classloader双亲委托模式

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

2017-03-23 17:20:06

阅读数 10086

评论数 0

深入理解Android Instant Run运行机制

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

2017-03-22 10:59:52

阅读数 10657

评论数 0

android 自定义控件那些事

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

2017-03-21 13:53:16

阅读数 1088

评论数 0

mac 搭建Android开发环境

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

2017-03-20 19:36:12

阅读数 12935

评论数 2

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

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

2017-03-19 22:25:26

阅读数 3058

评论数 2

深入理解Android渲染机制

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

2017-03-18 14:33:52

阅读数 4977

评论数 4

OpenGL ES简介

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

2017-03-17 18:08:19

阅读数 3999

评论数 0

Android实现仿支付宝流水

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

2017-03-17 16:02:07

阅读数 5165

评论数 3

Mac搭建 React Native 工具篇Atom+Nuclide

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

2017-03-15 22:43:07

阅读数 6532

评论数 3

关于Android studio报junit错误的问题

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

2017-03-15 18:06:10

阅读数 1750

评论数 0

android 自定义Lint

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

2017-03-14 12:40:03

阅读数 2482

评论数 1

Android面试题整理

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

2017-03-12 20:05:04

阅读数 2334

评论数 0

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