自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 android json解析详解(json手动解析)

一 .json简介 1)概念:json全称是javaScript object Notation,是一种病轻量级的数据交换格式。 2)特点: 1.本质就是具有特定格式的字符串 2,.json完全独立于编程语言 3.json比xml数据传输的有效性要高出很多 二。json数据格式...

2017-11-13 08:43:17 34492 1

原创 福利!福利!!!弄懂这些java面试题,面试官对你刮目相看!(该面试题带有答案)

简言: 2020年我们没有被疫情压倒,我们都在坚持着,努力着,为在中国而感到骄傲! 矫情完了。 今年的经济三驾马车,投资、消费和出口,都恨不乐观。 政府的财政投资刺激可以加码,但是加码量无法抵消消费和出口的损失。 关键的是民间投资恐大幅下滑,企业支出也会大幅收缩。 红杉资本提醒企业家可...

2020-05-27 13:22:52 824 0

原创 EventBus内部是如何实现的? 让我们爱不释手
原力计划

简言: 相信大家都使用过EventBus,用起来真的是奥利给啊,使用简单,开销还小,这种异步框架真的是让人爱不释手啊,当然了,有一大部分人更加喜欢Rxjava这个框架,毕竟这个框架更NB, 但是今天得主角不是Rxjava,是EventBus,带大家看看他的内部实现是什么?当然在讲源码之前,还是先...

2020-04-03 11:10:46 3550 0

原创 你真的懂了Glide图片框架了吗?它来了,它来了,它带着资源走来了...

简言: 之前写过关于Glide的文章,都是一些如何使用的案例,比较注重使用了,没有考虑它的源码是如何实现的,今天为大家讲解一下源码,从源码的角度让你了解Glide这个神奇的图片框架。 1.Gilde 简介 在泰国举行的谷歌发布者论坛上,谷歌为我们介绍了一个叫Gilde的图片加载库,作者是b...

2020-03-31 13:26:04 5199 0

原创 你真的了解BlockCanary了吗?让我带你走进源码,深入了解BlockCanary的实现原理与使用

这次疫情还没有过去,但是生活依旧,还是要工作,还是要挣钱,在这里多的话不说,“武汉加油!”闲言少叙,我们直接走入主题,我们在开发复杂项目的时候,代码的迭代,修改等,都会出现UI卡顿,或者出现ANR的时候,造成的程序崩溃,等,我们如何定位到卡顿的位置等,所以国内开发者,给我送来一个福利,BlockC...

2020-03-02 13:49:46 5481 1

原创 你还停留在使用Dagger2吗? 带你一步一步走进Dagger2的世界

Dagger2是一个依赖注入框架 1.什么是依赖注入? 就是目标类中所依赖的其他的类的初始化过程,不是通过手动编码的方式创建 将其他的类初始化好的实例自动注入到我们的目标类当中。它也是面向对象的一种设计模式, 主要作用就是降低我们程序的耦合。 讲述两个场景来描述一下Dagger2: 1...

2020-01-22 15:04:32 15752 1

原创 深入剖析你不知道的Retrofit网络请求神器(三)

我们继续上一篇的源码分析: https://blog.csdn.net/wk_beicai/article/details/104048326 总结RxJavaCallAdapterFactory 理论上: 我们获取一个Call<T> 对象,用这个Call对象执行具体的Http请...

2020-01-20 15:07:04 15308 1

原创 深入剖析你不知道的Retrofit网络请求神器(二)

上一篇文章讲解Retrofit使用过程: https://blog.csdn.net/wk_beicai/article/details/104030451 接下来讲解通过源码分析,它的Builder整个过程: 点击Retrofit查看源码: 首先是这七个重要的成员变量: ser...

2020-01-20 10:22:27 13808 0

原创 深入剖析你不知道的Retrofit网络请求神器(一)

前言: android网络请求,目前使用最多的应该就是Retrofit了,之前的volley,xUtils3,okHttp,很快将会变为过去时,(个人认为)但是之前的框架就不好了吗,只是因为技术在不断的更新,每位技术大牛都喜欢追求更好的技术,所以它们也将会注定成为过去时,今天我主要讲解的就是Re...

2020-01-18 15:25:43 12327 0

原创 java 学习视频 从基础到精通以及框架

