- 博客(28)
- 资源 (7)
- 问答 (1)
- 收藏
- 关注
转载 Android基础知识-图片占用多少内存
https://mp.weixin.qq.com/s/ufOjtKURP8QERWw1pn_m1QQ1:一张 png 格式的图片,分辨率是 1080*452,图片文件大小为 55.8KB,那么它加载进内存时所占的大小是多少?1)电脑上看到的 png/jpg 格式的图片,只是图片的容器, 它们是经过相对应压缩算法将原图每个像素点信息转换成另一种格式表示,达到压缩的目的,减少图片文件大小。...
2019-10-29 17:54:55 724
原创 Android基础知识-设备密度和dp计算
1.设备密度的计算设备英寸是指,设备屏幕对角线英寸数。设备密度 = 设备长(宽)分辨率 / 设备长(宽)英寸 = 每英寸的像素数根据设备分辨率,可以计算出设备【宽高比】,然后根据 设备英寸,算出设备【宽度英寸】数。然后设备 【宽度分辨率 / 设备宽度英寸 = 每英寸像素数】 也就是设备密度。2.res目录的密度 (固定值)默认drawable(文件夹名后不跟分辨率)-----...
2019-10-29 16:52:57 1148
原创 Android基础知识 View绘制相关
一、DecorView、Window、ViewRootImpl 等概念View的三大流程:measure、layout、draw1、 ViewRootImpl 它是连接 WindowManager 和 DecorView 的纽带。 View的三大流程都是通过ViewRoot 来完成的。 在ActivityThread 中,当 Activity 对象倍创建完毕后,会将DecorView...
2019-10-25 20:35:40 240 1
原创 Android基础知识 IPC相关
一、在Android中什么样的情况下会使用多进程模式,如何开启多进程1、什么情况下使用多进程模式 分担主进程的内存压力 2、如何开启多进程 四大组件,在Manifest中 指定 android:process 属性。二、Android为什么采用Binder做为IPC机制1、 Binder Binder是Android中一种跨进程方式。2、Android 要采用 Binder ...
2019-10-25 20:33:20 188
转载 Android基础知识-Fragment相关
https://www.jianshu.com/p/d9143a92ad94https://www.jianshu.com/p/fd71d65f0ec6一、Fragment生命周期 https://www.jianshu.com/p/927ca066120b1、定义Fragment 表示 FragmentActivity 中的行为或界面的一部分。2、Fragment优点:与Activi...
2019-10-25 20:30:40 868
转载 Android框架-数据库GreenDao
转载:https://www.jianshu.com/p/53083f782ea2本文用作学习笔记,非商业用途,感谢原作者分享。1、概念GreenDAO是一个开源的Android ORM(“对象/关系映射”),通过ORM(称为“对象/关系映射”)通过GreenDao,我们可以更快速的操作数据库,我们可以使用简单的面相对象的API来存储,更新,删除和查询Java对象。2、GreenDao的...
2019-10-31 19:12:31 348
原创 Android基础知识-内部拦截法解决滑动冲突
代码源自《Android开发艺术探索》第三章 View的事件体系 3.5节 View的滑动冲突感谢作者package com.silvrr.b2b.common.test;import android.content.Context;import android.view.MotionEvent;import android.widget.ListView;/** * 内部拦截法...
2019-10-31 12:00:46 1090
原创 Android基础知识-外部拦截法解决滑动冲突
代码源自《Android开发艺术探索》第三章 View的事件体系 3.5节 View的滑动冲突感谢作者package com.xxx.xxx.xxx.test;import android.content.Context;import android.util.AttributeSet;import android.view.MotionEvent;import android.vi...
2019-10-31 11:58:06 597
转载 Android基础知识-RecyclerView的复用和回收机制
一、ListView的原理和复用机制转载:https://blog.csdn.net/guolin_blog/article/details/449968791、Adapter adapter 在ListView和数据源之间起到了一个桥梁的作用, ListView并不会直接和数据源打交道,而是会借助 Adapter 这个桥梁来去访问真正的数据源 2、RecycleBin 机制(AbsL...
2019-10-31 11:49:31 3745
转载 Android基础知识-数据库基础
1、常用 SQL1)创建/删除/使用数据库 CREATE DATABASE my_first_db; /* EFAULT CHARACTER SET utf8:设置字符集 utf8 * COLLATE utf8_general_ci(后缀"_cs"或者"_ci"意思是区分大小写和不区分大小写(Case Sensitive & Case Insensitve)) * ...
2019-10-30 22:04:41 423
转载 Android基础知识-SharePreference存储相关
转载:https://juejin.im/post/5c34615bf265da614171bf8a用来存储一些比较小的键值对集合,并最终会在手机的/data/data/package_name/shared_prefs/目录下生成一个 xml 文件存储数据通过 ContextImpl.getSharedPreferences 方法能够获取SharedPreferences对象通过 getX...
2019-10-30 18:00:29 456
转载 Android基础知识-LRU算法相关数据结构
https://blog.csdn.net/justloveyou_/article/details/71713781一、LinkedHashMap原理它是一个将所有Entry节点链入一个双向链表的HashMap。由于LinkedHashMap是HashMap的子类,所以LinkedHashMap自然会【拥有HashMap的所有特性】。它额外定义了一个以 head 为头节点的双向链表用于保...
2019-10-29 21:11:52 384
原创 Android基础知识-AsyncTask相关
线程是操作系统调度的最小单元。线程是一种受限的系统资源,不可能无限制的产生,线程创建和销毁都会有相应开销。线程池缓存一定数量的线程,避免频繁创建和销毁线程带来的系统开销。Android中线程池,是通过 Executor 派生特定类型的线程池。一、AsyncTask的使用和注意事项public abstract class AsyncTask<Params, Progress, Re...
2019-10-29 18:01:31 131
转载 Android基础知识 Handler相关
https://juejin.im/post/5ba657e0f265da0a8b5722c2一、Handler机制之ThreadLocalThreadLocal 是线程内部的数据存储类,通过它可以在指定线程中存储数据。数据存储后,只有在指定线程中可以获取到存储的数据。不同线程访问同一个ThreadLocal 对象,获取到的值是不一样的。原因:不同线程访问同一个ThreadLocal的...
2019-10-29 09:37:41 117
原创 Android基础知识 Window相关
1、 Window和WindowManager1)WindowManager添加Window的实现 Button mFloatButton = new Button(this); mFloatButton.setText("button"); mLayoutParams = new WindowManager.LayoutParams( LayoutParams.WRAP_CONTEN...
2019-10-27 14:04:21 380
原创 Android基础知识 View事件机制
1、View的坐标体系1)原点在屏幕左上角2)View的 mLeft、mTop、mRight、mBottom都是以Parent的左上角为参考原点 相对于它的Parent的位置 width = mRight - mLeft; height = mBottom - mTop; mX、mY是View的左上角相对于Parent容器的坐标 getTranslationX()、g...
2019-10-25 20:34:24 364
转载 Android基础知识 序列化相关
https://blog.csdn.net/javazejian/article/details/52665164一、序列化与反序列化的定义及区别1、定义 序列化:把对象写入到磁盘或者其他介质中,这个过程就叫做序列化。 反序列化:把已存在在磁盘或者其他介质中的对象,读取到内存中,这个过程就叫做反序列化。 2、实现序列化必要条件 必须实现了 Serializable 接口或者 Parc...
2019-10-25 20:31:56 126
转载 Android基础知识 BroadcastReceiver
https://www.jianshu.com/p/ca3d87a4cdf31、BroadcastReceiver定义及作用、应用场景1)定义:一个全局的监听器2)作用:监听 / 接收 应用 App 发出的广播消息,并 做出响应3)应用场景: Android不同组件间的通信(含 :应用内 / 不同应用之间) 多线程通信 与 Android 系统在特定情况下的通信(电话呼入时、网络可用...
2019-10-25 20:29:03 203
转载 Android基础知识 Service相关
https://blog.csdn.net/javazejian/article/details/527098571、Service的定义及作用1)Service(服务)是一种可以在后台执行长时间运行操作而没有用户界面的应用组件。2)作用:执行后台操作、耗时操作(需放到子线程)、进程间通信等3)Service在清单文件中的声明 <service android:enabled=...
2019-10-25 20:27:15 750
原创 Android基础知识点 Activity相关
1、典型状况下的生命周期1)onCreate:Activity正在创建。2)onRestart:Activity正在启动。【Activity从onStop返回时会调用该方法】3)onStart:Activity正在被启动。Activity已经可见,但是还没有出现在前台,还无法和用户交互。4)onResume:Activity已经可见,且出现在前台,可以和用户交互。5)onPause:Ac...
2019-10-25 20:24:50 290
转载 NIO相关基础篇三
转自:NIO相关基础篇三 https://blog.csdn.net/lirenzuo/article/details/788984301、用户空间、内核空间概念为了保证用户进程不能直接操作内核,保证内核的安全,操心系统将虚拟空间划分为两部分,一部分为内核空间,一部分为用户空间。每个进程可以通过系统调用进入内核,因此,【Linux内核由系统内的所有进程共享】。linux内部结构可以分为三...
2019-10-25 20:20:45 135
转载 NIO相关基础篇二
转自:NIO相关基础篇二 https://blog.csdn.net/lirenzuo/article/details/788387171、文件锁(FileLock)新的锁文件功能,当一个线程将文件锁定之后,其他线程无法操作此文件,文件的锁操作是使用FileLock类来进行完成的,此类对象需要依赖FileChannel进行实例化。文件锁方式: - 共享锁:允许多个线程进行文件读取。 ...
2019-10-25 20:20:05 67
转载 NIO相关基础篇一
NIO相关基础篇一 https://blog.csdn.net/lirenzuo/article/details/787646961、NOI与普通IO的区别Channels and Buffers(通道和缓冲区):标准的IO基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓冲区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区写入到通道中。Asynch...
2019-10-25 20:18:51 140
原创 Android基础知识-线程相关
一、线程相关1、线程的构造private void init(ThreadGroup g, Runnable target, String name,long stackSize) { if (name == null) { throw new NullPointerException("name cannot be null"); } // 当前线程就是该线程的父线程 Threa...
2019-10-18 15:48:56 223
原创 Android基础知识-并发相关
1、Java内存模型https://juejin.im/post/5ba668b4e51d450e686787cc在物理计算机中CPU为了提高处理速度,添加了高速缓存与CPU乱序执行Java定义了自身的内存模型是为了屏蔽掉不同硬件和操作系统的内存模型差异Java为了处理内存的不可见性与重排序的问题,定义了Happens-Before 原则Happens-Before 原则的理解:对于两个...
2019-10-18 11:11:44 188
原创 Android基础知识-jvm全集
一、Java内存结构及分区前置1、符号引用:符号引用以一组符号来描述所引用的目标,符号可以是任何形式的字面量,只要使用时能够无歧义的定位到目标即可。 1)符号引用与虚拟机的内存布局无关,引用的目标并不一定加载到内存中。 2)在Java中,一个java类将会编译成一个class文件。 在编译时,java类并不知道所引用的类的实际地址,因此只能使用符号引用来代替。2、直接引用: ...
2019-10-14 11:07:28 341
原创 力扣算法练习与解答笔记(21-30)
1、合并两个有序链表将两个有序链表合并为一个新的有序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。示例:输入:1->2->4, 1->3->4输出:1->1->2->3->4->4解答:/** * Definition for singly-linked list. * public class ListNode...
2019-10-12 19:15:18 211
Android高级编程(第三版)中文版高清PDF文档
2014-08-15
android封装了常用功能的ioc框架
2014-04-06
chm文档生成器
2014-04-05
android http 文件上传遇见的难题!!!求大神指点!!!
2014-05-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人