Android developer.

艺术之旅

排序:
默认
按更新时间
按访问量

Java native方法以及Mac上的JNI实践

前言 今天看AndFix实现时,核心方法之ReplaceMethod方法是一个native方法,之前并没有遇到过,所以在此整理记录。 native的作用 总而言之:native是与C++联合开发的时候用的!使用native关键字说明这个方法是原生函数,也就是这个方法是用C/C++语言实现...

2018-03-11 10:25:16

阅读数:122

评论数:0

图文详解 Android Binder跨进程通信机制和原理

前言 如果你接触过 跨进程通信 (IPC),那么你对Binder一定不陌生 虽然 网上有很多介绍 Binder的文章,可是存在一些问题:浅显的讨论Binder机制 或 一味讲解 Binder源码、逻辑不清楚,最终导致的是读者们还是无法形成一个完整的Binder概念 本文采用 清晰的图文讲解...

2018-01-15 14:51:29

阅读数:134

评论数:0

Kotlin Android UI利器之Anko Layouts

引言前段时间写了一篇Kotlin语法入门的文章,还没有看过的盆友请戳(这里),有的可能看完之后已经开始尝试用kotlin来写代码了。不过上篇体现的仅仅是针对于Kotlin相较于Java在用法上的扩展性以及写法上的简洁性,那么Android中还有另一个重要的组成部分,布局文件呢?接下来我们就继续看一...

2017-09-19 11:41:26

阅读数:774

评论数:0

一句话解决的事何必说三句,Kotlin入坑指南

看到这个标题你可能觉得很奇怪,其实这里指的是Kotlin语言出色的简洁性,能比原有用Java代码实现的功能缩小三倍以上的代码量。不仅如此,这还不是Kotlin最出色的语言特性,不信你接着往下看。 什么是Kotlin?Kotlin是JetBrains开发的基于JVM的语言。JetBrains是一家捷...

2017-07-09 22:11:45

阅读数:401

评论数:0

Android透明化/沉浸式状态栏实践及源码分析

何为透明状态栏?有人说透明状态栏就是沉浸式状态栏,这里不多解释,详见为什么在国内会有很多用户把「透明栏」(Translucent Bars)称作 「沉浸式顶栏」?。本文将对于透明状态栏设置方法做一个讲解,以及遇到的问题该怎么解决,来面对各种需求。 本文所提到的透明状态栏其实指的是将顶部的导航栏延伸...

2017-07-09 22:10:07

阅读数:496

评论数:2

Bacula虚拟机配置error:no route to host

今天在配置Bacula时遇到了不少问题,其中一个是在执行./bconsole时出现了no route to host,如下图 第一个想法是判断是否在一个子网内,确认在一个子网内之后,google了不少方法,最终把防火墙关了成功备份。 执行sudo iptables -F

2016-01-05 13:00:02

阅读数:472

评论数:0

XMPP 协议工作流程详解

原文: http://ceit.uq.edu.au/content/how-xmpp-works-step-step XMPP 核心协议 http://xmpp.org/rfcs/rfc3920.htmlXMPP 要点. 客户端(C) 和服务器端(S) 通过TCP连接5222端口进行全双工通信....

2015-10-24 20:17:19

阅读数:462

评论数:0

极光推送技术原理:移动无线网络长连接

移动互联网应用现状因为手机平台本身、电量、网络流量的限制,移动互联网应用在设计上跟传统 PC 上的应用很大不一样,需要根据手机本身的特点,尽量的节省电量和流量,同时又要尽可能的保证数据能及时到达客户端。为了解决数据同步的问题,在手机平台上,常用的方法有2种。一种是定时去服务器上查询数据,也叫Pol...

2015-10-23 12:57:12

阅读数:718

评论数:0

HashMap循环遍历方式及其性能对比

主要介绍HashMap的四种循环遍历方式,各种方式的性能测试对比,根据HashMap的源码实现分析性能结果,总结结论。1. Map的四种遍历方式 下面只是简单介绍各种遍历示例(以HashMap为例),各自优劣会在本文后面进行分析给出结论。 (1) for each map.entrySet()...

2015-10-15 21:29:30

阅读数:738

评论数:0

一次完整的HTTP事务是怎样一个过程?

当我们在浏览器的地址栏输入 www.linux178.com ,然后回车,回车这一瞬间到看到页面到底发生了什么呢?以下过程仅是个人理解:域名解析 –> 发起TCP的3次握手 –> 建立TCP连接后发起http请求 –> 服务器响应http请求,浏览器得到html代码 –> ...

2015-10-12 11:31:54

阅读数:396

评论数:0