最全的视频大全 1.关于java的视频以及资源代码等 1)JavaWEB视频教程 链接:https://pan.baidu.com/s/1xDe2weeZcYpEQ_l7c5ZBUw 提取码:t6y9 2)Java开发利器:IntelliJ IDEA的安装、配置与使用 链接:https:...

2020-01-03 14:12:02 11484 0

原创 你还在为学习数据库烦恼吗? 最全的mySQL知识点整理,帮助你成长!

1.数据库的好处 1.持久化数据到本地 2.可以实现结构化查询,方便管理 2.数据库相关概念 1、DB:数据库,保存一组有组织的数据的容器 2、DBMS:数据库管理系统,又称为数据库软件(产品),用于管理DB中的数据 3、SQL:结构化查询语言,用于和DBMS通信的语言 3.数据库存...

2020-01-03 11:48:19 11393 0

原创 你还在为排序而苦恼吗?最全的排序来喽

简言: 排序算法可以分为内部排序和外部排序。 内部排序是数据记录在内存中进行排序。 外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。 2. 各...

2019-12-10 14:01:19 20030 1

原创 1024 程序员节日快乐

2019-10-24 只有我们程序员的节日,虽然公司不放假,虽然啥礼品也没有,但是。。。 转眼在csdn写博客已经三年了,自己学到很多,访问量也达到了31万,排名1万多,虽然自己还是差很多,但是我会继续努力,给大家带来更好的东西。 在这三年里,虽然学习了很多除了android的知识,pytho...

2019-10-24 15:34:52 3169 1

转载 面试官,不要再问我三次握手和四次挥手

文章目录 1. 三次握手 1.1 为什么需要三次握手,两次不行吗? 1.2 什么是半连接队列? 1.3 ISN(Initial Sequence Number)是固定的吗? 1.4 三次握手过程中可以携带数据吗? 1.5 SYN攻击是什么? 2....

2019-10-15 16:23:42 2056 0

原创 java动态规划,背包问题(解决最优选择方案)

简言: 动态规划算法通常基于一个递推公式及一个或多个初始状态。当前子问题的解将由上一次子问题的解推出。使用动态规划来解题只需要多项式时间复杂度,因此它比回溯法、暴力法等要快许多。 解决动态规划问题的关键是要找到状态转移方程。将问题分解成最小的子问题,找到由子问题到全局问题的解决方案。 可...

2019-10-11 14:32:22 12997 1

原创 android 常见面试题(三)

1)请介绍下Android中常用的五种布局。 常用五种布局方式,分别是:FrameLayout(框架布局),LinearLayout (线性布局),AbsoluteLayout(绝对布局),RelativeLayout(相对布局),TableLayout(表格布局)。 1)FrameLayou...

2019-09-24 08:48:18 30712 0

原创 android 常见面试题(二)

介绍: 上一篇博客分享了一些面试题,今天接着分享一些常见的android面试题 1)什么是ANR 如何避免它?(Android线程间的通信方式 ) 答:ANR:ApplicationNotResponding(应用程序无响应).当出现下列情况时,Android就会显示ANR对话框了: 对输入...

2019-09-23 11:17:25 22807 1

原创 android 常见面试题(一)

简言: 面试是每一个找工作都要面临的问题,尤其是身为一个程序员,本身不但要有深厚的工作经验,在各个领域也要懂得一些, 做到全面德智体美劳全面发展,自身的知识体系也要庞大,各种知识点,都能略知一二。 今天为大家分享一些android面试常见的面试题以及问题的讲解,我会每天分享一些面试题,让...

2019-09-23 10:48:35 15308 4

原创 看完这篇文章,你对java单例模式会更加了解!!!

简言: 客户端不再需要是否实例化问题,把责任都给了应该负责的类去处理,其实就是一个基本的设计模式:单例模式 单例模式的定义: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。通常我们可以让一个全局变量使得一个对象被访问,但它不能防止你实例化多个对象,一个最好的办法就是,让类保存...

2019-09-21 11:47:59 10473 1

原创 面试官都爱问的java模式之装饰模式!!!

简言: Java中的23种设计模式: Factory(工厂模式),Singleton(单例模式),Adapter(适配器模式),FactoryMethod(工厂方法模式),Prototype(原始模型模式),Facade(门面模式),Bridge(桥梁模式),Composite(合成模式),...

