自定义博客皮肤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 JetPack系列文章 已完结

前言 Jetpack是一套库、工具和指南,可帮助开发者更轻松地编写优质应用,接下来一个月 我将持续更新JetPack组件系列文章 为此我自己做了一个简易的系列目标,欢迎共同打卡奋战! 1、Android Jetpack系列之ViewBinding和DataBinding 持续更...

2020-05-22 22:34:21 331 2

原创 我的MVVM 开源小项目已发布~

前言 前几篇文章中,我们学习了许多Jetpack架构组件,虽说每个架构组件都是相互协调使用的,但是相信还是有很多人不知道如何搭建一个Jetpack的项目,不知道网络请求该放在什么地方,或者说其他的开源项目功能比较多导致学习也无从下手。那么这个开源小项目MvvmNews一定能帮助到你! 项目简介...

2020-05-26 21:08:18 3150 14

原创 Android Jetpack系列 之LiveData

前言 在Android Jetpack 之ViewBinding和DataBinding这篇文章中,我们讲到了可观察的数据对象,在Jetpack组件中也为我们提供了强大的可观察的数据存储器类,就是我们本篇所说的LiveData。 LiveData 与普通可观察类不同的是LiveData具有生...

2020-05-22 22:33:38 850 0

原创 Android Jetpack系列之 ViewModel

前言 前面两篇文章我们已经学习了Lifecycle和DataBind,本片文章我们来学习Jetpack系列中比较重要的ViewModel,Jetpack的很多很多组件都是搭配使用的,所以单独的知识点可能会有些”无意义“但却是我们项目实战的基础! ...

2020-05-22 22:33:03 210 2

原创 Android Jetpack系列之Lifecycle

前言 Lifecycles是Jetpack架构组件中用来感知生命周期的组件,使用Lifecycles可以帮助我们写出和生命周期相关更简洁更易维护的代码。 生命周期 生命周期这个简单而又重要的知识相信大家早已耳熟能详。假设我们现在有这样一个简单需求: 这个需求只是一个实例,在真实的开发中当然...

2020-05-22 22:32:35 210 0

原创 Android Jetpack 之ViewBinding和DataBinding
原力计划

前言 Jetpack 是一套库、工具和指南,可帮助开发者更轻松地编写优质应用。 现在无论走到哪儿,如果Android开发者说自己不了解Jetpack,怕是会被人”鄙视“的看一眼,从今天开始,我会写一系列Jetpack的文章,让我们一起来学习强大的Jetpack吧。 ViewBinding ...

2020-05-22 22:32:07 347 0

原创 Android中 使用 WebSocket 实现消息通信

前言 消息推送功能可以说移动APP不可缺少的功能之一,一般简单的推送我们可以使用第三方推送的SDK,比如极光推送、信鸽推送等,但是对于消息聊天这种及时性有要求的或者三方推送不满足业务需求的,我们就需要使用WebSocket实现消息推送功能。 基本流程 WebSocket是什么,这里就不做介绍...

2020-05-22 22:31:37 340 0

原创 自定义View二篇,如何自定义一个规范的ViewGroup

前言 在自定义View开篇,必须跨过的一道坎儿中,我们介绍了自定义View的几种方式,以及如何实现一个规范的自定义View,上文中也说了,实现一个规范的自定义ViewGroup是一件比较困难的事情,因为要考虑的情况包含 本身的padding以及子view的margin 与 本身wrap_cont...

2020-02-07 13:50:23 3487 0

原创 自定义View开篇,必须跨过的一道坎儿

前言 对于许多Android开发者而言,无论工作的方向是什么,自定义View是不得不跨过去的一道坎儿,相信很多伙伴有这样的感受,关于自定义View的知识都看的明白,甚至滚瓜烂熟,但是遇到自定义View实战的时候,还是感觉无从下手,其实想学好自定义View,只有一个字,'练",...

2020-02-06 16:20:06 3431 2

原创 字符串匹配算法从indexOf函数讲起

前言 相信每个学习过Java的人都使用过indexOf函数,indexOf函数我们可以查找一个字符串(模式串)是否在另一个字符串(主串)出现过,返回结果表示出现位置的下标,如果返回-1,表示模式串在主串中不存在,那么,你可曾想过这些查找函数又是如何实现的呢? 从indexOf源码看起 首...

