Android
小火你好
风骚的代码写入风骚的博客
展开
-
Android跨进程通信AIDL详解(附源码)
概述AIDL:Android Interface Definition Language,即Android接口定义语言,记住,它是一门语言,设计它的目的就是为了实现跨进程通信,我们知道Android的每一个进程都运行在独立的内存中,进程之间代码是不能愉快的调用的,但是在我们开发中难免会有一些场景是需要实时进行进程间方法调用和数据传递。AIDL支持的数据类型JAVA的基本数据类型(...原创 2018-06-09 17:17:14 · 980 阅读 · 1 评论 -
LeakCanary使用详细教程(附Demo)
导语 在Android的性能优化中,内存优化是必不可少的点,而内存优化最重要的一点就是解决内存泄漏的问题,在Android的内存泄漏分析工具也不少,比如PC端的有:AndroidStudio自带的Android Profiler、MAT等工具;手机端也有,就是我们今天要介绍的LeakCanaryLeakCanary简介LeakCanary是Square公司为Android开发者提...原创 2018-09-05 17:55:27 · 23211 阅读 · 3 评论 -
Android面试总结 -- Java篇
Object类的equal和hashCode方法重写,为什么?首先equals与hashcode间的关系是这样的:1、如果两个对象相同(即用equals比较返回true),那么它们的hashCode值一定要相同;2、如果两个对象的hashCode相同,它们并不一定相同(即用equals比较返回false)由于为了提高程序的效率才实现了hashcode方法,先进行hashcode的比较,如果...原创 2018-10-10 10:42:55 · 492 阅读 · 0 评论 -
Android面试总结--Android篇
Activity生命周期图中需要注意一下几点:1.Activity实例是由系统自动创建,并在不同的状态期间回调相应的方法。一个最简单的完整的Activity生命周期会按照如下顺序回调:onCreate -> onStart -> onResume -> onPause -> onStop -> onDestroy。称之为entire lifetime。2.当执...原创 2018-10-10 10:45:24 · 762 阅读 · 0 评论 -
LeakCanary原理分析
概述在上一篇LeakCanary使用详细教程中,我们熟悉了LeakCanary的使用和初步描述了它的工作机制,这篇我准备从源码的角度去分析LeakCanary的工作原理;源码分析从上一篇中我们知道,LeakCanary在Appaction的初始化方式:@Overridepublic void onCreate() { super.onCreate(); if (LeakC...原创 2018-11-03 21:38:04 · 2381 阅读 · 0 评论 -
Android内存泄漏全面总结
概述内存泄漏伴随着整个APP的开发过程,一个对象内存泄漏可能你不会在意,但是一个对象反复内存泄漏或者多个对象同时内存泄漏,将导致你的APP内存直线上升,严重的还会导致OOM直接crash,所以我们在开发中应该及时发现内存泄漏并且修复它是非常必要的,今天我们在总结一下各种内存泄漏的场景和修复方案。什么是内存泄漏?内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序...原创 2018-11-12 23:00:16 · 363 阅读 · 0 评论 -
Java 集合全面整理
概述在实际开发中,我们经常会对一组相同类型的数据进行统一的管理操作,到目前为止,我们可以使用的数组结构,链表结构,二叉树结构来实现;数组的最大问题在于数组中的元素个数是固定的,要实现动态数组,毕竟还是比较麻烦,自己实现链表或者二叉树结构来管理对象更是不方便;在JDK1.2版本后,JAVA完整的提供了类集合的概念,封装了一组强大的、非常方便的集合框架API,让我们在开发中大大的提高了效率;...原创 2018-11-21 22:40:12 · 445 阅读 · 0 评论