在我的目前阶段,许多开源项目的产生都是直接来源于项目本身的需求,比如这次要讲的读取短信验证码的封装库。
项目目前挂在 github 上的公司组织下,地址为:https://github.com/parkingwang/sms-captcha。使用方法很简单,在界面创建时注册:
1 | mCaptchaObserver = SmsCaptcha.with(this) |
界面销毁时移除注册:
1 | mCaptchaObserver.unregister(); |
在我的目前阶段,许多开源项目的产生都是直接来源于项目本身的需求,比如这次要讲的读取短信验证码的封装库。
项目目前挂在 github 上的公司组织下,地址为:https://github.com/parkingwang/sms-captcha。使用方法很简单,在界面创建时注册:
1 | mCaptchaObserver = SmsCaptcha.with(this) |
界面销毁时移除注册:
1 | mCaptchaObserver.unregister(); |
在经过上一次尝试剖析源码后,我意识到自己并没有一种比较好的方式去讲解代码,从而无法把自己所知道的知识更好地输出。所以接下来,至少在源码讲解有新想法前,我都不会再去尝试,也尽量减少博客中的非核心代码,而以思路及想法为主。另外,我也将尝试改进技术博客的笔法,段落之间尽量连贯,整体内容尽量有节奏感,目标是做到深入浅出地表达出主题相关内容。
从 Android 6.0(API 23)开始,用户可以在应用运行时向其授予权限(6.0 以下,国内厂商也多数做了类似的权限管理),而不是在应用安装时授予。这一方法既可以简化应用的安装过程,也可以让用户对应用的功能进行更多的限制。
在 Android 系统中,系统权限分为两类:正常权限以及危险权限。其中正常权限是不会直接给用户隐私权带来风险的,如果应用在其清单中声明了该权限,则系统会自动授予该权限。而危险权限,从 6.0 开始,而需要应用动态申请,并且由用户授予。
more >>虽是迟了几天,但总归是有了总结了。回顾过去一年,分几个方面概括一下。
status-bar-compat 在过去几个月的 star 量有些增幅,目前已过 400,算是我那些小打小闹的开源项目中 star 量最多的一个。fir-publisher 发布到 fir 的一个 Gradle 插件,简单,轻量,新增了对 Android Gradle 3.0 的支持,目前仍是仅公司内部使用的状态。几年前参考网上的文章写过天天连萌自动玩的项目(之前写在 iteye 的博客上:http://maosidiaoxian.iteye.com,github 项目地址为:https://github.com/GameTerminator/lianmeng),这次微信小游戏里的跳一跳玩了玩,就自然而然地想到用同样的方式来做。
经过几次修正和简化,最终思路和实现如下:
more >>一个技术人扎堆的不谈技术的微信群里,有人发了个跳楼的视频。一个平日活跃的人,在评论中叫好。
一段短短的视频,一个没有任何犹豫跳下来的人。
几句喝彩的话。
有人惋惜,但没有其他人质疑。
我无法理解那个喝彩的人的心态,正如无从理解跳楼者的动机。
喝彩叫好的人认为,“这样跳楼挺好的”,“不要秀,直接做”,“不要扰乱社会秩序,不要捕捉眼球,要死赶紧”。虽是事后评论,又哪里不胜过于当场欢呼。
就因为看到直接跳下,就因为没有看到“秀”,就觉得好,那么,还未淡出程序员视野的中兴员工跳楼事件里,那个在这里喝彩的人如果没有喝彩,可是看到了“秀”?如果没有看到“秀”,是否也一样为之喝彩?
之前在《一步步打造自己的通用上拉加载布局》(如果没有看过,建议先看下这一篇)写到如何实现一个通用的上拉加载布局,本文将基于此进行扩展,实现 RecyclerView 的上拉加载及自动加载。
more >>上篇在对 CoordinatorLayout 作了一些简单介绍,以了解 CoordinatorLayout 带来的一些特性和常见用途。本篇将对 CoordinatorLayout 的源码进行一些分析,以了解它的相关特性的运行原理,以及 Behavior 的执行过程。
more >>CoordinatorLayout是2015 I/O大会发布的一种布局,它可以说是一个非常强大的FrameLayout,主要用于协调(Coordinate)子控件,来帮助实现它们之间的一些交互效果。它适合用于应用的顶层布局,或是View之间交互的一个容器。
本篇主要是对CoordinatorLayout的相关内容进行一个初步的认识,看看 CoordinatorLayout 都提供了哪些特性来帮助完成View之间的交互。
more >>tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent:
meta: false
pages: false
posts:
title: true
date: true
path: true
text: false
raw: false
content: false
slug: false
updated: false
comments: false
link: false
permalink: false
excerpt: false
categories: false
tags: true