ABded
码龄5年
关注
提问 私信
  • 博客:25,649
    动态:8
    25,657
    总访问量
  • 36
    原创
  • 2,230,548
    排名
  • 179
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:北京市
  • 加入CSDN时间: 2019-09-29
博客简介:

ABded的博客

查看详细资料
个人成就
  • 获得25次点赞
  • 内容获得49次评论
  • 获得93次收藏
  • 代码片获得159次分享
创作历程
  • 10篇
    2021年
  • 22篇
    2020年
  • 4篇
    2019年
成就勋章
兴趣领域 设置
  • 数据结构与算法
    数据结构
  • 移动开发
    kotlinflutterandroid studio
  • 软件工程
    性能优化
  • 学习和成长
    面试
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

352人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Android进阶知识——Android性能优化

文章目录1.Android的性能优化方法1.1布局优化1.2绘制优化1.3内存泄漏优化通过本章的内容,我们可以掌握常见的性能优化方法,这将有助于提高Android程序的性能;另一方面,本章还将讲解Android程序的设计思想,这将有助于提高程序的可维护性和可扩展性。Android设备作为一种移动设备,不管是内存还是CPU的性能都受到了一定的限制,无法做到像PC设备那样具有超大的内存和高性能的CPU。鉴于这一点,这也意味着Android程序不可能无限制地使用内存和CPU资源,过多地使用内存会导致程序内存泄
原创
发布博客 2021.06.09 ·
1312 阅读 ·
1 点赞 ·
5 评论 ·
2 收藏

Android进阶知识——Android线程和线程池

文章目录1.主线程和子线程2.Android中的线程形态本章的主题是Android中的线程和线程池。线程在Android中是一个很重要的概念,从用途上来说,线程分为主线程和子线程,主线程主要处理和界面相关的事,而子线程则往往用于执行耗时操作。除了Thread本身以外,在Android中可以扮演线程角色的还有很多,比如AsyncTask和IntentService,同时HandlerThread也是一种特殊的线程。尽管AsyncTask、IntentService以及HandlerThread的表现形式都有
原创
发布博客 2021.06.06 ·
910 阅读 ·
2 点赞 ·
9 评论 ·
11 收藏

Android进阶知识——Android的消息机制

文章目录从开发的角度来说,Handler是Android消息机制的上层接口,这使得在开发过程中只需要和Handler交互即可。Handler的使用过程很简单,通过它可以轻松地将一个任务切换到Handler所在的线程中去执行。Android的消息机制主要是指Handler的运行机制,Handler的运行需要底层的MessageQueue和Looper的支撑。MessageQueue的中文翻译是消息队列,它的内部存储了一组消息,以队列的形式对外提供插入和删除的工作。虽然叫消息队列,但是它的内部存储结构并不是
原创
发布博客 2021.06.01 ·
922 阅读 ·
1 点赞 ·
2 评论 ·
2 收藏

Android进阶知识——Android动画深入分析

文章目录1.View动画1.1View动画的种类Android动画可以分为三种:View动画、帧动画和属性动画,其实帧动画也属于View动画的一种,只不过它的平移、旋转等常见的View动画在表现形式上略有不同而已。View动画通过对场景里的对象不断做图像变换(平移、缩放、旋转、透明度)从而产生动画效果,它是一种渐进式动画,并且View动画支持自定义。帧动画通过顺序播放一系列图像从而产生动画效果,可以简单理解为图片切换动画,而如果图片过多过大就会导致OOM。属性动画通过动态地改变对象的属性从而达到动画效果。
原创
发布博客 2021.05.26 ·
945 阅读 ·
0 点赞 ·
9 评论 ·
2 收藏

Android进阶知识——View的工作原理

文章目录1.初识ViewRoot和DecorView本章我们主要介绍两个方面的内容,首先介绍View的工作原理,接着介绍自定义View的实现方式。有的时候我们可能想要在界面上实现一些比较华丽的效果,而往往系统提供的现有控件并不能满足我们的需求,这个时候我们就需要使用自定义View了。为了更好地自定义View,还需要掌握View的底层工作原理,比如View的测量流程、布局流程以及绘制流程。除了View的三大流程以外,View常见的回调方法也是需要熟练掌握的,比如构造方法、onAttach、onVisibi
原创
发布博客 2021.05.16 ·
377 阅读 ·
2 点赞 ·
7 评论 ·
2 收藏

Android进阶知识——View的事件体系

文章目录1.View的基础知识1.1什么是View1.2View的位置参数1.3MotionEvent和TouchSlop1.4VelocityTracker、GestureDetector和Scroller本章我们将介绍Android中十分重要的一个概念:View,它的应用十分广泛。比如说自定义控件和解决滑动冲突等,因此学好Veiw的事件体系对于我们开发者而言是十分必要的。1.View的基础知识本节我们将主要介绍的内容有:View的位置参数、MotionEvent和TouchSlop对象、Veloc
原创
发布博客 2021.04.26 ·
451 阅读 ·
0 点赞 ·
1 评论 ·
0 收藏

