自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(497)
  • 资源 (22)
  • 收藏
  • 关注

原创 Popwindow 开发笔记整理

本文记录使用 Popwindow 时遇到的问题和解决方案,以及 popwindow 所有相关的技术点。

2022-11-29 10:09:39 723 1

原创 【图像处理 】003 图片处理工具类

收录图片处理通用工具类

2022-07-26 19:49:08 857

原创 【图像处理 】001 Android 中 Bitmap 压缩的几种方法浅析

简略介绍了 Android 中常见的几种 Bitmap 图片压缩算法,以及各自的使用场景。

2022-07-26 19:16:47 1698

原创 人老了是什么感觉?

一天,一个年轻人问我:人老了是什么样的感觉。我一下怔住了,因为我还从来没有想到过——我已经老了。或许在我的生命中,这是第一次,我感觉我活出了理想中的自我。很多时候,我也对自己的身体感觉到绝望:满脸的皱纹,松弛的眼袋,下垂的屁股。我也常常因为看到镜中老态龙钟的自己而感到震惊,但我不会为这些事情痛苦不堪。我永远也不会去用真挚的友谊、精彩的生活或温馨的亲情,去换取少一些白发和扁平的肚子。我老了,也就更懂得去善待自己,对自己少了些苛刻。我成了我自己的朋友。我不会因为自己多吃了一片甜饼,或没有整理床铺,或花钱买了

2021-12-17 11:09:26 346

原创 Android App 设置系统时间,语言和时区、系统重启

文章目录说明1. 修改系统时间1. 设置系统时间(仅设置xx:xx)2. 设置系统日期(仅设置到xxxx年xx月xx日)3.设置系统是否自动获取时间4.判断系统是否自动获取时间2. 修改系统时区1. 设置系统时区2. 设置系统是否自动获取时区3. 判断系统是否自动获取时区3. 修改系统语言4. 系统重启5. 源码6. 参考说明以下功能的实现是在有系统签名和设置了 android:sharedUserId=“android.uid.system” 的情况下实现的。如果你的应用没有系统签名,可能无法实现以下

2021-11-01 11:03:42 4450 2

原创 Android 使用 ActivityLifecycleCallbacks 管理 Activity 和区分 App 前后台

文章目录ActivityLifecycleCallbacks 接口概述ActivityLifecycleCallbacks 接口可以做什么ActivityLifecycleCallbacks 的应用使用 ActivityLifecycleCallbacks 判断 App 前后台状态ActivityLifecycleCallbacks 原理分析参考ActivityLifecycleCallbacks 接口概述在 Android API 14 之后的 Application 类中,为我们提供了一个应用生命周

2021-10-19 18:06:14 1091

原创 Android 之 android.intent.category.DEFAULT 的用途以及如何使用

文章目录前言先说用途隐式 Intent 和显式 Intent显式 Intent隐式 Intent如何通过 Intent 找到具体的 Activity总结category 其他用途参考前言做了多年 Android 开发的你,如果有人问你,android 之 android.intent.category.DEFAULT 的作用是什么,你会回答上来么。如果不会,就可以看看这一篇文章。先说用途如果你的 activity 支持接收 implicit intent(隐式 Intent)的话就一定要在 int

2021-10-13 20:46:11 1982

原创 Java 代理模式的实现和原理详细分析

代理模式代理模式是常用的 java 设计模式,他的特征是代理类与委托类有同样的接口,代理类主要负责为委托类预处理消息、过滤消息、把消息转发给委托类,以及事后处理消息等。代理类与委托类之间通常会存在关联关系,一个代理类的对象与一个委托类的对象关联,代理类的对象本身并不真正实现服务,而是通过调用委托类的对象的相关方法,来提供特定的服务。简单的说就是,我们在访问实际对象时,是通过代理对象来访问的,代理模式就是在访问实际对象时引入一定程度的间接性,因为这种间接性,可以附加多种用途。在后面我会解释这种间接性带来的

