自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 资源 (6)
  • 收藏
  • 关注

原创 经典面试题(不断更新中)

——————————————————————–史上最强面试题————————————————————————————-AIDL1、 要使用AIDL的前提的条件我们要只知道它是干什么的? #AIDL 也就是在Android中定义的一个语言,他是进行进程间通讯的一种实现方式,通过定义AIDL接口,可以实现进程间通讯机制2、 要知道它的使用步骤,前提条件?? #需求:比如现在有2个进程需

2016-10-05 02:59:51 8597

转载 浅析MVP中model层设计【从零开始搭建android框架系列(7)】

浅析MVP中model层设计【从零开始搭建android框架系列(7)】字数2492 阅读6206 评论12 喜欢91更多及时技术资讯,欢迎关注我的微博 :Anthony原文链接:Anthony的简书博客推荐链接:安卓架构文章合集1 前言在本系列文章从零开始搭建android框架系列之前我多次提到了官方mvp项目的构建。并应用到了项目MVPC

2016-10-28 23:50:45 1919

转载 Google官方MVP+Dagger2架构详解【从零开始搭建android框架系列(6)】

Google官方MVP+Dagger2架构详解【从零开始搭建android框架系列(6)】字数6894 阅读13459 评论37 喜欢125更多及时技术资讯,欢迎关注我的微博 :Anthony博客原地址:http://www.jianshu.com/p/01d3c014b0b11 前言前段时间分享了一篇文章:google官方架构MVP解析与实战 

2016-10-28 23:48:48 1116

转载 谈谈WebView的使用【从零开始搭建android框架系列(5)】

谈谈WebView的使用【从零开始搭建android框架系列(5)】字数2218 阅读4909 评论12 喜欢59更多及时技术资讯,欢迎关注我的微博 :Anthony本篇文章项目github地址:MVPCommon本文章原地址:简书博客项目效果1 前言这篇文章将从webview的基础,介绍到项目中的真实使用。以及怎么样

2016-10-28 23:47:59 626

转载 网络图片加载的封装【从零开始搭建android框架系列(4)】

网络图片加载的封装【从零开始搭建android框架系列(4)】字数2478 阅读6562 评论30 喜欢105更多及时技术资讯,欢迎关注我的微博 :Anthony本篇文章项目github地址:MVPCommon项目效果项目正在改版,即时通讯功能暂时删除了。1 有哪些常用的图片加载库?当下使用的主

2016-10-28 23:47:02 806

转载 google官方架构MVP解析与实战【从零开始搭建android框架系列(3)】

google官方架构MVP解析与实战【从零开始搭建android框架系列(3)】字数2387 阅读14518 评论20 喜欢116更多及时技术资讯,欢迎关注我的微博 :Anthony由于对之前的项目做出了更改,所以下面内容在2016.8.10做出了更新本篇文章项目github地址:MVPCommon本文章原地址:Anthony的博客1 前言

2016-10-28 23:46:12 632

转载 不容错过,最全的安卓架构合集【从零开始搭建android框架系列(2)】

不容错过,最全的安卓架构合集【从零开始搭建android框架系列(2)】字数749 阅读16564 评论82 喜欢244更多及时技术资讯,欢迎关注我的微博 :Anthony安卓架构文章合集(a collection of android Architecture)博客原地址:简书博客github地址:AndroidArchitec

2016-10-28 23:45:30 397

转载 开篇介绍和工程目录结构【从零开始搭建android框架系列(1)】

开篇介绍和工程目录结构【从零开始搭建android框架系列(1)】字数1389 阅读5132 评论28 喜欢66更多及时技术资讯,欢迎关注我的微博 :Anthony本篇文章项目github地址:MVPCommon本博客原地址:http://www.jianshu.com/p/d0fee882a0fe项目效果扫描二维码下

2016-10-28 23:44:03 330

转载 Dagger2使用详解(目前就感觉这最清楚了)

