自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

清风洒脱

点滴

  • 博客(71)
  • 资源 (4)
  • 问答 (2)
  • 收藏
  • 关注

原创 Flutter我来啦

结缘Flutter都知道Flutter是Google推出的,做为一名安卓开发者也不列外,从Java到Kotlin、从MVC到MVP再到MVVM,以及让人头疼的RX系列、还有kotlin协程,自己虽不是样样都用的娴熟,但是都了解一点,以至于去处面试的时候不至于被问到都不知道是啥,但是Flutter就不一样了,这个从来没出现在自己的简历上,自己也自学过一段时间,但是从来都get不到 Flutter的点,APP体验差,Dart语法还好,和Kotlin有几分相似,但是写法对于初接触者应该算是一言难尽:万物皆控件,

2021-02-17 15:14:11 195

原创 常用的一些小排序算法之冒泡排序,直接选择排序,反转排序

前言常常会被问一些排序算法,可能对于客户端开发来说,直接用到的地方不多,即便是用到了也可以直接调用sort()方法,如下://通过数组帮助类Arrays来实现 System.out.print("排序后数字:"); //创建乱序数组 int[] array ={1,3,9,4,3,6,7,5}; //调用系统自带排序 Arrays.sort(array); System.out.print("排序后数字:");

2021-01-14 13:37:49 218

原创 Kotlin空安全原理

前沿可能又要闲置一段时间了,闲置的原因长的不知道从何说起,收拾收拾心情,整理下博客,不卑不亢,静下心来,梳理下知识点,写写博客记录下,就当是给自己放假啦,浮躁的人得静下心来,能力不够学习来凑!kotlin空安全被面试官问到kotlin空安全的原理,瞬间触碰到盲区了,自己用过kotlin也知道kotlin空安全的用法以及优点,就是没有想过它的原理是什么,然后卒。回去特意查了下,kotlin对空字符串以及null的判断要比Java友好的多,相比较Java的TextUtils.isEmpty()方法,我们

2021-01-12 17:01:48 1498 7

原创 2020年终总结

不平凡的一年2020年过去了,第二个鼠年,记得08年是大地震 ,然后今年又是疫情好像过的两个鼠年都不平安,对我而言也是作死的一年,本该求稳的一年结果自己年底把工作给丢了,该死的任性,该死的面子!以后做事还是要三思。迟来的总结工作已经三年多了!真的是快,做了三年多安卓开发,有啥收获?工作换了、上进心没了、总之还是一团糟!看了看之前的规划,好像也没有特别突出的,都是那种适合而止。技术成熟了点,心思稳重了点,可是工作还是很不顺心。可能和性格也有关系,总之要改变的还是很多。三年对于互联网从业者来说是个很关键

2021-01-03 23:18:27 223

原创 Android集成支付宝支付(Kotlin)

前言之前从头到尾独立开发一个小项目,于是尝试用Kotlin来完成,基本写完就爱上了kotlin了。可以说相比较Java是相当的舒服,项目中涉及到支付,于是自己负责支付宝支付的整个流程包括申请账号,材料准备等,下面记录下整个流程账号申请账号一般都是公司提供的,登陆后需要签约支付,蚂蚁金服官网里面会有APP支付客户端Dome具体使用场景如下支付场景一般我们都是APP内部支付,客服端 集成流程如下:添加依赖我这里是以jar形式导入进来的可以去官网下载的在build.gradle中申明一下

2020-10-29 14:55:09 1269

原创 Kotlin实现的手机正则以及身份证正则判断