2021-10-11 21:09:27 433

原创 CountDownLatch 的理解和使用场景分析

1.背景:countDownLatch是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier、Semaphore、concurrentHashMap和BlockingQueue。存在于java.util.cucurrent包下。2.概念countDownLatch这个类使一个线程等待其他线程各自执行完毕后再执行。是通过一个计数器来实现的,计数器的初始值是线程的数量。每当一个线程执行完毕后,计数器的值就-1,当计数器的值为0时,表示所有线程都执行完毕,然后在闭锁上等待的

2021-09-02 00:35:58 359

转载 Android LayoutInflater原理分析,带你一步步深入了解View(一)

有段时间没写博客了,感觉都有些生疏了呢。最近繁忙的工作终于告一段落,又有时间写文章了,接下来还会继续坚持每一周篇的节奏。有不少朋友跟我反应,都希望我可以写一篇关于View的文章,讲一讲View的工作原理以及自定义View的方法。没错,承诺过的文章我是一定要兑现的,而且在View这个话题上我还准备多写几篇,尽量能将这个知识点讲得透彻一些。那么今天就从LayoutInflater开始讲起吧。相信接触Android久一点的朋友对于LayoutInflater一定不会陌生,都会知道它主要是用于加载布局的。而刚接

2021-08-17 00:29:17 177

原创 TCP 为什么是三次握手呢,相信我,你看完就懂了哦

深刻理解下 TCP 三次握手到底是咋回事

2021-08-09 08:53:28 224

原创 AndroidStudio 中 AIDL 使用实战以及采坑总结

