Android性能优化-内存泄漏的8个Case详解

1为什么要做性能优化? 手机性能越来越好,不用纠结这些细微的性能? Android每一个应用都是运行的独立的Dalivk虚拟机,根据不同的手机分配的可用内存可能只有(32M、64M等),所谓的4GB、6GB运行内存其实对于我们的应用不是...

Android MVP详解

大家先看看目录结构 先看V层 View里面我写了一个接口LoginView然后,在登录这个Activity 去实现这个接口,并实现其抽象方法。即看LoginActivityonCreate中引用了PloginPresen...

Android SingleTask使用注意点详解

在ActivityA中,startActivityForResult到ActivityB,其中ActivityB设置为SingleTask。 那么在实际出现的现象为: ActivityA的onActivityResult将会首先被回调,...

BroadcastReceiver几种常见监听详解

1.BroadcastReceiver监听拨号 <intent-filter android:priority="1000" > <action android:name="androi...

Android如何保证一个线程最多只能有一个Looper?详解

1. 如何创建Looper? Looper的构造方法为private,所以不能直接使用其构造方法创建。 private Looper(boolean quitAllowed) { mQueue = new Message...

用Service+Broadcast解决倒计时过程中Activity被销毁的问题详解

主要思想是这样的:将倒计时CountDownTimer放在Service里面进行,每过一秒就一条发广播,在主Activity里注册广播,收到广播后更新UI。一、写一个类CodeTimerService继承自Service,重写onStart...

Android 线程池的类型、区别以及为何要用线程池详解

每个 Android 应用进程在创建时,会同时创建一个线程,我们称之为主线程,负责更新 UI 界面以及和处理用户之间的交互,因此,在 Android 中,我们又称之为 UI 线程。一个进程中 UI 线程只有一个,为了不造成界面卡顿、提高用户...

AndroidManifest 配置主活动详解

在activity标签中写如下代码: <activity android:name=".MainActivity" android:label="This is ...

Android 两种方式实现类似水波扩散效果详解

两种方式实现类似水波扩散效果,先上图为敬自定义view实现动画实现自定义view实现思路分析:通过canvas画圆,每次改变圆半径和透明度,当半径达到一定程度,再次从中心开始绘圆,达到不同层级的效果,通过不断绘制达到view扩散效果priv...