自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

专注Android开发

淡泊以明志,宁静以致远

  • 博客(13)
  • 收藏
  • 关注

原创 RecyclerView 滑动之后显示数据错乱

由于RecyclerView的onBindViewHolder()方法,只有在getItemViewType()返回类型不同时才会调用,这点是跟ListView的getView()方法不同的地方,所以如果想要每次都调用onBindViewHolder()刷新item数据,就要重写getItemViewType(),让其返回position,否则很容易产生数据错乱的现象。@Override

2017-12-27 18:51:36 15011 25

转载 Android 从源码的角度分析——为什么要用newInstance来实例化Fragment

最近在看Google技术文档的时候发现了一种新的方式来实例化Fragment,就是采用静态工厂的方式创建Fragment。我们在使用Android studio创建一个类的时候,选择New ->Fragment->Fragment(Blank)可以很直观的看到这种方式的写法:public class BlankFragment extends Fragment { pr

2017-12-27 16:22:32 956

转载 Android的IPC机制(七)—— Socket的原理简析与使用

综述  在前面的几篇文章中,我们介绍了许多在Android中有关进程间通信的方式,但都是在一个设备上进行的进程间通信,而这时候我们两个应用在不同的设备上的时候,在这个时候我们就不能通过前方介绍的那些方法来解决了。但是我们通过网络进行通信来处理这个问题。今天就来介绍一下Android中网络通信的其中一种方式——Socket。Socket翻译为中文为套接字,而现在套接字也成为了操作系统中的一部

2017-12-19 16:52:42 462

转载 Android的IPC机制(六)—— BroadcastReceiver的使用

综述  在Android的四大组件中除了ContentProvider能够用于进程间的通信外,还有一个也能够用于进程间的通信,那就是BroadcastReceiver。BroadcastReceiver翻译成中文为广播接收器,既然作为广播接收器,那么必然就有Broadcast。在Android中,Broadcast是一种广泛运用的在应用程序之间传输信息的机制。而BroadcastRecei

2017-12-19 16:48:13 350

转载 Android的IPC机制(五)—— ContentProvider的使用

综述  对于前面一些的ipc过程都是Service与客户端进行通信。那么在不同应用之间ipc可以采用哪些方式呢?首先我们会想到ContentProvider,因为我们平时获取手机上的联系人,图片等等都是通过ContentProvider得到的。ContentProvider是Android的四大组件之一。翻译成中文为内容提供者,也就是可以将自己的数据提供给别的应用进行使用。那么我们现在就来

2017-12-19 16:47:26 360

转载 Android的IPC机制(四)—— Messenger的使用及源码分析

综述  在前面几篇中我们详细的介绍了AIDL的使用及原理。在这里我们感觉到AIDL的在使用过程中还是比较复杂的,那么有没有一种简单的方法来实现进程间的通信呢?当然是有的,那就是利用Messenger。Messenger翻译为信使,从他的名字就可以看出这个Messenger就是作为传递消息用的。那么我们就来看一下这个Messenger到底是如何使用的,以及在它内部是如何实现的。Mes

2017-12-19 16:46:19 275

转载 Android的IPC机制(三)——Binder连接池

综述  前两篇说到AIDL的使用方法,但是当我们的项目很大时,很多模块都需要用到Service,我们总不能为每一个模块都创建一个Service吧,这样一来我们的应用就会显得很笨重。那么有没有一种解决方案叫我们只需要创建一个Service,然后去管理AIDL呢?在任玉刚的《Android开发艺术探索》中给出了一个解决方案,那就是Binder连接池。在这里我们看一下他是怎么实现的。Bi

2017-12-19 16:44:59 417

转载 Android的IPC机制(二)——AIDL实现原理简析

综述  上篇说到AIDL的使用方法,我们不能仅仅只是满足对AIDL的使用,那么对于AIDL到底是如何实现的呢?为什么我们只是创建一个AIDL文件,系统就会为我们自动生成一个Java文件,那么这个Java文件里面到底包含了哪些内容呢?我们今天就来研究一下。AIDL实现原理  在这里我们首先看一下AIDL是怎么实现的。当我们创建一个Service和一个AIDL接口的时候,然后创

2017-12-19 16:42:07 308

转载 Android的IPC机制(一)——AIDL的使用

综述  IPC(interprocess communication)是指进程间通信,也就是在两个进程间进行数据交互。不同的操作系统都有他们自己的一套IPC机制。例如在Linux操作系统中可以通过管道、信号量、消息队列、内存共享、套接字等进行进程间通信。那么在Android系统中我们可以通过Binder来进行进程间的通信。当然除了Binder我们还可以使用Socket来进行进程间的通信。

2017-12-19 16:38:45 476

转载 AndroidStudio Mac OS X 10.5+ 快捷键整理

一、代码移动1. option + ⬆️ / ⬇️ ---------- 选中代码2. option + shift + ⬆️ / ⬇️ ---------- 上下移动代码3. command + D ---------- 复制当前行到下一行4. command + X ---------- 剪切5. command + Delete ---------- 删除行6.

2017-12-19 15:40:02 919

转载 巧用Android多进程,微信,微博等主流App都在用

1前言对于进程的概念,来到这里的都是编程修仙之人,就不再啰嗦了,相信大家倒着、跳着、躺着、各种姿势都能背出来。2为什么使用多进程?相信很多同学在实际开发中,基本都不会去给app划分进程,而且,在Android中使用多进程,还可能需要编写额外的进程通讯代码,还可能带来额外的Bug,这无疑加大了开发的工作量,在很多创业公司中工期也不允许,这导致了整个app都在一

2017-12-14 15:52:50 1152 1

转载 从一道面试题来认识java类加载时机与过程

1  开门见山以前曾经看到过一个java的面试题,当时觉得此题很简单,可是自己把代码运行起来,可是结果并不是自己想象的那样。题目如下: class SingleTon { private static SingleTon singleTon = new SingleTon(); public static int count1; public static i

2017-12-13 17:52:45 820

转载 Android关于service中的耗时操作

原文链接:http://blog.csdn.net/zartzwj/article/details/20864497由于Service和Broadcast一样,都运行在主线程中,所以在这两个里面我们无法做一些长时间的耗时操作,也就是说,如果我们有一个后台服务,是每隔一段时间请求一次服务器,类似于心跳服务,只是没有心跳服务那么频繁,例如每2个小时执行一次连接服务器操作,这样的话,我们

2017-12-11 17:56:48 2596

空空如也

空空如也

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

TA关注的人

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