Android动态权限申请(Kotlin版)

ChanghuiN

Android6.0之后,APP有些用到的权限需要动态申请,虽然这个功能已经出来好久了,但一直没有研究过,只知道用法简单,到时候copy一下就好了,github上也有许多开源的框架供大家使用。本篇博客先介绍一下Android动态权限申请的使用方法(虽然可以copy,但还是要研究一下的),接着分析一下RxPermissions的源码,然后博主自己也写了一个开源lib,Kotlin版的,如果项目使用Kotlin作为开发语言的,可以考虑使用一下。

Android阅读全文

大学四年

ChanghuiN

2017年6月26日21时,此时此刻,漫步在学校的马路上,努力走遍学校的每一个角落,努力的回忆在这四年中发生的点点滴滴,在这最后的时刻,沉淀下大学四年的所有。

总结阅读全文

浅谈程序设计

ChanghuiN

快要毕业了,这里为同学们分享一下我学习编程的过程以及我的一些关于程序设计的理解,希望会对你们今后的学习有所帮助。如果有不同的观点,欢迎评论留言~

总结阅读全文

南锣鼓巷一游

ChanghuiN

本来打算明天去的,结果今天出了点儿小状况,上午10点开始出发~
南锣鼓巷以胡同闻名,也是最能感觉到有老北京特色的地方,当然也少不了各色小吃,去旅游基本不用吃饭,从头走到尾,看见好吃的吃点儿,边走边吃,走着走着就饱了。。

旅游日记阅读全文

FutureTask源码分析

ChanghuiN

FutureTask:一个可取消的异步任务执行类,这个类提供了Future接口的基本实现,主要有以下功能:

  • 异步执行任务
  • 可以开始、取消以及查看任务是否完成
  • 如果任务没有执行完,get方法会导致线程阻塞
  • 一旦一个执行任务已经完成就不能再次开始和结束(除非执行时通过runAndReset()方法)

Java源码解析阅读全文

Mysql 的七种 join

haifeiWu

对于SQL的Join,在学习起来可能是比较乱的。我们知道,SQL的Join语法有很多inner的,有outer的,有left的,有时候,对于Select出来的结果集是什么样子有点不是很清楚。Coding Horror上有一篇文章(实在不清楚为什么Coding Horror也被墙)通过 文氏图 Venn diagrams解释了SQL的Join。

JavaMySQL阅读全文

APP启动速度优化

ChanghuiN

APP启动速度非常重要,APP启动速度慢,可能会造成用户体验不良好,尤其是在最近用Android studio之后,如果长时间不打开app,启动速度就会特别的慢,下面我们一起探讨一下影响app启动速度的原因,以及解决方案。

Android阅读全文

2016学习总结

ChanghuiN

2016,一年过去了。在这一年里做了很多事情,也收获颇多。参加软件设计大赛、去南京总决赛(当然还有玩儿)、学习研究敲代码、复习基础准备面试、写简历、找工作、工作。

这篇文章主要一技术为主,总结一下我在这一年里的学习方法以及收获。写下来,为了总结、反思,看到自己的成长与不足,对自己有一个清醒的认识。

在学习中总结,在总结中成长…

总结阅读全文

Python基础(一)

ChanghuiN

此为学习Python的基础语法笔记,如有错误,欢迎评论纠正。

Python阅读全文

Java NIO笔记

ChanghuiN

Java NIO由一下几个核心部分:

  • Channels
  • Buffers
  • Selectors

Java学习笔记阅读全文

System方法总结

ChanghuiN

最近在研究Android源码,突然看到有很多和System有关,什么System.arraycopy、System.nanoTime(),所以专门花时间看了一下这个类。
System类代表系统,系统级的很多属性和控制方法都放置在该类的内部。该类位于java.lang包。
由于该类的构造函数问private,所以它不能被实例化,其中的方法大多使用static关键字修饰。如下为具体方法分析:

Java阅读全文

otto框架解析

ChanghuiN

otto是square公司出的一个事件库(pub/sub模式),用来简化应用程序之间的通讯。

基本原理

框架中有两个注解(@Produce、@Subscribe),分别代表生产者,订阅者。在发布事件时,框架会通过识别方法是否含有@Subscribe以及参数来确定相应的方法,然后通过反射执行所有符合该事件的方法。

Android源码解析阅读全文