2019-12-24 09:50:53 933 0

原创 2019年总结,平凡的我仍在平凡的生活

时光荏苒,2019年即将结束,平凡的一年,平凡的我仍在平凡的生活。 清晰的记得,18年年初给自己制定的几个flag: 1.运营好公众号,用户数量翻倍 2.经常写博客 3.发布自己的开源库 4.扎实技术功底,厚积薄发 5.听说flag立多了,自己都会想笑 如今翻出来,果不其然,我中了第...

2019-12-21 15:21:42 6451 52

原创 Android Gradle 多渠道打包

前言 什么是多渠道打包以及多渠道打包可以做什么,这里就不做介绍了,相信看到这篇文章的你已经了解了,多渠道打包的方式比较多,这里我们用Gradle多渠道打包方式。 和其他文章有什么不同 网上看到的大多数文章都只讲解了 1.如何修改包名 2.如何修改变量的值 3.如何替换string中的资...

2019-10-21 18:54:51 936 0

原创 Android 贝塞尔曲线实现水纹波动效果

前言 最近工作上比较忙碌,很久没有更新文章了,难得国庆小长假,现在是2019年10月2日凌晨00:49,写一篇简单且实用的贝塞尔曲线应用,许多技术点的文章很多前辈都已经写的很好了,所以 如有纰漏之处,欢迎留言指正,同时也欢迎各位留言需要的技术点类型,争取奉献更优质的技术文章。 贝塞尔曲线简介 ...

2019-10-02 02:14:39 979 0

原创 Android自定义View之绘制圆形头像

前言 做APP应用开发的时候,用户头像肯定是必不可少的,但是90%以上的需求头像都是圆形的。那么,如何通过自定义View的方式实现圆形头像呢,那么,本片博文会告诉你不仅仅是实现过程。一定会有意想不到的收获哦! 最终效果 国际惯例,我们先来看最终实现的效果图 自定义RoundImageV...

2019-09-14 00:52:55 1346 0

原创 消息通知Notificatio在8.0上不显示,适配Android8.0

