- 博客(24)
- 收藏
- 关注
原创 Android requestLayout, postInvalidate与invalidate的区别
requestLayout与invalidate的区别requestLayout会直接递归调用父窗口的requestLayout,直到ViewRootImpl,然后触发peformTraversals,由于mLayoutRequested为true,会导致onMeasure和onLayout被调用。不一定会触发OnDraw requestLayout触发onDraw可能是因为在在layout过程中发现l,t,r,b和以前不一样,那就会触发一次invalidate,所以触发了onDraw,也可能是因为别
2022-05-24 16:16:51
181
转载 新版 Chrome安装React Developer Tools 插件 实现方法(win10 64 )
1、插件下载地址https://f2.crx4chrome.com/crx.php?i=fmkadmapgofadopljbjfkapdkoienihi&v=4.4.0-132020&p=30682、绕过第三方安装“鼠标右键chrome -> 属性 -> 目标,加入参数:-enable-easy-off-store-extension-install”参数是跟在 chrome.exe之后且加一空格 毕竟是参数和EXE文件链接在一起不能执行原文链接...
2021-11-22 16:16:34
512
转载 Android基础-MMKV基本使用
上篇文章讲到SharedPreference,SharedPreference有个比较大的缺点就是有几率导致ANR,正因为该原因,有些项目使用MMKV去替换SP。MMKV 概述 1. MMKV——基于 mmap 的高性能通用 key-value 组件 MMKV 是基于 mmap 内存映射的 key-value 组件,底层序列化/反序列化使用 protobuf 实现,性能高,稳定性强。从 2015 年中至今在微信上使用,其性能和稳定性经过了时间的验证。GitHub地址:htt...
2021-10-09 17:15:47
1697
2
转载 Android基础-SharedPreferences详解
本文章针对 Android 7.0 源码进行分析SharedPreferences是 Android 中比较常用的存储方法,它可以用来存储一些比较小的键值对集合,并最终会在手机的/data/data/package_name/shared_prefs/目录下生成一个 xml 文件存储数据。它的使用非常简单,是一个 Android 开发者的基本技能,在这里不加以阐述了。SharedPreferences带给我们非常简单易用的数据存储读写功能的同时,不知大家有没有好奇过它底层是怎样实现的呢?通过.
2021-10-09 15:01:32
2129
原创 Android基础-HandlerThread基本使用与源码分享
上文讲服务相关的文章中,我们有用HandlerThread去开启一个工作线程,这篇文章就来介绍下HandlerThread。HandlerThread是什么东西呢?了解一个类最好的方法就是查看类的定义,所以我们就看一下HandlerThread是如何定义的吧。查看类的定义时有这样一段话:Handy class for starting a new thread that has a looper.The looper can then be used to create handler cla.
2021-09-24 15:45:06
172
转载 Android基础-Service和IntentService知识点详细总结
Service 对于广大的Android开发者来说算是耳熟能详了,作为Android的四大组件之一,在我们的开发中也起着重要的作用,在Android面试中,Service相关的问题也是面试官问得比较多的,当别人问你,Service 到底是什么的时候?你可能随口就能答得上来,Service是一个在后台执行长时间运行操作而不用提供用户界面的应用组件,可由其他组件启动,即使用户切换到其他应用程序,Service 仍然在后台继续运行。没错,这是Service的概念,作为Android开发,或多或少都知道一些,但是不
2021-09-24 11:29:54
1197
转载 Android进阶-RxJava详解
RxJava相信很多Android开发都听过了,但不是每个人都做到了熟练使用,最近看到扔物线在几年前写的一篇Rxjava详解文章,个人感觉仍然很受用,挺适合想使用Rxjava又不够熟悉的Android开发工程师,在此特意转载进行记录。文章链接...
2021-09-23 10:54:21
296
转载 Android基础-静态广播与动态广播的区别
生存期:静态广播的生存期可以比动态广播的长很多,因为静态广播很多都是用来对系统时间进行监听,比如我们可以监听手机开机。而动态广播会随着context的终止而终止优先级:动态广播的优先级比静态广播高注册:动态广播无需在AndroidManifest.xml中声明即可直接使用(用receiver注册),也即动态;而静态广播则需要,有时候还要在AndroidManifest.xml中加上一些权限的声明。静态注册是当程序关闭后,如果有广播发过来,还能启动程序。动态注册的生命周期跟程序的生命周期是一样的,程序关闭
2021-04-24 15:10:00
2625
原创 Android基础-使用keytool查看android应用签名文件的信息的两种方式
在Android开发中,我们需要给一个项目打上一个正式的签名,常用的生成签名的方法有两种,一种是通过AndroidStudio的Build→Cenerate Signed APK来创建签名,另一种就是通过使用Gradle来生成签名。而在签名生成后,我们有时候会需要去查看改APK的签名信息,这时候,我们通常有两种方法去查看签名信息。第一种方法:1、打开命令提示符2、定位到key...
2019-10-19 15:57:23
984
原创 Android基础-Fragment(碎片)详细介绍(二)
一、Fragment的状态和回调1. 运行状态当一个碎片是可见的,并且它所关联的活动正处于运行状态时,该碎片也处于运行状态。2. 暂停状态当一个活动进入暂停状态时(由于另一个未占满屏幕的活动被添加到了栈顶),与它相关联的可见碎片就会进入到暂停状态。3. 停止状态当一个活动进入停止状态时,与它相关联的碎片就会进入到停止状态。或者通过调用 FragmentTransaction 的 re...
2019-05-06 11:04:49
320
原创 Android基础-Fragment(碎片)详细介绍(一)
一、Fragment简介Fragment是Android3.0以后引入的新的api,为了适配大屏的平板。在普通手机开发的过程中,使用Fragment能实现一个界面的多次使用,能加快效率。Fragment可以被认为是Activity界面的一个布局,其依赖于Activity,但是拥有自己的活动事件与生命周期。可以通过替换Activity中的Fragment实现界面的优化处理。现在Andro...
2019-05-04 15:56:09
333
原创 Android基础-Activity四大启动模式
启动模式一共有四种,分别是 standard、singleTop、singleTask 和 singleInstance,可 以在 AndroidManifest.xml 中通 过给<activity> 标签 指定android:launchMode属性来选择启动模式。每种启动模式都有各自的不同点,下面详细的介绍并通过实例演示,实例中配置均在FirstActivity中配置各种模式...
2019-04-27 16:26:32
258
原创 Android基础-Activity生命周期
旁白想通过写博客去反映自己所学的东西,去记录自己一点一滴的进步。Activity生命周期Activity类中总共定义了7个回调方法,下面对这7个方法进行详细介绍,并通过例子使我们更好地理解Activity的生命周期。onCreate()这个会在活动第一次被创建的时候调用。你应该在这个方法中完成活动的初始化操作,比如说加载布局、绑定事件等。onStart()这个方法在活动由不可见变为可...
2019-03-23 10:26:43
267
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人