2019-09-04 11:19:39 10514 1

原创 面试官都爱问的java模式之建造者模式!!!

开心一刻: 同事妻管严,零花钱少的可怜,今天一起打牌他输了400块没钱了。想想也可怜,就请他吃饭,吃饭时他说兄弟借十块钱吧,买张请柬回去好报帐,我当时就呆了,又TM学会一招。。。 简言: 建造者模式定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 ...

2019-09-02 15:41:53 10453 0

原创 面试官都爱问的java设计模式(工厂模式)

简言: java有二十三种设计模式,面试时几乎面试官都会问你知道哪些设计模式,单例模式,装饰模式,工厂模式,外观模式,建造者模式,适配器模式等等,不单单面试中需要你的了解渗透,在实际开发中也是大有用途的。今天主要说的是工厂模式,会以案例的形式讲解。 简单理解什么是工厂: 简单说,就是到底要实...

2019-08-31 11:32:34 1828 0

原创 android 自定义view(侧拉删除)

开心一刻: A:嘿 //是什么意思啊? B:嘿. A:呃我问你//是什么意思? B:问吧. A:我刚才不是问了么? B:啊? A:你再看看记录… B:看完了. A:……所以//是啥? B:所以什么? A:你存心耍我呢吧? B:没有啊你想问什么? …… 不断循环之后,A一...

2019-08-29 11:09:19 11058 2

原创 android 自定义view,字母排序(仿微信好友列表)

一:简言 一个月没有写博客了,公司项目比较忙,最近发现公司用到一个知识点,所以抽时间通过博客的形式分享给大家,该知识点,模仿微信的好友列表,通过字母索引进行定位,该功能主要通过几个知识点实现。下面会一一讲解。 二:具体说下思路 1 :整体用到的控件,list view(recyclerVie...

2019-08-29 10:26:04 11699 4

原创 完美简单的集成高德地图导航和语音播报功能

简介: 公司的项目用到了高德的导航功能,所以自己总结了一下高德的导航,希望对大家有所帮助。该功能集成了高德的导航和讯飞的语音播报。 集成步骤: 1) 到高德地图官网,申请账号和KEY, 进行集成 添加依赖,并且在app目录下的build,gradle文件中配置: 2) 在清单...

2019-07-31 13:48:02 12529 3

原创 android 最炫酷的效果(跳动的数字 《仿支付宝效果》)

效果图: 点击start将会从初始值 到结束值 以滚动的形式进行轮滚。(仿支付宝) 1.创建思想: 首先我们可以确定的是动画,这是一个动画,我们可以选择通过属性动画来进行实现; 然后对这些数字进行约束,进行格式化,我会一步一步讲解实现步骤, 2.实现过程: 1) 首先这是一个文本,所以我...

2019-07-31 09:22:36 14366 1

原创 android 线程下载之(断点续传)

简言: android 下载在开发中是非常常见的,下载一个视频,下载一个图片等等,我们本篇博客主要讲解 的是如何断点续传实现下载图片,apk等,开始躁动起来 1.什么是线程 线程主要分为主线程:主要处理界面相关的事情, 子线程: 处理一些耗时操作 2.都有哪些线程? 线程除了Thr...

2019-06-26 14:29:55 5470 0

原创 商米设备的集成(打印小票,刷卡功能)

简言: 公司一直在做使用pos设备有关的项目,选用的是商米的商户,设备主要实现功能就是刷卡功能与打印小票功能,商家提供了一个简单的demo,刚开始就让人蒙圈, 查阅百度,各种博客,发现关于商米设备的很少,所以只能硬着头皮,看开发文档,一步一步实现了。 1.设备 我现在主要针对的设备是P1 4...

2019-06-21 09:49:06 18323 2

转载 漫画:如何给女朋友解释什么是编译与反编译

本文经授权转载自漫话编程(ID:mhcoding) 某天下班后,我在家里进行电话面试,问到面试者这样一个问题:"你知道使用哪些办法可以反编译Java代码吗?"。但是面试者回答的并不好,所以我在面试评价中写到:"对编译原理相关知识理解的不透彻"。这时,女朋友...

2019-06-05 09:09:16 1149 0

转载 异常处理 Error: java.util.concurrent.ExecutionException,Error: com.android.tools.aapt2.Aapt2Exception的解决