public class NotificationUtil { private Context aContext; private NotificationManager notificationManager; private static class Notific...

2019-08-30 08:46:37 2033 0

原创 Android 悬浮窗功能的实现

前言 我们大多数在两种情况下可以看到悬浮窗,一个是视频通话时的悬浮窗,另一个是360卫士的悬浮球,实现此功能的方式比较多,这里以视频通话悬浮窗中的需求为例。编码实现使用Kotlin。Java版本留言邮箱即可。 业务场景 以微信视频通话为例,在视频通话时,我们打开其他应用或点击Home键退出时...

2019-08-29 17:15:33 7179 104

原创 深入理解Android消息机制

前言 Android的消息机制主要说的是Handler的运行机制,相信大家对Handler已经非常熟悉了,Handler可以轻松的将一个任务切换到Handler所在的线程中去执行。最熟悉的就是我们只能在UI线程中更新UI,所以我们经常来用Handler来更新UI,但Handler并不是专门用来...

2019-08-06 09:04:40 1592 0

原创 Android Hook告诉你 如何启动未注册的Activity

前言 Android Hook 插件化其实已经不是什么新鲜的技术了,不知你有没有想过,支付宝中那么多小软件:淘票票 ,火车票等软件,难道是支付宝这个软件自己编写的吗?那不得写个十年,软件达到几十G,但是并没有,玩游戏时那么多的皮肤包肯定时用户使用哪个就下载哪个皮肤包。 一 未在配置文件...

2019-08-05 15:56:37 2776 17

原创 Android 在应用图标上设置未读消息数量

* 针对国内支持的Launcher分别开发,支持为: * ** 常见机型及是否支持 * *** 华为 支持 * 小米 支持 * OPPO 可以支持但需要申请 * VIVO 不支持 * SAMSUNG 支持 * MEIZU 不支持 * google 8.0开始支持 显示一个点,长按点弹出数字 不造...

2019-06-27 16:55:45 2660 11

原创 让JNI告诉你 你的应用为什么被卸载

前言 Android Jni开发相信多数Android开发者都有所了解,但是网上很多教程分为两种,一种是告诉你如何配置NDK环境变量,建个helloWorld的Demo,另一种就是太过于高端,C语言一大片,云里雾里,虽然很多公司开发都会有单独的人员来写C,但是从Android开发人员角度来说,学...

2019-04-27 22:28:20 1752 21

原创 APP启动流程解析

前言 当我们点击手机屏幕上的软件图标时,就可以打开这个软件,看似很简单的过程其实包含了许多的底层交互,看了还不明白,欢迎来打我。 一 . 启动流程简介 首先要知道的是,手机屏幕其实就是一个Activity,我们专业点将其称为Launcher,相信做过车载设备开发的朋友肯定不会陌生,Launc...

2019-04-22 10:07:15 7223 59

原创 Java反射技术详解

前言 相信很多人都知道反射可以说是Java中最强大的技术了,它可以做的事情太多太多,很多优秀的开源框架都是通过反射完成的,比如最初的很多注解框架,后来因为java反射影响性能,所以被运行时注解APT替代了,java反射有个开源框架jOOR相信很多人都用过,不过我们还是要学习发射的基础语法,这样...

2019-04-14 23:11:32 44806 53

原创 数据结构开篇-做一个有思想的程序员

前言 按照原计划,今天开始数据结构专栏的博文,数据结构系列博文是我在学习数据结构时总结所得的。不知道是否有人和当初的一样,出去面试的时候,不管面试的什么岗位,尤其是在bat,特别喜欢问一些数据结构或者操作系统方面的知识,可能你所在职位的技术能力很强但是因为数据结构不熟悉被pass了,这个时候你就...

2019-03-06 22:48:06 1851 3

原创 EventBus源码解析

前言 相信大家已经非常熟练的使用EventBus了,简单的说EventBus是一个Android事件发布/订阅框架,通过解耦发布者和订阅者简化 Android 事件传递,是个典型的观察者模式,那么是什么是观察者模式,有个很形象的比喻:西游记中各路神仙一挥手,自己的坐骑就现出原形了,那么这些妖怪...

2019-01-27 22:46:52 1679 1

原创 Android MVVM模式入门 - DataBinding的使用

前言 关于开发模式的文章,这应该算是第二篇,第一篇中讲解了Android MVP模式的使用:https://blog.csdn.net/huangliniqng/article/details/80570920 mvp模式的优点就不说了,缺点其实在使用的过程中很显然,比如现在有个需求对数据库的...

2019-01-07 22:25:48 10322 13

原创 Android 开发之 QQ变声功能实现

1.简介 在QQ中我们使用到的一个功能就是变声,QQ是使用FMOD实现的,那么同样的我们也使用FMOD让自己的应用可以变音 2.FMOD简介 fmod Ex 声音系统是为游戏开发者准备的革命性音频引擎,有时候我们下载FMOD可能不是太方便下载,我已将他下载好了放在百度云盘中: 链接:htt...

2018-12-30 22:15:01 11115 4

原创 在ubuntu 上搭建Nginx-RTMP 直播服务器

前言 近段时间在学习Android直播,那么毋庸置疑ffmpeg和WebRTC是音视频界的两个大佬。 ffmpeg的基本使用:https://blog.csdn.net/huangliniqng/article/details/81842273 看过很多教程讲解直播环境的搭建,大都是在mac...

2018-12-30 22:13:59 8429 0

原创 Android ListView侧滑删除

前言   今天是个值得纪念的日子,今天点亮了博客专家!相信我是第一个粉丝数量在20位以下,排名在万级别的以外的博客专家。 一、使用 效果图: maven: <dependency> <groupId>com.hlq...

2018-12-18 23:06:51 9519 5

原创 Android Activity的四种启动模式

前言 记得第一次探讨Activity的启动模式,是在2017年8月份,那个时候对一年后走出校门的未来很是憧憬,时间真快,已经毕业四个月,工作和生活也都趋于稳定。 一、小前言 相信很多人和我一样,在初学Android甚至初入职场的时候不了解Acticity的启动模式,或者为了面试刷题刷到了,...

2018-12-18 23:06:12 9341 1

原创 Android 自定义View小实例-实现绘制打折标签

前言 许多商城APP都会有商品打折的需求,而为文字添加下划线直接设置style就可以完成,我们在这里说的如下图,也就是我们demo实现的效果图。 1. 选取自定义View的方法 我们都知道自定义View有多种方式,比如继承自View、ViewGroup或者继承自现有的View子类等,每种...

2018-12-18 23:05:34 2574 6

原创 详解Android View的事件体系 之View基础(二)

前言 掌握View的事件体系是Android 向高级迈向的必经之路,本片博客讲解Android View的相关基础知识第二部分,后面我们会为大家讲解View事件体系、View事件分发等知识内容。View相关知识第一部分https://blog.csdn.net/huangliniqng/arti...

2018-12-13 23:46:14 1715 0

原创 Android GreenDao的基本使用

前言 Android 本地数据库有很多,Sqlite、Dbutils、LitePa、GreenDao等,其他的几个数据库框架都用过了,GreenDao还未在项目中用过,所以在这里记录下GreenDao的基本使用。   一、添加GreenDao支持  1.1 在项目根目录下的build.gr...

2018-12-13 23:44:53 2357 2

原创 详解Android View的事件体系 之View基础(一)

前言 掌握View的事件体系是Android 向高级迈向的必经之路,本片博客讲解Android View的相关基础知识第一部分,后面我们会为大家讲解基础知识第二部分、VIew事件体系、View事件分发等知识内容。 1.View基础 1.1 什么是View 简单的说View是所有控件的“祖宗...

2018-11-17 23:30:32 1874 0

原创 微信支付WXPayEntryActivity 不回调

微信支付同步回调不回调问题记录 1.微信支付官方文档 https://pay.weixin.qq.com/wiki/doc/api/app/app.php?chapter=8_5 第三方的东西都是比较简单的,直接看官方文档就可以,无论支付宝支付还是微信支付,客户端的工作量要小于服务端 有同...

2018-10-16 10:58:51 8954 0

原创 Android正在加载动画

LoadingImage 正在加载的ImageView 使用方法 maven <dependency> <groupId>com.hlq</groupId&am...

2018-09-27 16:15:25 9944 0

原创 Android动画详解

前言 Android动画分为视图动画(View Animation)和属性动画(Property Animation),视图动画分为补间动画(Tween Animation)和逐帧动画(Frame Animation)。本次主要讲解Android 视图动画的使用。 1.视图动画 视图动画...

2018-09-26 17:51:12 7215 0

原创 Android shortcuts快捷方式实现(支付宝长按图标弹出快捷方式入口)

前言 Android shortcuts算是比较老的技术了,现在许多诸如支付宝、百度地图等都实现了这一功能,这一功能是Android7.1推出的新功能,但是在国内app使用的还是比较少。我们先来看一下支付宝实现的效果图。 这样我们在使用的时候会方便许多,个人认为这种快捷方式更适合静态使用,...

2018-09-12 14:46:07 7976 2

翻译 Android连续的获取蓝牙的RSSI

基于蓝牙的RSSI可以有很多应用,要获得蓝牙的RSSI无外乎两种方法,一种就是基于扫瞄的方法,优点是Android本身支持,缺点是scan的时间比较长,并且中间过程不受控制,为了连续的测量,需要不断的scan;第二种就是,基于连接的方法,前提是要建立两个蓝牙设备的连接后,再测量RSSI,优点是后期...

2018-09-05 17:13:22 9262 0

原创 Android 解析蓝牙广播数据

依据Android ScanRecord类的源码编写了ScanRecordUtil 类,扫描BLE设备,会获取byte[] scanRecord字节数组,可直接调用ScanRecordUtil.parseFromBytes(scanRecord).toString();获取广播中的信息,其他单独获...

2018-09-05 17:03:52 10421 11

原创 Android studio插件开发

前言 使用Android studio或者idea开发的朋友肯定都安装了许多插件,比如我们常用的GsonFormat、ButterKnife等,那么我们如何编写自己的插件呢,当然也可以发布到官网所有人都可以查找到你开发的插件,那么我们这边文章为大家讲解Android studio插件开发之插件开...

2018-09-02 15:33:08 8761 0

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