项目中常用的一些正则判断如手机号、身份证判段手机号正则/** * 手机号码正则判断 */ fun isPhoneNum(phone: String): Boolean { val compile = Pattern.compile("^(13|14|15|16|17|18|19)\\d{9}$") val matcher = compile.matcher(phone) return matcher.matches()

2020-10-19 11:38:21 1858

原创 Kotlin bitmap 转byte

前言在做分享的时候需要将bitmap转成byte数组输出,如下:object BitmapUtils { private val TAG = "BitmapUtils" fun bmpToByteArray(bmp: Bitmap, needRecycle: Boolean): ByteArray { val output = ByteArrayOutputStream() bmp.compress(Bitmap.CompressFormat.PNG,

2020-10-19 11:28:20 1021

原创 Android 快速点击多次响应点击事件处理

分享一个按钮快速点击多次响应点击时间的工具类如下:public class OnClickUtil { /** * 最小允许间隔,低于则无法生效 */ private static final long INTERVAL = 500; /** * 上次点击时间点 */ private static long lastTime; /** * 是否点击过快 * * @return *

2020-10-19 11:22:47 945

原创 Android中多行文本末尾添加图片排版问题的解决方法

前言项目中处理交易号的时候末尾有复制按钮,交易号末尾可以点击图片复制,当时立马就想到了textview图文混排、包括通过TextView.setHtml 来实现都发现一个问题就是:他自己会未占满就换行了。类似这种0xadd65c570fc6381b85479df607e1afad2f3c90dfjsad3464382首先drawableRight这种肯不行的应为是多行,而使用ImageSpan会出现未占满就自己换行了。解决方式其实主要问题是:换行之后还是会留一段空白,并没有占满,发现是因为当

2020-10-19 11:11:01 821

原创 小记

最近在看朱自清的散文集,蛮有感触的同样是轻描淡写的文字,可读起来就是感觉慢舒服的,淡淡的优雅,大概像午饭后散步莫名的惬意,而自己大抵是没有这个功底的,又习惯没事随便写写,就当吐槽娱乐消遣吧。自己不是一个感性的人,不会...

2020-09-16 19:46:30 95

原创 Android点击通知页面不刷新intent无法传值问题

由于项目是单Activity多fragment实现的,做极光推送处理的时候要求点击通知栏,跳转到消息那个fragment,我们知道在推送里面通过重写BroadcastReceiver通过bundle拿到值设置跳转的,很遗憾,那个Activity一直是在前台的,并且启动模式是:singleTask结果即便我的intent是:intent.setFlags(Intent.FLAG_ACTIVITY...

2020-04-03 16:03:53 524

原创 Android关于极光推送屏蔽掉默认推送,自己写本地推送处理

前沿集成极光推送大概有七八回了吧,本以为轻车熟路的,结果你永远干不过PM的脑洞。我们项目是要做国际化的,也就是多语言适配,但是测试推送的时候发现一个问题就是如果你转账的手机是什么语言,那你收款手机收到推送的语言就是什么,产品不干了说:收到推送应该和当前APP内部语言保持一致。可是后台发的推送就这个语言呀,结果开始互相甩锅了。。。。。解决方案本地负责的态度决定自己本地做处理吧,自己的思路是首...

2020-04-01 10:34:54 1369

原创 Android 实现在文字末尾添加图片

前言遇到一个这个需求就是在文字的末尾添加图片,其实本来也挺常规的,通常可以这样去实现复文本的方式String html = testUrl + " <img src='%1$s'>"; html = String.format(html, R.drawable.white_copy); pay_address.setText(Html.fromHt...

2020-03-19 17:34:40 3984 1

原创 2019年终总结

前言时间真的过的好快,记忆中依稀记得自己写18年年终总结的样子,转眼一年过去了,是啊19年的最后一个月,可以自己还是什么都没做成,年底了,一堆烦心事,现在的这份工作也不知道还能做多久,本以为自己找的是一个靠谱的工作,可是现实好残酷,公司内斗自己成了牺牲品,领导否认自己的工作成果!不知道自己还能坚持多久,大概这一年是颠覆自己认知的一年吧!能力、学历、机遇好像都在左右一个人的命运,身边的朋友不乏靠着...

2019-12-12 21:41:17 179

原创 Android 设置属性动画AnimatorSet设置pause无效问题

前言项目中做广告页动画,要求页面不可见(onpause、onstop)暂停动画执行,于是:/***初始化动画、以及相关动画执行*/AnimatorSet set = new AnimatorSet(); set.playTogether(animator, animator1);// 同时执行 set.setDuration(mLoadin...

2019-11-26 10:09:58 2045

原创 android倾斜角标实现

前言最近产品有一个需求是:要在一个距形卡片上做一个倾斜的Tag,类似:(PS:不要注意那两毛三分的穷鬼),刚开始想着用UI切图就可以了嘛,but是不可以的,在不同手机上分辨率是不同的,直接用图片适配肯定会有问题,所以打算自定义。实现思路额画图太丑了,这里解释一下:这里以左上角为例,我们可以把手机屏幕看成是一个直角坐标轴,我们要画一个斜角标示,只需要在我们的距形框内画一个正方形通过正方形的对...

2019-10-16 11:05:27 1833 1

原创 由Android禁止viewpager滑动,想到的安卓事件分发机制

前言产品有个需求是两个tab页面可以左右切换,当时立马想到我用viewPager+fragment,但是我们知道viewPager默认是可以左右滑动的,而我的需求是只可点击不可滑动,于是我就翻了一下viewpager的API发现并没有可以设置是否可以滑动的相关方法。于是我就想是否可以通过事件的分发机制去拦截它左右滑动的touch。果不其然!public class myViewpager ex...

2019-10-08 16:48:05 264

原创 Android混淆文件配置

前言正常一个APP都会开启混淆,但是有时后接手的项目并没有开启混淆,然后自己修改的时候就很蛋疼,因为开启混淆便会报错,如果有一些没有用过的第三方库更要自己去处理,这里就记录一下安卓常见的混淆文件和常规用法。混淆好处以及哪些是不能混淆的面试常问混淆好处,我们张口就来:打包时会去掉无用资源有效减少APK体积(尤其对一些开发不规范导致很多无效代码和资源文件)其实这也可以变向的解决64k问题增...

2019-09-26 20:56:50 2781 2

原创 Android AES加密密文一直变

前言做AES加密的时候本来想着直接把后台给的AES代码copy过来发现有个很奇葩的问题:我直接写main方法运行解密是OK的然后app运行却不可以每次秘文都是改变的。各种百度也不行好像是jvm什么的不兼容安卓这边,于是后台大佬做了下兼容发给我了。亲测可用。import javax.crypto.Cipher;import javax.crypto.spec.IvParameterSpec;...

2019-06-12 10:52:12 825

原创 Kotlin中的一些判空操作、空安全

前言很久没有更新博客了,其实并不是因为太忙,也不是遇到的问题不多,是迷茫了,不知道怎么去写,总感觉自己一定会去好好的写文章(哈哈幻想中),但是从来没有动过笔,因为写不好,能力不够。但是还是要去动笔呀!最近在项目中使用kotlin了之前也学了点,但是写起来还是很费力,被kotlin的判空操作搞的头昏脑胀的,这里整理一下。Kotlin 校验字符串空值isNullOrEmpty:为空指针或者字...

2019-05-24 15:32:31 13021

原创 计算两个日期相差的月数

前言最近做Calendar(日历)相关是内容,有需要计算日期之间月份的差值,研究了Calendar函数,发现真是高到大尚:计算差值 public static int getMonthDiff(Date d1, Date d2) { Calendar c1 = Calendar.getInstance();//实例化 Calendar c2 = Calen...

2019-04-15 21:09:40 6558 1

原创 布局底部弹出动画

前言项目中有一个需求是日期筛选是从底部慢慢往上弹出的效果,当时想到的是通过给布局一个展示动画来实现,然后就各种百度如何实现:创建anim首先在drawable文件夹下创建anim文件夹来存放动画布局,动画效过分为两部分:**底部弹出动画 ** bottom_show.xml<?xml version="1.0" encoding="utf-8"?><set xmlns...

2019-04-15 20:57:02 1510

原创 基于RecycleView实现的头部悬浮控件

前言前几天看到一个RecycleView中筛选框滑动可以悬浮在头部的效果类似商机盒子中的商机模块。本来想法很常规通过Recycview装饰器来实现(刚开始是否定掉的感觉太难)通过Recycleview滑动监听,判断当前可见的item是否是我需要处理的,然后通过显示隐藏来做简单的逻辑处理(但是做的时候效果不尽人意,同时Recycleview是有弹性滑动的,那段距离我监听不到,遂卒。)通过...

2019-01-26 23:16:03 652

原创 再见2018

前言其实几个月前就有打算,写个18年的总结,甚至规划了自己剩下几个月的计划,因为一年过去了,我想留下点什么,总不能碌碌无为吧!但是奈何我是个凡人,或者说是:现实生活中的自己,没有想象中的那么优秀。在没有金钱的诱惑下,坚持真的是件很困难的事情对我而言!经历了太多的半途而废,太多的迷茫,于是这个年终总结早产了!我想我需要静下心来想想,这一年我做了什么,以后要怎么做。at work如果简单的串联下...

2018-12-31 10:35:10 228

原创 Kotlin中Set、Map、List 容器使用

前言之前讲了Kotlin中基本数据类型和String字符串拼接的一些基本用法,这里学习一下kotlin中数组和集合容器,其实挺想上来就用kotlin写页面的,毕竟那样有成就感,也不会枯燥无味,但是从java学过来深知基础的重要,所以还是一步一步来。数组声明kotlin中基本类型的数组声明,初始化一个整形数组: var int_arr: IntArray = intArrayOf(1, 2...

2018-11-11 18:39:19 8091 1

原创 Kotlin基本数据类型

前言本人学Kotlin是冲着做安卓去的,所以一开始上来就借助Android studio成功创建一个Kotlin文件,洋洋洒洒用Kotlin写几个控件,然后直呼Kotlin大法好啊,自以为入门了,其实NO!NO!NO!, 写一个成序就好比盖一座房子,你只有熟悉每一块材料的用途,才能盖出你想要的房子。打完脸后决定从地基开始。基本数据类型和java类似Kotlin也有自己的基本数据类型,语法差别...

2018-11-03 16:24:52 813

原创 Android studio如何创建Kotlin工程

前言Kotlin已经出来有一段时间了,其实本人还是比较喜欢java的,但是作为一名合格的Android开发不懂kotlin肯定是说不过去的。(主要面试老是被问)所以决定花点时间来研究一下,记录自己从入门到放弃,说实话不太喜欢那些高级语言,简单就意味着会有高度的封装,这样知其然不知其所以然的感觉是很痛苦的,但是毕竟是Google的亲儿子所以未来很可能是从事Android开发的一种趋势,下面就简单记...

2018-10-08 17:56:28 7469 1

原创 Sqlite简单使用

前言Sqlite是Android自带的轻量级数据库,一个项目中多多少少都会有用到数据库地方像,下载、以及做一些埋点上传等,但是自己很少从头到尾去写过数据库。这里整理一个dome记录一下包括常用的(增、删、改、查和数据库升级)。SQLiteOpenHelper创建数据库的帮助类具体代码如下://创建数据库帮助类public class CustomSQLiteOpenHelper exte...

2018-09-28 11:04:23 324

原创 生活会善待你

文章目录会满足吗焦虑满足?你经历了什么会满足吗18年快过去了,很少真正的问过自己,想要的到底是什么,一直以为只要你加油努力,同龄人有的你都有然后你还比他们优秀你就会满足,就会有成就感。换了份工作突然闲下来,有时间去思考,却发现自己真多很少去问过自己,到底想要的是什么,到底得到什么算是满足。焦虑安逸给人带来的第一大问题就是焦虑,莫名的危机感,加班的时候,幻想过无数次睡到自然醒,但是真的有这个...

2018-09-25 10:14:37 468 1

原创 Android WeView于js交互

前言项目中遇到要通过原生去分享h5页面的内容,但是产品经理的需求比较奇葩:如果当前页面存在分享方法则去调取页面分享的方法,如果没有则取页面的第一张图片为分享图片,description为分享内容拿到需求的时候心里一愣一愣的,卧槽还有这种操作但是产品大人在上还是想办法去实现了。思路我当时想,通过WebView我们可以拿到页面的title和URL但是产品的需求时页面有分享方法得...

2018-08-02 22:45:05 308

原创 谁的青春不迷茫

前言起这个标题的时候,其实内心是拒绝的,因为自己的青春早已不在了,没有谁会甘心从一个小青年变成一位叔叔,但当你发现你再也熬不了夜,打球时都是比你高半头的00后,你必须承认你已经老了。至少不是那个无忧无虑的年纪了,你工作了,开始考虑未来了,也常常因为巨大的工作压力而失眠。去年十月份至今不到一年的时间,但是经历却很丰富,换了一家公司,新环境,新的工作习惯,整个人变了很多唯一不变的便是:工作压力以及...

2018-07-08 19:01:49 243 3

原创 Android中Strings 使用

我们都知道在Android中有一个Strings.xml文件我们也常常把一些常用的,固定的文字放在下面,这样的好处也显而易见小方面对于文案修改时我们只需要动这一个地方,大方面如果是对于国际化的APP也方便翻译成不同的语言。基本用法如果只是简单的一句话:&lt;string name="title"&gt;这是标题&lt;/string&gt;而在需要使用的地方: xx....

2018-05-23 13:53:38 3762

原创 Android如何定时向服务器发送请求

前言项目中有需求就是没过一断时间去向服务器发送请求然后去刷新UI其实思路还是比较多的但是我还是选择了CounterDownTimer方法 。CounterDownTimer话说其实用法很简单就是通过一个onTick方法来实现定时执行。但是怎么去实现了,对就是为什么。没看源码之前我猜它的大概思路是:获取系统时间用来判断通过handler机制切换线程一些具体完成开始的操作 ...

2018-05-17 13:30:17 8153 2

原创 Android 自定义Popwindow

前言没事帮朋友写一个Popwindow本来以为是很简单是事,但是做的时候遇到很多问题(差点气的我吐血)所以写篇博客记录一下,也算是给自己手高眼低的一个教训。 看到UI的时候基本上就知道怎么实现了:1, 自定义一个Popwindow的布局 2,按钮的逻辑 然后以为基本上就搞定了。 但是自己的大意忘记了Popwindow常见的几个坑:一定要设置背景颜色不然他会遮住全部让你获取不到其他控...

2018-04-02 20:05:17 5408 3

原创 TextView实现图文混排

前言我们都知道很多时候后台返回给我们的一段富文本类似这样:&lt;p&gt;&lt;img alt="laugh" height="23" src="http://img3.imgtn.bdimg.com/it/u=3140599426,288343775&amp;fm=26&amp;gp=0.jpg" " + "title=\"lau

2018-02-27 10:25:11 446

原创 Android中shape通常用法

前言线条的设置在APP中用的地方是很多的,比如很多小模块之间的分割,而这些绝大多数用shape都是可以实现的,但是在实际的使用中也会有小坑,比如如果是虚线呢 ?如果那条虚线要是垂直的呢?所以这里简单的实现以下让我们来趟一趟这浑水。shape实线如果要实现肯定会有人说这个简单用view也可以啊我把它的height设置成1dp在给个背景颜色不就可以了吗,说的确实很有道理我也这样做过要是用s...

2018-02-17 22:42:19 2477

原创 End 2018

曾今无尽的幻想现在,两年前、一年前、两个月前,但是现在的自己却只能 活在当下,没想到会这么累,也没想到自己活的这般没人品,本以为不会发生在自己身上的都发生了,所以没有经历过千万不要急着下决定 有可能你比他还渣,至少我是吧!人啊总是不珍惜眼前,直到变得忙,变得这般落魄的模样才想到 当初自己是多么快乐,可以有梦想,可以 做自己想做的事,可以任性,可以不负责任。等你 工作一切都变了,没有人对你好,该是你...

2018-02-09 13:36:20 236

原创 陪我一起走过的面试坑

前言 最近一直忙,忙着找工作,忙着搬家,忙着添衣服。。。不得不说,进入十一月的北京真的很冷。 两个多礼拜,面了有十几家公司,也不乏拿到几个offer,但是更多的是踩的坑,以及对自己技术水平、自我认知的不断提升!作为过来人一直想说句话:当你迷茫的时候,当你需要改变的时候,不妨投几家公司,来几个面试,肯定会有意外收获。 作为一名安卓开发,总结一下面试常遇到的问题吧!其实你技术面的时候可以把面试的过

2017-11-29 23:36:55 308

原创 关于支付宝的支付流程

关于支付现在的电商项目已经非常火爆了,随之而来的像支付宝,微信等第三方支付也非常的火爆,所以这里简单的说一下支付宝的支付流程。支付步骤工作前准备首先我们需要在蚂蚁金服官网上面注册一个开发者账号,上面有关于开发者的文档和需要的SDK到这我们就可以做一些实质性的开发了。创建应用并获取APPID配置秘钥 这里会生成RSA秘钥,(就是一种非对称的加密)的加密方式 它的秘钥分

2017-10-26 14:41:46 2799

原创 洒脱不了的回首

路——2017好几天碌碌无为了,本想找一些有意义的事情做,来纪念一下这个即将过去的2017——充满无数未知,和期待收获的一年,但仔细想想,倒也没什么可做,往事随风,真不确定有什么事情值得以后念念不忘,而现在的我,也不需要什么回响。如果非得留下什么的话,只想到了一大推“习惯”。习惯了刷知乎到凌晨,然后顶着黑眼圈早起,惶惶不可终日!原来自己早已过了嗜睡的年纪,无忧无虑估计死在梦里了。 也习惯了程序化的

2017-10-11 20:36:30 463 5

Android自定义view——组合控件

共同学习共同进步

2017-08-04

图片选择器

图片选择器Dome

2017-07-26

聚文小dome

自己练习的一个小项目

2017-07-13

QQ配置文件

友盟QQ登录的包

2017-07-11

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

TA关注的人

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