什么是 AIDLAIDL : Android Interface Definition Language,即 Android 接口定义语言。Android 系统中的进程之间不能共享内存,因此,需要提供一些机制在不同进程之间进行数据通信。为了使其他的应用程序也可以访问本应用程序提供的服务,Android 系统采用了远程过程调用(Remote Procedure Call,RPC)方式来实现。与很多其他的基于RPC的解决方案一样, Android 使用一种接口定义语言(Interface Definitio

2021-03-19 18:53:31 915

原创 JNI 开发资料

JNI Types and Data StructuresAndroid Studio jni开发入门——看我就够了!JNI 与AIDL 简明概述Android JNI使用全面讲解JNI 常用函数大全

2021-03-18 16:37:10 140

原创 Java 反射小结

反射则是一开始并不知道我要初始化的类对象是什么,自然也无法使用 new 关键字来创建对象了。这时候,我们使用 JDK 提供的反射 API 进行反射调用。

2020-12-09 20:26:42 178

转载 Java 注解与注解处理器基础总结与实操步骤分析

Java 注解与注解处理器的核心知识点。

2020-12-09 18:45:46 572

原创 为什么你的学习效率那么低?

没有真正的投入,自然不会有很高的回报。真正投入了,大概没时间和精力关心有无回报,效率高不高。

2020-11-13 10:42:14 324

原创 深入理解 Java 中的泛型

详细讲解 Java 泛型的定义,以及各种泛型规则。

2020-11-12 18:13:35 289

原创 Android 调试工具 stetho 的使用

概述关于stetho,最开始是同事推荐的,主要用来通过Chrome的inspect命令来查看数据库数据的。配置好stetho环境后,在浏览器中输入chrome://inspect,找到需要调试的对象,点击inspect即可调试参考发现这篇文章写得很详细,所以就引过来了,感谢原作者的分享。 https://segmentfault.com/a/1190000012075067...

2020-10-30 10:45:08 2604 3

原创 JavaWeb 项目出现红色感叹号解决方案

在某些情况下,我们的工程会出现红色感叹号,包括安卓工程和web工程,一般比较普遍的错误是引用的jar包错误,下面给出解决方案:错误现场:web项目android项目【问题原因】:工程中classpath中指向的包路径错误【解决办法】:右键项目名称 BuildPath ---> Configure Build Paht...中,然后上面有几个选项卡找到

2020-10-30 09:34:39 5139

原创 Android 权限相关开源整理

本文收藏一些关于权限管理相关的开源代码。郭霖 - 可能是最好的 Android 权限管理框架

2020-09-18 11:27:37 228

原创 Android 性能优化总结

性能优化实践(一)-安装包瘦身性能优化实践(二)-布局优化性能优化实践(三)-卡顿优化思考性能优化实践(四)-内存优化思考性能优化工具(九)-LeakCanary

2020-07-28 16:48:14 139

原创 Android 测试总结

1. Android 单元测试Android单元测试只看这一篇就够了

2020-07-28 16:37:44 150

转载 如何让scrollview 始终显示最后一行

ScrollView 有一个方法scollTo(int, int)用来指定滚动条的位置。如果你尝试过,你会发现它是无效的。因为scollTo()在Scrolliew内的内容加载完成后才能执行。所以我们这样设置滚动条的位置:ScrollView mScrollView =(ScrollView)findViewById(R.id.svid);mScrollView.post(new Runnable() { public void run() { mScrollView

2020-07-20 11:25:53 1122

原创 通用SQL基础

通用SQL基础DML数据操作语言:insert delete updateDDL数据定义语言:create alter drop truncateDCL数据控制语言:grant revoke --通常无需程序员 操作事物控制语句:commit rollback savepoint1. 五类完整性约束NOT NULL:非空约束,指定某列不能为空。UNIQUE:唯一约束,指定某列或者几列组合不能重复。PRIMARY KEY:主键约束,指定该列的值可以唯一标识该条记录。FOREIGN KEY:

2020-05-28 15:43:26 226

原创 Android 面试札记第 5 篇

记录、整理、思考面试中遇到的一些问题,和大家分享一下。

2020-05-28 11:12:38 291

原创 Android 国际化之动态语言切换(兼容 Android 4.4 - Android 10)

背景由于项目原因,需要用到国际化这一部分的知识。并且在 App 中需要动态切换语言,所以花了点时间研究了下具体的实现。并在兼容问题上做了较多的思考,目前兼容了 Android 4.4 到 Android 10 平台。实现思路大致思路如下:我们通过页面上选择的国家语言标识(比如 zh 代表简体中文,en 代表英语),去拿到系统的 Locale 对象 locale;通过 context 拿到系统资源 Resources 对象 resources;通过 resources 拿到资源配置 Config

2020-05-22 15:11:43 2716 2

原创 Android 面试札记第 4 篇

记录、整理、思考面试中遇到的一些问题,和大家分享一下。

2020-05-20 16:41:11 237

原创 Android 面试札记第 3 篇

分享几个关于链表的算法解法

2020-05-12 16:27:50 181

原创 第一行代码第 3 章编写界面的实践 Demo

本文初探 UI 设计,主要包含两个点。制作 Nine-Patch 图片制作精美的聊天界面效果制作 .9 图现在新版的 Android SDK 的 tools 下面已经去除了 draw9patch.bat ,转而在 AS 中集成了该功能。只需要选中图片,右键生成 .9 图,然后编辑即可。.9 图的各边规则:左号黑色条位置向右覆盖的区域表示图片纵向拉伸时,只拉伸该区域上号黑色条...

2020-05-07 14:41:02 283

原创 Android 面试札记 第 2 篇

记录、整理、思考面试中遇到的一些问题,和大家分享一下。

2020-04-29 14:37:22 169

原创 博客资源导航

这是我的博客目录,方便查找。

2020-04-24 20:54:04 19764

原创 Android 在代码中设置 drawableLeft(Right/Top/Bottom)

在xml中设置android:drawableLeft="@drawable/xxxxx"java 代码中设置java api 为我们提供了一个 setCompoundDrawables(left,top,right,bottom); 方法,供开发人员设置相应的边界图片。操作方法十分简单,但是要注意版本兼容问题(Android 低版本 获取 Drawable 对象发的方式不同)看如下代码...

2020-04-03 11:23:20 707

原创 RxJava实现遍历List集合定时发射每条数据

RxJava实现遍历List集合定时发射每条数据参考自 https://www.jianshu.com/p/aa71c155e19a ,感谢原作者。

2020-04-03 11:06:32 1793

原创 颜色透明度 16 进制对照表

100% — FF99% — FC98% — FA97% — F796% — F595% — F294% — F093% — ED92% — EB91% — E890% — E689% — E388% — E087% — DE86% — DB85% — D984% — D683% — D482% — D181% — CF80% — CC79% — C97...

2020-04-03 10:35:37 467

原创 Android Bitmap&Drawable&动画的优化建议

加载大图片或者一次性加载多张图片,应该在异步线程中进行图片的加载,涉及到 IO 操作,以及 CPU 密集操作,很可能引起卡顿。在 ListView,ViewPager,RecyclerView,GirdView 等组件中使用图片时,应做好图片的缓存避免始终持有图片导致内存溢出,也避免重复创建图片,引起性能问题。使用Glide等图片库使用 webp 替换 png 格式,或者使用 Ti...

2020-03-18 16:07:53 296

原创 一步一步教你将开源项目上传到jcenter

注册与上传 JCcenter写得比较清楚的文章,我直接引用过来了,感谢开源,我就不重复造轮子了。直接贴链接,感谢原作者。一步一步教你将开源项目上传到jcenter(第一种方式)一步一步教你将开源项目上传到jcenter(第二种方式)特别说明,我使用的是第一种方式完成了注册和相关设置选项。根据文中的方式操作,一步一步来,问题不到。可能需要特别注意的是配置文件的编写。这里我贴一份配置文件 ...

2020-03-11 14:39:11 480

原创 Android Studio 自带虚拟机相关问题

Android Studio模拟器隐藏底部导航栏

2020-03-09 15:44:11 746

原创 【图像处理 】002 Android .9 图片相关处理

使用 AS 制作 .9 图片的步骤以及 .9 PNG 图片各条边的意义

2020-03-09 15:22:25 347

原创 Android 带你从 0 实现基本的 BLE 开发

纯手写实现极简方式 BLE 开发,并适度封装。实现扫描、连接、发送、接收等功能下面带大家从 0 实现基本的 BLE 开发。文末提供 git 完整源码。权限进行蓝牙相关操作,需要使用到蓝牙权限,在AndroidManifest.xml清单文件中添加相应权限<uses-feature android:name="android.hardware.bluetooth_le" ...

2020-01-10 15:23:34 1410 6

原创 Android 从开发角度来看经典蓝牙和低功耗(BLE)蓝牙的区别

1. 开发分类直接看图。从图中可以看到,对于数据量较大的传输,如音视频等开发,需要使用经典蓝牙模式。而对于现在兴起的 AIOT 物联网、智能家居等领域,则会选择低功耗蓝牙 BLE,因为成本和功耗更低,并对实时性要求更高。从现如今手机的实际体验来看,手机上的蓝牙应该是双模蓝牙,以小米手机为例,它可以连接蓝牙耳机进行听音乐,也可以连接智能家居设备,控制家电。所以,根据上图划分,按照应用划分的...

2020-01-06 11:36:04 1308

RpcPost.zip

过导入 dubbo api包,自动生成请求参数的JSON数据,通过注册中心找到服务提供者对dubbo接口进行调试,支持nacos,zookeeper,redis注册中心,同时单机版直接dubbo服务进行调试。

2021-03-25

判断录音权限,兼容android6.0以下以及以上系统

判断录音权限,兼容android6.0以下以及以上系统,包含测试用例和封装好的工具类

2018-05-10

Android 记住密码和自动登录界面的实现

Android 记住密码和自动登录界面的实现(SharedPreferences 的用法)

2018-05-09

sqlite数据库工具类

基于room技术封装了数据库工具类,包含DbManager类和DbHelper类,方便复用

2018-04-20

LitePal快速上手demo

LitePal快速上手demo,上手很简单,需要的可以下载看看,希望对你有帮助

2018-01-17

Volley的使用demo

包含了volley的基础用法,调用十分简单,因为有封装好的工具类,Volley的使用demo,需要的可以下载看看。

2018-01-16

Retrofit简单上手的demo

Retrofit简单上手的demo,包含了使用retrofit的 详细步骤以及对retrofit的简单封装,目的是让你快速上手retrofit

2018-01-16

TabLayout小demo

用来和Viewpager结合使用来作为Viewpager的选项卡

2017-07-10

自定义键盘布局实现判断键盘的隐藏与弹出

自定义键盘布局实现判断键盘的隐藏与弹出

2017-06-23

EdieTextDemo

EdieTextDemo包含了EditText常用的UI效果以及常用的监听方法,还总结了使用过程中的一些坑

2017-06-15

app启动页加载一张图片

app启动页加载一张图片

2017-06-14

Intent传值Demo

Intent 数据传递,包含基本数据类型,对象类型,包含基本数据类型的数组,包含对象类型的数组,涉及到Parceable接口 Seriziable接口的用法

2017-06-13

ColorToast

Android Toast 自定义彩色Toast

2017-06-13

软件设计师知识点总结

里面包含了自己总结的软件设计师中级考试认证相关考试知识点,自己总结的。还包含了一份下午试题解析文档,帮你了解下午试题。

2013-05-30

蓝桥大赛笔记和试题

包括部分蓝桥软件设计大赛的题目和试题,蓝桥软件大赛官方部分试题

2013-05-30

软件设计师考试题目答案

2012年5月软件设计师考试相关的真题和答案解答。内容比较全面

2013-05-30

2010年软件设计师试题及答案

2010年软件设计师考试题目和答案.包括上午和下午的。

2013-05-22

桌面搜索条

GidotBox桌面搜索条,可以设置他的显示位置,以及呼出快捷键,在开发过程中更快捷打开网页进行查询,很方便,很实用

2013-03-07

64K3D之汇编小程序

里面包含了质量更高,代码量更小的汇编精巧程序,让更少的代码完成更多的任务,做到非凡的效果

2012-10-12

DHTML 手册.chm

DHTML手册.chm介绍以下内容: 动态 HTML (DHTML) 对象模型参考 DHTML 对象 DHTML 属性 DHTML 方法 DHTML 事件 DHTML 集合 HTML 参考 HTML 元素 HTML 字符集 样式表(CSS)参考 CSS 属性参考 CSS 长度单位参考 其他参考 命令标识符 缺省行为参考 htc 行为参考 可视化滤镜和切换参考 HTML+TIME参考 网页矢量图形标记语言 HTML 应用程序 技巧 语言代码 颜色表

2012-10-12

W3CSchool1.chm

w3c W3C为解决 Web 应用中不同平台、技术和开发者带来的不兼容问题,保障 Web 信息的顺利和完整流通,万维网联盟制定了一系列标准并督促 Web 应用开发者和内容提供者遵循这些标准。标准的内容包括使用语言的规范,开发中使用的导则和解释引擎的行为等等。W3C也制定了包括XML和CSS等的众多影响深远的标准规范。 但是,W3C 制定的 web 标准似乎并非强制而只是推荐标准。因此部分网站仍然不能完全实现这些标准。特别是使用早期所见即所得网页编辑软件设计的网页往往会包含大量非标准代码。

2012-10-12

《人件》中文版

  “人件”一词,是指与计算机互动的人的条件。在管理学界,该书已是关于“人件”理论的经典之作,它专门讨论了软件开发和维护的团队管理问题。迪马可和李斯特根据他们管理软件开发项目长达十余年的经验,向那种以为可以从人和团队管理中获得最佳成果的习惯做法提出挑战。1999年2月,他们出版了《人件》的第二版,增补了八章。这些增补内容对大型的组织中的团队如何运作进行了探索,视角更加开阔。

2012-09-16

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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