1.在将一个Eclipse的项目转移到AndroidStudio的过程中,碰到了的问题如下: Error:Execution failed for task ':learnChinese:mergeDebugResources'. > Error: java.util....

2019-05-23 14:08:10 20985 1

翻译 Dart学习之基础语法(二 方法函数)

先说下我学习Dart函数的感受吧,我尝试用java语言的形式去学习Dart,但是令我意外的是,我刚迈出第一步Dart就把我踢出门外。什么意思呢?比如说,在Java中我们可以重载函数,但是Dart它没有,再比如说返回值类型,在Java中我们必须特定的给出,不然Java编译器它不认识,但是Dart不一...

2019-05-23 13:44:54 9755 0

翻译 Dart学习之基础语法

原文地址:https://www.jianshu.com/p/3d927a7bf020 承接上一篇我们搭建了Dart环境,这一篇我们将学习Dart的基础语法。 Dart的所有东西都是对象,包括数字,函数等。 它们都继承自Object,默认是都是n...

2019-05-23 13:40:15 1077 0

翻译 Flutter开发之环境配置

原博客地址:https://github.com/AweiLoveAndroid/Flutter-learning 第一次入坑Flutter,找了大佬的博客然后再添加了点自己遇到的坑,适合小白入门(应该是最详细的介绍了)。 首先简单介绍一下Flut...

2019-05-23 13:35:52 4253 0

转载 vivo X21 安装 Apk 失败问题

兼容了Android 8.0之后,所有手机安装Apk都没有问题,就唯独vivo X21这个机型会出现安装失败。 初次推断以为是没有兼容全面屏的原因,兼容了一波OK后发现仍然不行,然后就去请教了度娘,经过一个小时的百度终于找到了解决方案。 原因: vivo X21不支持安装debug版本的apk...

2019-05-23 13:31:42 4528 0

原创 ijkplayer打造完美视频播放器

1.ijkplayer简介 ijkplayer是一个基于FFmpeg的轻量级Android/iOS视频播放器。FFmpeg的是全球领先的多媒体框架,能够解码,编码, 转码,复用,解复用,流,过滤器和播放大部分的视频格式。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频...

2019-05-15 09:38:56 4761 1

原创 android view的工作原理(二)

View的工作流程主要是指mesaure , layout , draw这三大流程,即测量,布局,绘制。其中measure确定view的宽高,layout确定view的最终宽高和四个顶点位置,而draw则将view绘制到屏幕上。 1.meausre过程 如果只是一个原始的view,通过meau...

2019-04-30 10:10:57 4032 0

原创 android view的工作原理(一)

前言: 在界面上Android 提供一套GUI库,里面有很多控件,但是很多时候我们并不满足于系统系统的控件,造成应用界面的同类化比较严重,所以我们需要自定义view,可以实现不同的效果,为了更好的自定义view.还需要掌握View的底层工作原理。例如:view的测量流程。布局流程以及绘制流程,这...

2019-04-29 11:09:27 4025 0

原创 android view的事件体系(四)

简言: 这篇博客主要讲的是滑动冲突问题,相信做过开发的都会知道,滑动冲突实在是太坑人了,只要出现滑动冲突,就会无法正常工作,产生滑动冲突主要是因为内外两层同时可以滑动,这个时候就会产生滑动冲突,今天主要讲解滑动冲突的解决方案: 1)常见的滑动冲突场景: 1.外部滑动方向和内部滑动方向不一致 ...

2019-04-28 11:13:15 4364 0

原创 android view的事件体系(三)

android 事件分发机制的源码分析 1.Activity对点击事件的分发过程 当一个点击操作发生时,事件最先传递给当前的activity,由activity的dispatchTouchEvent来进行派发, 具体工作由activity内部的window完成,window会将事件传递给de...

2019-04-27 11:20:53 1056 0

原创 android view的事件体系(二)

一。弹性滑动 View的滑动是比较生硬的滑动过去,在瞬间完成,用户体验太差,所以我们要实现弹性滑动。 思想: 将一次大的滑动分成若干次小的滑动,并在一个时间段完成, 实现方式: Scroller ,Handler & postDelayed ,thread & sleep ...

2019-04-26 10:13:17 1044 0

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