Dagger2使用详解Dagger2 使用详解前言Dagger2 是一款使用在Java和Android上的依赖注入的一个类库。配置信息使用Android Studio 创建一个新的项目,在Project的 build.gradle文件添加以下内容:1234567buildscript {

2016-10-28 23:39:30 657 1

原创 Android ButterKnife Zelezny插件安装成功但是功能不能使用的解决办法

关于ButterKnife框架Android ButterKnife Zelezny插件安装成功但不显示Generate ButterKnife Injections选项的问题字数398 阅读309 评论0 喜欢0关于ButterKnife插件Android ButterKnife Zelezny插件安装成功但不显示Generate ButterKnife Injections

2016-10-09 21:30:28 10023 5

转载 Android开发:最全面、最易懂的Android屏幕适配解决方案

Android开发:最全面、最易懂的Android屏幕适配解决方案字数10725 阅读5797 评论14 喜欢182前言Android的屏幕适配一直以来都在折磨着我们Android开发者,本文将结合:Google的官方权威适配文档郭霖: Android官方提供的支持不同屏幕大小的全部方法Stormzhang:Android 屏幕适配鸿洋:Androi

2016-10-07 23:01:35 1126

转载 Android增量升级方案

Android增量升级方案2016-09-12 何以诚 郭霖结束了愉快的周末,又到了给大家更新的时候。本篇来自公众号“老司机” 何以诚 的投稿,分享了如何进行增量升级(亦作增量更新)。文中提到的一个插件化框架 Small,有兴趣的朋友可以访问最后的github地址查看。何以诚 的博客地址:http://

2016-10-07 20:03:49 522

原创 ThreadPoolExecutor原理及使用

ThreadPoolExecutor原理及使用标签: java2014-11-04 11:22 8864人阅读 评论(0) 收藏 举报 分类:java(2) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]大家先从ThreadPoolExecutor的总体流程入手: 针对Th

2016-10-06 23:25:42 320

原创 Android热修复:Andfix和Hotfix,两种方案的比较与实现

Android热修复:Andfix和Hotfix,两种方案的比较与实现时间:2016-05-12 13:33:44      阅读:2614      评论:0      收藏:0      [点我收藏+]标签:Andfix和hotfix是两种android热修复框架。android的热修复技术我看的最早的应该是QQ空间团队的解决方案,后来真正需要了,才仔细

2016-10-06 18:25:24 676

转载 AndroidAutoLayout使用方法

AndroidAutoLayoutAndroid屏幕适配方案,直接填写设计图上的像素尺寸即可完成适配。非常感谢 : 吃土豆的人 的协作。讨论群:99913714效果图最大幅度解决适配问题,并且最大化方便开发者。so,看下用法:你没有看错,拿到设计稿,在布局文件里面直接填写对应的px即可,px:这里的px并非是Google不建议

2016-10-06 17:03:04 1043

转载 Android AutoLayout全新的适配方式 堪称适配终结者

Android AutoLayout全新的适配方式 堪称适配终结者标签: android适配Autolayout百分比2015-11-23 09:27 110323人阅读 评论(303) 收藏 举报 分类:【Android 快速开发】(11)  【android 进阶之路】(65) 版权声明:本文为博主原创文章,未经博主允许不得转载。

2016-10-06 16:16:46 347

转载 Android 屏幕适配方案

Android 屏幕适配方案标签: android屏幕适配2015-05-04 13:08 153178人阅读 评论(222) 收藏 举报转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/45460089; 本文出自:【张鸿洋的博客】1、概述大家在Andr

2016-10-06 15:28:36 267

转载 为RecyclerView打造通用Adapter 让RecyclerView更加好用

为RecyclerView打造通用Adapter 让RecyclerView更加好用标签: 万能适配器recyclerviewlistview2016-04-11 09:17 32463人阅读 评论(91) 收藏 举报 分类:【Android 快速开发】(11) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?

2016-10-06 12:47:14 362

转载 Android快速开发系列 10个常用工具类

Android快速开发系列 10个常用工具类标签: Android快速开发工具类2014-09-05 09:27 78569人阅读 评论(72) 收藏 举报 分类:【Android 快速开发】(11)  【Android 基础】(15) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]

2016-10-06 12:43:02 390

转载 Android 一个改善的okHttp封装库

Android 一个改善的okHttp封装库标签: androidokhttp2015-12-15 14:36 92473人阅读 评论(176) 收藏 举报 分类:【Android 快速开发】(11) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]转载请标明出处: ht

2016-10-06 12:35:04 305

转载 Android Studio 2.2 来啦

Android Studio 2.2 来啦原创 2016-09-20 stormzhang AndroidDeveloper阅读本文大概需要 10.24 分钟。今年的 I/O 2016 Google 放出了 Android Studio 2.2 的预览版,改进了多项功能,只不过为了保证公司项目不受影响,我一般都不安装预览版的,因为预览版意味着不稳定,可能遇到

2016-10-06 11:28:57 402

原创 GitHub上创建远程版本仓库(二)

GitHub上创建远程版本仓库标签: androidAndroidANDROIDgithubGithub2013-01-13 21:24 3039人阅读 评论(1) 收藏 举报 分类:Android_版本控制(1) 版权声明:本文为博主原创文章,未经博主允许不得转载。GitHub是一个开源网站,GitHub 使用 Git 分布式版

2016-10-05 23:13:45 256