TCP滑动窗口与拥塞窗口

一、滑动窗口滑动窗口协议是传输层进行流控的一种措施,接收方通过通告发送方自己的窗口大小,从而控制发送方的发送速度,从而达到防止发送方发送速度过快而导致自己被淹没的目的。对ACK的再认识,ack通常被理解为收到数据后给出的一个确认ACK,ACK包含两个非常重要的信息: 一是期望接收到的下一字节的序...

2015-10-09 20:09:03

阅读数:1486

评论数:0

TCP三次握手及其背后的缺陷

概述 总结一下TCP中3次握手过程,以及其原生的缺陷 引起的SYN Flood的介绍 【1】TCP三次握手 【2】SYN Flood1、TCP连接建立——三次握手几个概念: 【1】seq:序号,占4个字节,范围[0,4284967296],由于TCP是面向字节流的,在一个1个TCP连接中传...

2015-10-07 22:45:05

阅读数:633

评论数:0

海量数据找中位数

腾讯一面问到了,用的算法导论中的Kth算法,期望时间复杂度为O(n)。后来想了想,万一数据多的来根本不能一次读入内存,这个时候该如何解决呢?题目如下: 只有2G内存的pc机,在一个存有10G个整数的文件,从中找到中位数,写一个算法。http://blog.sina.com.cn/s/blog_4...

2015-09-22 22:40:10

阅读数:396

评论数:0

从中序表达式到逆序表达式(逆波兰式)(四则运算表达式求值)

将运算对象写在前面,而把运算符号写在后面。用这种表示法表示的表达式也称做后缀式。逆波兰式的特点在于运算对象顺序不变,运算符号位置反映运算顺序。采用逆波兰式可以很好的表示简单算术表达式,其优点在于易于计算机处理表达式。(逆波兰式不需要使用括号) 本份代码出自:http://wenku.baidu....

2015-09-22 17:28:02

阅读数:1389

评论数:0

哈希表中线性探测再散列法及等概率条件下平均查找长度

最近复习了下数据结构中的哈希表,发现在计算等概率情况下查找不成功的平均查找长度时比较迷茫,不知道到底是怎么计算出来的。现在通过查阅资料终于知道如何计算了,所以记录下来以供以后查阅。 下面看下2010年2010年全国硕士研究生入学统一考试计算机科学与技术学科联考计算机学科专业基础综合试题中一...

2015-09-17 16:26:45

阅读数:1206

评论数:0

Java设计模式之Observer(观察者)模式

Java设计模式之Observer(观察者)模式1模式概述虽然设计模式并不是万能丹, 但确实是一个非常强大的工具,开发人员或架构师可使用它积极地参与任何项目。设计模式可确保通过熟知和公认的解决方案解决常见问题。模式存在的事实基础在 于:大多数问题,可能已经有其他个人或开发小组解决过了。因此,模式提...

2015-09-13 12:43:58

阅读数:428

评论数:0

死锁的原因及处理方法

产生死锁的原因主要是: (1) 因为系统资源不足。 (2) 进程运行推进的顺序不合适。 (3) 资源分配不当等。 产生死锁的四个必要条件: (1)互斥条件:一个资源每次只能被一个进程使用。 (2)请求与保持条件:一个进程因请求资源而阻塞时,对已获得的资源保持不放。 (3)不剥...

2015-09-09 12:44:00

阅读数:5528

评论数:0

Java内存模型

1. 概述多任务和高并发是衡量一台计算机处理器的能力重要指标之一。一般衡量一个服务器性能的高低好坏,使用每秒事务处理数(Transactions Per Second,TPS)这个指标比较能说明问题,它代表着一秒内服务器平均能响应的请求数,而TPS值与程序的并发能力有着非常密切的关系。在讨论Jav...

2015-09-07 22:05:37

阅读数:434

评论数:0

Android Universal Image Loader 学习笔记(三)

4.2.19 ProcessAndDisplayImageTask.java处理并显示图片的Task,实现了Runnable接口。 主要函数: (1) run()主要通过 imageLoadingInfo 得到BitmapProcessor处理图片,并用处理后的图片和配置新建一个Display...

2015-09-07 18:11:42

阅读数:354

评论数:0

Android Universal Image Loader 学习笔记(二)

4.2 核心类功能介绍4.2.1 ImageLoader.java图片加载器,对外的主要 API,采取了单例模式,用于图片的加载和显示。 主要函数: (1). getInstance()得到ImageLoader的单例。通过双层是否为 null 判断提高性能。 (2). init(Image...

2015-09-07 18:03:50

阅读数:329

评论数:0

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