Android进阶知识——Activity的生命周期和启动模式

文章目录1.Activity的生命周期全面分析1.1典型情况下的生命周期分析1.2异常情况下的生命周期分析Activity作为四大组件之首,是使用最为频繁的一种组件。而本节我们就来讲解一些Activity在使用过程中的一些不容易搞清楚的概念,主要包括生命周期和启动模式以及IntentFilter的匹配规则分析。1.Activity的生命周期全面分析首先Activity的生命周期分为典型情况下的生命周期以及异常情况下的生命周期两种。典型情况下的生命周期:指在有用户参与的情况下,Activity所经
原创
发布博客 2021.04.22 ·
317 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kotlin实战——Kotlin基础

文章目录1.基本要素:函数和变量1.1 函数1.2变量1.3更简单的字符串格式化:字符串模板2.类和属性2.1属性2.2自定义访问器3.表示和处理选择:枚举和“when”3.1声明枚举类3.2使用“when”处理枚举类3.3在“when”结构中使用任意对象1.基本要素:函数和变量1.1 函数首先我们来定义一个无返回值的函数fun main(args:Array<String>){ println("Hello,world!")}接下来我们再来看看带返回值的函数是如何定义的
原创
发布博客 2021.03.14 ·
639 阅读 ·
0 点赞 ·
2 评论 ·
3 收藏

Android基础知识——实现耗时进度圈效果

在开发过程中我们可能会去实现一些比较耗时的网络请求功能,而为了填补网络请求的时间,一般我们都是要加上一个加载进度圈的效果用以过渡。这篇文章我们就来介绍使用ProgressBar+AlertDialog来实现耗时进度圈的效果。1.编写耗时对话框的背景shape文件progress_bg.xml<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/an
原创
发布博客 2021.01.24 ·
353 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

Android开发知识——开发中遇到的问题(2)

文章目录前言1.ScrollView与ImageView共用导致出现大段空白2.透明化系统栏时遇到的问题3.百度地图定位不准确的问题4.改变Toolbar中title文字的位置前言以下内容为笔者在开发垃圾识别App时所遇到的实际问题及其解决方法,在此记录,与读者分享也供自己日后回顾。1.ScrollView与ImageView共用导致出现大段空白笔者在开发时,希望在一个界面下放入数目固定的几张图片供用户获取信息,并且由于图片较长所以采用ScrollView控件实现滑动。不过在实际开发时,却发现了滑动
原创
发布博客 2021.01.23 ·
347 阅读 ·
2 点赞 ·
1 评论 ·
3 收藏

Andorid基础知识——Retrofit的基本使用

文章目录1.Retrofit是什么2.Retrofit的使用2.1添加依赖2.2创建接收服务器返回数据的类2.3创建用于描述网络请求的接口2.4创建Retrofit实例2.5创建网络请求接口实例2.6发送网络请求2.7处理返回数据1.Retrofit是什么Retrofit主要是对Android网络请求的框架进行封装,底层基于OkHttp。换句话说,网络请求的本质还是OkHttp完成,而Retrofit仅负责网络请求接口的封装。主要是使用Retrofit接口封装请求参数,header头部,Url信息等
原创
发布博客 2020.11.01 ·
407 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android基础知识——基于位置的服务

文章目录1.基于位置的服务简介2.申请API Key3.使用百度定位。3.1准备LBS SDK1.基于位置的服务简介基于位置的服务所围绕的核心就是要先确定出用户所在的位置。通常有两种技术方式可以实现:一种是通过GPS定位,一种是通过网络定位。GPS定位的工作原理是基于手机内置的GPS硬件直接和卫星交互来获取当前的经纬度信息,这种方式精确度非常高,但缺点是只能在室外使用,室内基本无法接收到卫星信号。网络定位的工作原理是根据手机当前网络附近的三个基站进行测速,以此计算出手机和每个基站之间的距离,再通过三角
原创
发布博客 2020.10.23 ·
1195 阅读 ·
1 点赞 ·
0 评论 ·
5 收藏

Android开发知识——开发中遇到的问题(1)

文章目录1.动态控制布局的位置2.单选按钮的使用3.仅在需要时才显示布局3.1控制布局的可见属性3.2ViewStub3.3以上两种方法的利弊4.判断ImageView展示的是哪一张图片5.单选框的使用6.RecyclerView实现侧滑删除7.在活动中处理RecyclerView的点击事件1.动态控制布局的位置在开发时,我们可能需要在同一活动中的不同界面下来改变布局的位置使得布局处于一个比较合理的位置。例如:我们在活动的主界面希望用户能有沉浸式的体验,所以我们将我们的布局延伸到了系统栏中,可是当我们
原创
发布博客 2020.10.18 ·
2099 阅读 ·
4 点赞 ·
8 评论 ·
3 收藏