原创 Win7上Git安装及简单配置过程(一)

Win7上Git安装及简单配置过程标签: androidAndroidANDROIDgitGitinstaller2013-01-13 20:49 17571人阅读 评论(1) 收藏 举报 分类:Android_版本控制(1) 版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]一、安装

2016-10-05 23:12:51 428

原创 java常用的三种线程池

java常用的线程池有三种:newFixedThreadPool创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程。在任意点,在大多数 nThreads 线程会处于处理任务的活动状态。如果在所有线程处于活动状态时提交附加任务,则在有可用线程之前,附加任务将在队列中等待。如果在关闭前的执行期间由于失败而导致任何线程终止,那么一个新线程将代替它执行后续的任务(如果需要)。

2016-10-05 22:33:13 1208

原创 Android中退出多个Activity

Android中退出多个Activity的两个经典方法用list保存activity实例,然后逐一干掉上代码:import java.util.LinkedList;import java.util.List;import android.app.Activity;import android.app.AlertDialog;import android

2016-10-05 21:34:55 328

转载 23种设计模式全解析

23种设计模式全解析 一、设计模式的分类总体来说设计模式分为三大类:创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令

2016-10-05 16:24:01 268

原创 NIO

NIOJava NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java1.4开始),Java NIO提供了与标准IO不同的IO工作方式。Java NIO: Channels and Buffers(通道和缓冲区)标准的俄IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从

2016-10-05 16:19:57 275

原创 可重入内置锁

可重入内置锁每个Java对象都可以用做一个实现同步的锁,这些锁被称为内置锁或监视器锁。线程在进入同步代码块之前会自动获取锁,并且在退出同步代码块时会自动释放锁。获得内置锁的唯一途径就是进入由这个锁保护的同步代码块或方法。当某个线程请求一个由其他线程持有的锁时,发出请求的线程就会阻塞。然而,由于内置锁是可重入的,因此如果摸个线程试图获得一个已经由它自己持有的锁,那么这个请求就会成

2016-10-05 16:18:46 212

原创 死锁

死锁当线程需要同时持有多个锁时,有可能产生死锁。考虑如下情形:线程A当前持有互斥所锁lock1,线程B当前持有互斥锁lock2。接下来,当线程A仍然持有lock1时,它试图获取lock2,因为线程B正持有lock2,因此线程A会阻塞等待线程B对lock2的释放。如果此时线程B在持有lock2的时候,也在试图获取lock1,因为线程A正持有lock1,因此线程B会阻塞等待A对lo

2016-10-05 16:18:08 215

原创 并发编程中实现内存可见的两种方法比较:加锁和volatile变量

并发编程中实现内存可见的两种方法比较:加锁和volatile变量volatile变量是一种稍弱的同步机制在访问volatile变量时不会执行加锁操作,因此也就不会使执行线程阻塞,因此volatile变量是一种比synchronized关键字更轻量级的同步机制。从内存可见性的角度看,写入volatile变量相当于退出同步代码块,而读取volatile变量相当于进入同步代码块。

2016-10-05 16:17:41 838

原创 多线程环境中安全使用集合API

多线程环境中安全使用集合API在集合API中,最初设计的Vector和Hashtable是多线程安全的。例如:对于Vector来说,用来添加和删除元素的方法是同步的。如果只有一个线程与Vector的实例交互,那么,要求获取和释放对象锁便是一种浪费,另外在不必要的时候如果滥用同步化,也有可能会带来死锁。因此,对于更改集合内容的方法,没有一个是同步化的。集合本质上是非多线程安全的,当多个线

2016-10-05 16:16:50 244

原创 synchronized

synchronized在并发编程中,多线程同时并发访问的资源叫做临界资源,当多个线程同时访问对象并要求操作相同资源时,分割了原子操作就有可能出现数据的不一致或数据不完整的情况,为避免这种情况的发生,我们会采取同步机制,以确保在某一时刻,方法内只允许有一个线程。采用synchronized修饰符实现的同步机制叫做互斥锁机制,它所获得的锁叫做互斥锁。每个对象都有一个monitor

2016-10-05 16:16:07 205

原创 守护线程与阻塞线程的四种情况

守护线程与阻塞线程的四种情况Java中有两类线程:User Thread(用户线程)、Daemon Thread(守护线程)用户线程即运行在前台的线程,而守护线程是运行在后台的线程。 守护线程作用是为其他前台线程的运行提供便利服务,而且仅在普通、非守护线程仍然运行时才需要,比如垃圾回收线程就是一个守护线程。当VM检测仅剩一个守护线程,而用户线程都已经退出运行时,VM就会退出,因

2016-10-05 16:15:14 430

