Lud的博客

积累点滴

RemoteViews的内部机制

RemoteViews的作用是在其他进程中显示并更新View界面,为了更好地理解它的内部 机制,我们先来看一下它的主要功能。 首先我们先看一下它的构造方法 public RemoteViews(String packageName, int layoutId) { this...

2019-05-08 00:07:14

阅读数 16

评论数 0

PendingIntent

PendingIntent概述 PendingIntent表示一种处于pending状态的意图,而pending状态表示的是 一种待定、等待、即将发生的意思,就是说接下来有一个Intent(即意图)将在某个待定 的时刻发生。可以看出PendingIntent和Intent的区别在于,Pendi...

2019-05-06 22:31:39

阅读数 22

评论数 0

RemoteViews

RemoteViews在通知栏上的应用 通知栏上实现系统默认效果代码如下 Intent intent = new Intent(this, MainActivity.class); PendingIntent pendingIntent = PendingIntent.getAct...

2019-04-27 19:37:31

阅读数 10

评论数 0

CountDownLatch

Java的concurrent包里面的CountDownLatch其实可以把它看作一个计数器,只不过这个计数器的操作是原子操作,同时只能有一个线程去操作这个计数器,也就是同时只能有一个线程去减这个计数器里面的值。 你可以向CountDownLatch对象设置一个初始的数字作为计数值,任何调用这个对...

2019-03-28 18:46:29

阅读数 4

评论数 0

Binder连接池

AIDL流程:先创建一个Service和一个AIDL接口,接着创建一个类继承自AIDL接口中的Stub类并实现Stub 中的抽象方法,在Service的onBind方法中返回这个类的对象,然后客户端就可以绑定服务 端Service,建立连接后就可以访问远程服务端的方法了。 上述是典型的AIDL使...

2019-03-28 15:53:24

阅读数 13

评论数 0

Android中IPC方式

使用Bundle 我们知道,四大组件中的三大组件(Activity、Service、Receiver)都是支持在Intent 中传递Bundle数据的,由于Bundle实现了Parcelable接口,所以它可以方便地在不同的进程 间传输。基于这一点,当我们在一个进程中启动了另一个进程的Act...

2019-03-21 16:42:03

阅读数 22

评论数 0

通过AIDL分析Binder机制

直观来说,Binder是Android中的一个类,它继承了IBinder接口。从IPC角度来说, Binder是Android中的一种跨进程通信方式,Binder还可以理解为一种虚拟的物理设备,它 的设备驱动是/dev/binder,该通信方式在Linux中没有;从Android Framewor...

2019-03-15 17:23:59

阅读数 21

评论数 0

Serializable、Parcelable接口

Serializable接口是Java提供的一个序列化接口,它是一个空接口,为对象提供标准的序列化和反序列化操作。使用Serializable来实现非常简单 public class User implements Serializable { private static f...

2019-03-07 15:15:21

阅读数 10

评论数 0

IntentFilter的匹配规则

IntentFilter匹配规则 启动Activity分为显式调用和隐式调用。原则上一个Intent不应该即是显式调用又是隐式调用,如果二者共存的话以显式调用为主。这里介绍一下隐式调用。 Intent能够匹配目标组件的IntentFilter中所设置的过滤信息,如果不匹配将无法启动目标 Act...

2019-03-06 14:48:21

阅读数 10

评论数 0

Activity启动模式

Activity的LaunchMode 默认情况下,我们多次启动同一个Activity的时候,系统会创建多个实例并把他们一一放入任务栈中,当我们单击back键,会发现这些Activity会一一回退。任务栈是一种后进先出的栈结构,每back一下就会有一个Activity出栈,直到栈清空为止,当栈中...

2019-02-27 23:54:30

阅读数 22

评论数 0

Android View绘制流程(1)

setContentView为什么会展示布局页面 MainActivity继承Activity public class MainActivity extends Activity { @Override protected void onCreate(Bund...

2019-01-28 23:25:37

阅读数 11

评论数 0

Android事件分发机制(3)

1. 如果一个布局有两个按钮重合了点击按钮为什么只有一个点击到,先点击到哪个? 之前分析过事件右Activity分发到ViewGroup再分发到view,那么看一下ViewGroup的分发方法 @Override public boolean dispatchTouchEvent(Mo...

2019-01-21 23:09:44

阅读数 20

评论数 0

Android事件分发机制(2)

Activity和ViewGroup 简单Activity 和 LineaLayout,点击屏幕打印结果如下 01-19 09:34:14.007 7848-7848/com.list E/MainActivity: dispatchTouchEvent 01-19 09:34:...

2019-01-20 00:40:20

阅读数 16

评论数 0

Android事件分发机制(1)

事件分发机制的学习 设置view的监听 myView.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { ...

2019-01-19 21:58:29

阅读数 21

评论数 0

java.lang.UnsatisfiedLinkError: dalvik.system.PathClassLoader错误原因与解决办法

我发生换个错误的场景是:集成了一个第三方的SDK,配有.so文件 但是只配有armeabi版本的cup的.so文件。但是因为项目生成apk的时候不只含有这个型号的文件夹,如下图: 导致如果你的手机版本不是armabi的版本,比如系统自动首先寻找到了armeabi-v7a的文件夹,但是那个文件...

2018-02-27 20:42:02

阅读数 84

评论数 0

OKhttp基础使用和源码浅析

网上找了张图简单看一下整体流程: OKhttp的post简单用法: OkHttpClient okHttpClient = new OkHttpClient.Builder().build(); RequestBody requestBody = RequestBody....

2018-01-29 20:34:36

阅读数 83

评论数 0

Android 计时器和handler的正确使用方式

曾经倒计时使用Timer和TimerTask来处理 private Timer timer = new Timer(); private long time; TimerTask timerTask = new TimerTask() { @Override ...

2018-01-12 18:29:30

阅读数 1030

评论数 0

Gson解析TypeToken指定泛型

今天碰到一组数据解析报错,特此记录………[ { "downloadPath": "9887b.apk", "equip": [ "00000", ...

2017-12-26 17:46:14

阅读数 1122

评论数 0

记录Android Studio常用的插件

1:GsonFormat quickly to convert a JSON string to an InnerClassEntity class 2:Alibaba Java Coding Guidelines Alibaba Java Coding Gu...

2017-10-27 16:43:23

阅读数 184

评论数 0

Android 自定义view TypedArray的使用

Android 自定义view TypedArray的使用

2016-11-01 16:56:40

阅读数 308

评论数 0

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