数据结构(1)——链表的基本操作

文章目录1.链表的基本概念2.创建链表2.1尾插法2.2头插法3.链表的遍历及其增删改查3.1链表的遍历3.2增加新节点3.3删除节点3.3.1按位删除节点3.3.2按数据删除节点3.4修改数据3.5查找数据4.链表的升序合并,冒泡排序,逆置4.1升序合并4.2冒泡排序4.3逆置1.链表的基本概念概念:链表是一种线性的数据结构,通过指针将零散的内存块连接起来,链表的没个内存块成为节点。链表的实现方法:链表以结构体为节点(包含数据域和指针域),利用数据域来存储数据,然后将每个节点的指针域都指向下一个节
原创
发布博客 2020.09.22 ·
2330 阅读 ·
1 点赞 ·
0 评论 ·
19 收藏

Android基础知识——你还应该掌握的高级技巧

文章目录1.全局获得Context的技巧2.使用Intent传递对象2.1Serializable方式2.2Parcelable方式3.定制自己的日志工具1.全局获得Context的技巧在我们学习Android基础知识的时候,你会发现在很多地方我们都会使用到Context,弹出Toast的时候需要,启动活动的时候需要,发送广播的时候需要,操作数据库的时候需要,使用通知的时候需要,等等等等。所以有时候在需要使用Context时,却不知道该怎么获得Context将会是一件非常伤脑筋的事情。本节我们就来介绍一
原创
发布博客 2020.09.20 ·
1063 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android基础知识——运用手机多媒体

文章目录1.将程序运行到手机上2.使用通知2.1通知的基本用法1.将程序运行到手机上下面我们讲到的一些代码,可能只有把程序运行到真机上,才会看到效果,教程。2.使用通知通知是Android系统中比较有特色的一个功能,当某个应用程序希望向用户发出一些提示信息,而该应用程序又不在前台运行时,就可以借助通知来实现。2.1通知的基本用法使用步骤:...
原创
发布博客 2020.09.13 ·
397 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Android基础知识——Material Design实战

文章目录1.什么是Material Design2.Toolbar3.滑动菜单3.1DrawerLayout3.2NavigationView1.什么是Material DesignMaterial Design是由谷歌的设计工程师们基于传统的优秀设计原则,结合丰富的创意和科学技术所发明的一套全新的界面设计语言,包含了视觉,运动,互动效果等特性。而事实上,Material Design更像是一种设计思想和理念,而本节我们并不是要以设计师的角度去学习Material Design,而是以一个开发者的角度去
原创
发布博客 2020.09.13 ·
1917 阅读 ·
0 点赞 ·
0 评论 ·
2 收藏

Android基础知识——探究服务

文章目录1.服务是什么2.Android多线程编程2.1线程的基本用法2.2在子线程中更改UI2.3解析异步处理机制2.4使用AsyncTask1.服务是什么服务是Android中实现程序后台运行的解决方案,它非常适合去执行那些不需要和用户交互而且还要求长期运行的任务。服务并不是运行在一个独立的进程当中的,而是依赖于创建服务时所在的应用程序进程。服务并不会自动开启线程,所有代码默认运行在主线程中。2.Android多线程编程当我们执行一些耗时操作,如发起一条网络请求时,考虑到网速等其他原因,服务
原创
发布博客 2020.09.05 ·
325 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Android基础知识——使用网络技术

文章目录1.WebView的用法2.使用HTTP协议访问网络2.1使用HttpURLConnection2.2使用OkHttp3.解析XML格式数据3.1Pull解析方式3.2SAX解析方式4.解析JSON数据4.1使用JSONObiect4.2使用GSON5.网络编程的最佳实践5.1HttpURLConnection5.2OkHttp1.WebView的用法有时候我么可能会遇到一些比较特殊的需求,比如说要在应用程序里展示一些网页,但又明确指出不允许打开系统的浏览器。这个时候我们就可以利用WebView
原创
发布博客 2020.09.05 ·
316 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

Android基础知识——探究内容提供器

文章目录1.内容提供器简介2.运行时权限2.1Android权限机制详解2.2在程序运行时申请权限3.访问其他程序中的数据3.1ContentResolver的基本用法3.2读取联系人4.创建自己的内容提供器4.1创建内容提供器的步骤4.2实现跨程序数据共享1.内容提供器简介内容提供器主要用于在不同的应用程序之间实现数据共享的功能,它提供了一套完整的机制,允许一个程序访问另一个程序的数据,同时还能保证被访问数据的安全性。不同于文件存储和 SharedPreferences 存储中的两种全局可读写操作模
原创
发布博客 2020.09.05 ·
310 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多