原创 线程中断

线程中断使用interrupt()中断线程当一个线程运行时,另一个线程可以调用对应的Thread对象的interrupt()方法来中断它,该方法只是在目标线程中设置一个标志,表示它已经被中断,并立即返回。这里需要注意的是,如果只是单纯的调用interrupt()方法,线程并没有实际被中断,会继续往下执行。演示休眠线程的中断public class SleepInt

2016-10-05 16:14:36 229

原创 Thread和Runnable实现多线程的区别

Thread和Runnable实现多线程的区别Java中实现多线程有两种方法:继承Thread、实现Runnable接口,在程序开发中只要是多线程,肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下优势:可以避免由于Java的单继承特性而带来的局限增强程序的健壮性,代码能够被多个线程共享,代码与数据是独立的适合多个相同程序的线程区处

2016-10-05 16:13:49 336

原创 生产者和消费者问题

生产者和消费者问题package 生产者消费者;public class ProducerConsumerTest { public static void main(String[] args) { PublicResource resource = new PublicResource(); new Thread(new ProducerThr

2016-10-05 16:13:05 169

原创 Java并发

Java并发(Executor框架和多线程基础)Thread与Runable如何实现多线程Java 5以前实现多线程有两种实现方法:一种是继承Thread类;另一种是实现Runnable接口。两种方式都要通过重写run()方法来定义线程的行为,推荐使用后者,因为Java中的继承是单继承,一个类有一个父类,如果继承了Thread类就无法再继承其他类了,显然使用Runnab

2016-10-05 16:11:51 269

原创 垃圾回收算法

垃圾回收算法引用计数法:缺点是无法处理循环引用问题标记-清除法:标记所有从根结点开始的可达对象,缺点是会造成内存空间不连续,不连续的内存空间的工作效率低于连续的内存空间,不容易分配内存复制算法:将内存空间分成两块,每次将正在使用的内存中存活对象复制到未使用的内存块中,之后清除正在使用的内存块。算法效率高,但是代价是系统内存折半。适用于新生代(存活对象少,垃圾对象多)标记-压缩算法:标记

2016-10-05 16:10:46 179

转载 内存区域

内存区域Java虚拟机在执行Java程序的过程中会把他所管理的内存划分为若干个不同的数据区域。Java虚拟机规范将JVM所管理的内存分为以下几个运行时数据区:程序计数器,Java虚拟机栈,本地方法栈,Java堆,方法区。下面详细阐述各数据区所存储的数据类型。程序计数器(Program Counter Register)一块较小的内存空间,它是当前线程所执行的子节码的

2016-10-05 16:10:07 222

转载 虚拟机类加载机制

虚拟机类加载机制虚拟机把描述类的数据从Class文件加载到内存,并对数据进行校验、转换解析和初始化,最终形成可以被Java虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。类从被加载到虚拟内存中开始,到卸载内存为止,它的整个生命周期包括了:加载(Loading)、验证(Verification)、准备(Preparation)、解析(Resolution)、初始化(Ini

2016-10-05 16:09:36 138

SocketTcpSendVideo

本地使用的是 Socket TCP 接收服务端发送过来的视频流并显示 YUV 数据,客服端组包,并且预览,客服端通过固定大小获取视频流数据。如果想使用 h264 的话 可以直接服务端编码完成在传送。客户端解码在播放就行了。可以下载下来运行一下就明白了

2018-09-02

Android 端本地预览 PDF 文件

Android 端本地预览 PDF 文件,使用 AS2.3.3 Gradle 4.1 下载下来可以直接编译运行,内部支持加载本地 File ,也可以加载一个 URL 类型的 PDF 文件,如果恰恰你的 APP 不想调用第三方软件的话 这个 DEMO 非常适合你,我的项目已经用上了。

2018-04-24

Andorid AIDL Bindler 连接池

有了 BinderPool 可以大大方便和提高日常的开发工作,比如如果有一个新的业务模块 B 需要添加新的 AIDL,那么在它实现了自己的 AIDL 接口后,只需要修改 BinderPoolImpl 中的 queryBinder 方法,给自己新添加一个 binderCode 并返回对应的 Binder 对象即可!

2018-04-10

Android AIDL Demo

该 Demo 有 客服端和服务端运行即可看见效果,使用 AS 3.0

2018-04-04

Android 异常处理并把详细信息写入到文件中(包括手机型号,错误版本)

Android 异常处理并把详细信息写入到文件中(包括手机型号,错误版本)

2018-04-03

Android百度离线地图包下载

Android百度离线地图包下载,下载好了之后 把 离线包 copy 到自己项目下就可以使用离线地图了

2017-12-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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