![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android点滴知识
栀夏暖阳
在改变和选择中不断前行理由都只有一个,为家人和理想奋斗,哪怕遍体鳞伤也是幸福的...........
展开
-
Android Studio常用快捷键汇总(mac)
mac上按键符号⌥ : option / alt⇧ : shift⌃ : control⌘ : command⎋ : esc(一)查找/查看相关搜索任意内容 双击 sft当前文件查找/替换 cmd + F / cmd + R 使用cmd + G,sft + cmd + G,跳到下一个/上一个高亮的变量全局查找/替换 sft + cmd + F ...转载 2020-04-01 18:53:23 · 181 阅读 · 0 评论 -
Android RxJava:详解 条件 / 布尔操作符
目录目录1. 作用通过设置函数,判断被观察者(Observable)发送的事件是否符合条件2. 类型RxJava2中,条件 / 布尔操作符的类型包括:示意图下面,我将对每个操作符进行详细讲解3. 具体操作符详解注:在使用RxJava 2操作符前,记得在项目的Gradle中添加依赖:dependencies { compile 'i...转载 2020-03-16 18:09:10 · 238 阅读 · 0 评论 -
Android RxJava 实际应用讲解:网络请求嵌套回调
前言Rxjava,由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。Github截图如果还不了解RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求 今天,我将为大家带来 Rx...转载 2020-03-16 15:35:28 · 638 阅读 · 0 评论 -
Android RxJava:最基础的操作符详解 - 创建操作符
前言Rxjava,由于其基于事件流的链式调用、逻辑简洁 & 使用简单的特点,深受各大 Android开发者的欢迎。Github截图如果还不了解 RxJava,请看文章:Android:这是一篇 清晰 & 易懂的Rxjava 入门教程RxJava如此受欢迎的原因,在于其提供了丰富 & 功能强大的操作符,几乎能完成所有的功能需求 今天,我将为大家详细介绍...转载 2020-03-16 14:46:02 · 150 阅读 · 0 评论 -
Android:学习AIDL,这一篇文章就够了(上)
前言在决定用这个标题之前甚是忐忑,主要是担心自己对AIDL的理解不够深入,到时候大家看了之后说——你这是什么玩意儿,就这么点东西就敢说够了?简直是坐井观天不知所谓——那样就很尴尬了。不过又转念一想,我辈年轻人自当有一种一往无前的锐气,标题大气一点岂不更好?并且大家都是文明人,总归更多的是理解与补充而不是侮辱与谩骂?所以最终还是厚颜用了这么一个不怎么有耻的标题。好了,接下来进入正题,转载 2016-07-25 09:48:38 · 488 阅读 · 0 评论 -
Java常用排序算法/程序员必须掌握的8大排序算法
本文由网络资料整理而来,如有问题,欢迎指正!分类:1)插入排序(直接插入排序、希尔排序)2)交换排序(冒泡排序、快速排序)3)选择排序(直接选择排序、堆排序)4)归并排序5)分配排序(基数排序)所需辅助空间最多:归并排序所需辅助空间最少:堆排序平均速度最快:快速排序不稳定:快速排序,希尔排序,堆排序。先来看看8种排转载 2016-07-25 14:18:49 · 369 阅读 · 0 评论 -
你真的理解AIDL中的in,out,inout么?
前言这其实是一个很小的知识点,大部分人在使用AIDL的过程中也基本没有因为这个出现过错误,正因为它小,所以在大部分的网上关于AIDL的文章中,它都被忽视了——或者并没有,但所占篇幅甚小,且基本上都是官方文档的译文,译者读者其实都不知其然。这几天在研究AIDL,偏偏我又是个执拗的性子,遇着不清不楚的东西就是想把它捋清楚,就下了些功夫研究了下AIDL中的定向tag,研究了下它的 in , ou转载 2016-07-25 14:23:04 · 724 阅读 · 0 评论 -
RxJava 与 Retrofit 结合的最佳实践
前言RxJava和Retrofit也火了一段时间了,不过最近一直在学习ReactNative和Node相关的姿势,一直没有时间研究这些新东西,最近有个项目准备写,打算先用Android写一个Demo出来,却发现Android的世界发生了天翻地覆的变化,EventBus和OKHttp啥的都不见了,RxJava和Retrofit是什么鬼?好吧,到Github上耐着性子看过了RxJava转载 2016-07-25 14:29:47 · 547 阅读 · 0 评论 -
Android:学习AIDL,这一篇文章就够了(下)
前言上一篇博文介绍了关于AIDL是什么,为什么我们需要AIDL,AIDL的语法以及如何使用AIDL等方面的知识,这一篇博文将顺着上一篇的思路往下走,接着介绍关于AIDL的一些更加深入的知识。强烈建议大家在看这篇博文之前先看一下上一篇博文:Android:学习AIDL,这一篇文章就够了(上)注:文中所有代码均源自上一篇博文中的例子。 另:在看这篇博文之前,建议先将上一篇博文中的代转载 2016-07-26 18:21:34 · 390 阅读 · 0 评论 -
给 Android 开发者的 RxJava 详解
前言我从去年开始使用 RxJava ,到现在一年多了。今年加入了 Flipboard 后,看到 Flipboard 的 Android 项目也在使用 RxJava ,并且使用的场景越来越多 。而最近这几个月,我也发现国内越来越多的人开始提及 RxJava 。有人说『RxJava 真是太好用了』,有人说『RxJava 真是太难用了』,另外更多的人表示:我真的百度了也谷歌了,但我还是想问: R转载 2016-07-07 14:36:08 · 417 阅读 · 0 评论 -
Android内存泄露——全解析和处理办法
前言本文章会一步一步的探讨内存泄露的问题。博主第一次书写长篇技术贴,如有错误或不周到的地方请多指教。 JAVA是垃圾回收语言的一种,开发者无需特意管理内存分配。但是JAVA中还是存在着许多内存泄露的可能性,如果不好好处理内存泄露,会导致APP内存单元无法释放被浪费掉,最终导致内存全部占据堆栈(heap)挤爆进而程序崩溃。内存泄露说到内存泄露,就不得不提到内存溢转载 2016-07-28 18:34:12 · 304 阅读 · 0 评论 -
从一个简洁的进度刻度绘制中了解自定义View的思路流程
先看效果(原谅我的渣像素),进度的刻度、宽度、颜色可以随意设定:实现起来并不难,通过本文,我们可以学到:1、自定义属性的使用。 2、shader的使用 3、自定义View中对onmeasure的处理 4、增深对PathMeasure工具类的了解 5、最主要的是对自定义View有个比较清晰的思路认识一、原理介绍做这样一个进度效果,我们可转载 2016-07-29 09:28:02 · 512 阅读 · 0 评论 -
Android图片下载缓存库picasso解析
Picasso是Square公司开源的一个Android图形缓存库,地址http://square.github.io/picasso/,可以实现图片下载和缓存功能。picasso使用简单,如下[java] view plain copy print?Picasso.with(context).load("http://i.imgur.com原创 2016-08-04 16:34:07 · 397 阅读 · 0 评论 -
Android 高仿微信支付键盘
现在很多app的支付、输入密码功能,都已经开始使用自定义数字键盘,不仅更加方便、其效果着实精致。 下面带着大家学习下,如何高仿微信的数字键盘,可以拿来直接用在自身的项目中。 先看下效果图: 1. 自定义布局RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" andr转载 2016-08-16 17:53:03 · 1374 阅读 · 0 评论 -
更简单的学习Android事件分发
更简单的学习Android事件分发事件分发是Android中非常重要的机制,是用户与界面交互的基础。这篇文章将通过示例打印出的Log,绘制出事件分发的流程图,让大家更容易的去理解Android的事件分发机制。一、必要的基础知识1、相关方法Android中与事件分发相关的方法主要包括dispatchTouchEvent、onInterceptTouchEvent、转载 2016-08-17 15:27:16 · 399 阅读 · 0 评论 -
Android App 的设计架构:MVC、MVP、MVVM 与架构经验谈
原文链接:https://www.sdk.cn/news/2501和 MVC 框架模式一样,Model 模型处理数据代码不变在 Android 的 App 开发中,很多人经常会头疼于 App 的架构如何设计 —— 由 SDK.cn 分享摘要:和MVC框架模式一样,Model模型处理数据代码不变在Android的App开发中,很多人经常会头疼于App的架构如何设计:作者:转载 2016-09-02 15:35:12 · 1280 阅读 · 0 评论 -
Android图片加载框架比较----Glide,Picasso,Fresco
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]Glide添加依赖:[java] view plain copydependencies { compile 'com.github.bumptech.glide:glide:3.5.2' compi转载 2016-09-21 09:35:09 · 600 阅读 · 0 评论 -
基于BaseAdapter的安卓百变Adapter实现
因为懒惰,所以造就各种便捷的工具类。 --来自懒惰的猿Android写了很多的listview也写了很多adapter,每个适配器都要实现它的方法,每个适配器里面还要加一个内部类viewHolder去承载它的view然后实现复用,简直就是浪费时间,身为一个懒惰的程序员完全不能忍,所以CommonAdapter应用而生。(talk is cheap,先上代码在废话)/** * @A转载 2016-11-11 10:13:10 · 264 阅读 · 0 评论 -
Android一些你需要知道的布局优化技巧
今天分享一些layout布局书写中的一些技巧,希望看过之后你也一样可以写出性价比高的布局。我个人的目标是用最少的View写出一样效果的布局。因为我相信View的数量减少伴随着的就是层级的减少。从而达到结构清晰,渲染速度快的效果。顺着这个逻辑,我将优化分为重用、合并、按需载入。1重用 标签可以在一个布局中引入另外一个布局,这个的好处显而易见。类似于我们经常用到的工转载 2016-11-08 15:14:40 · 309 阅读 · 0 评论 -
选择恐惧症的福音!教你认清MVC,MVP和MVVM
前言相信大家对MVC,MVP和MVVM都不陌生,作为三个最耳熟能详的Android框架,它们的应用可以是非常广泛的,但是对于一些新手来说,可能对于区分它们三个都有困难,更别说在实际的项目中应用了,有些时候想用MVP的,代码写着写着就变成了MVC,久而久之就对它们三个的选择产生了恐惧感,如果你也是这样的人群,那么这篇文章可能会对你有很大的帮助,希望大家看完都会有收获吧!文章重点:转载 2016-10-20 17:16:37 · 373 阅读 · 0 评论 -
用 Retrofit 2 简化 HTTP 请求
Retrofit 作为简化 HTTP 请求的库,已经运行多年,2.0版本依然不辱使命的在做这些事情。不过 2.0 版本修复了一些长期影响开发者的设计,还加入了前所未有的强大特性。在 NYC 2015 的这一个分享中,Jake Wharton 的演讲涵盖了所有 Retrofit 2.0 的新特性,全面介绍了 Retrofit 2.0 工作原理。Save the date for转载 2016-10-20 17:20:41 · 728 阅读 · 0 评论 -
ORM 框架之 greenDAO 使用心得
前言我相信,在平时的开发过程中,大家一定会或多或少地接触到 SQLite。然而在使用它时,我们往往需要做许多额外的工作,像编写 SQL 语句与解析查询结果等。所以,适用于 Android 的 ORM 框架也就孕育而生了,现在市面上主流的框架有 OrmLite、SugarORM、Active Android、Realm 与 GreenDAO。而今天的主角便是 greenDAO,下面,我将转载 2016-11-14 09:50:03 · 353 阅读 · 0 评论 -
关于RxJava最友好的文章(进阶)
前言之前就写过一篇关于Rxjava最友好的文章,反响很不错,由于那篇文章的定位就是简单友好,因此尽可能的摒弃复杂的概念,只抓住关键的东西来讲,以保证大家都能看懂。不过那篇文章写完之后,我就觉得应该还得有一篇文章给RxJava做一个深入的讲解才算完美,于是就有了今天的进阶篇。因为一个团队里可能大家都会用RxJava,但是必须要有一个人很懂这个,不然碰到问题可就麻烦了。在前一篇转载 2016-11-14 15:21:52 · 741 阅读 · 0 评论 -
关于RxJava最友好的文章
RxJava到底是什么?让我们直接跳过官方那种晦涩的追求精确的定义,其实初学RxJava只要把握两点:观察者模式和异步,就基本可以熟练使用RxJava了。异步在这里并不需要做太多的解释,因为在概念和使用上,并没有太多高深的东西。大概就是你脑子里想能到的那些多线程,线程切换这些东西。我会在后面会讲解它的用法。我们先把观察者模式说清楚“按下开关,台灯灯亮”转载 2016-11-14 15:28:22 · 372 阅读 · 0 评论 -
RxJava 从入门到出轨
前言转载请注明出处:http://blog.csdn.net/yyh352091626/article/details/53304728使用了RxJava有一段时间了,深深感受到了其“牛逼”之处。下面,就从RxJava的基础开始,一步一步与大家分享一下这个强大的异步库的用法!PS: 建议先看看上面的目录结构,便于理解,哈哈!RxJava 概念初步Rx转载 2016-12-05 17:45:21 · 985 阅读 · 0 评论 -
史上最详细Android集成QQ,微信,微博分享(不用第三方)持续更新中
现在项目中用个第三方登录,或分享已经不是什么稀奇事了,但是要想把这个功能做好,那可就不容易了。估计到这里就有人会说了,扯犊子,这玩意,我用第三方sdk,什么umeng,sharesdk分分钟给你做出来,可是这些第三方sdk只有对项目的分享要求不高的时候才适合,如果要定制分享,那我就只能呵呵。虽然第三方登录或分享没什么技术难度,但是各种配置,而且每一个都不太一样,少配置一个地方代码就通不过了,所以基转载 2016-12-06 14:14:53 · 844 阅读 · 0 评论 -
浅谈RxJava与多线程并发
认识RxJava已经有一段时间了,但是一直没有机会在项目中尝试,最近同事在新的项目里引进了RxJava写一些事件处理,在review代码的时候发现了一些和多线程并发相关的问题,所以写了这篇文章。前言对于RxJava,大家应该都很熟悉,他最核心的两个字就是异步,诚然,它对异步的处理非常的出色,但是异步绝对不等于并发,更不等于线程安全,如果把这几个概念搞混了,错误的使用RxJava转载 2017-03-03 15:44:00 · 8023 阅读 · 0 评论 -
你一定会用到的RxJava常用操作符
作者博客 http://blog.csdn.net/u014165119前言 阅读本文前请先了解 RxJava 的基本使用。目录Observable 的创建from()just()create()interval()timer()range()er转载 2017-05-05 09:25:14 · 613 阅读 · 0 评论 -
深入理解MessageQueue
Android 中有两个非常重要的知识点,分别是Binder机制和Handler机制。前者用于跨进程通讯,并且通过 ServiceManager 给上层应用提供了大量的服务,而后者用于进程内部通讯,以消息队列的形式驱动应用的运行。之前的文章已经多次分析了Binder相关的内容,复杂程度远高于Handler,之后还会继续分析Binder。说到Handler,做安卓开发的一定都不会陌生,一般用于切换线转载 2017-05-05 09:32:55 · 17909 阅读 · 3 评论 -
Android布局优化技巧
一.总体原则:减少布局层次,加快渲染速度尽量避免RelativeLayout嵌套RelativeLayout二.重用标签可以在一个布局中引入另外一个布局,重用共同的布局文件。比如说共同的标题栏common_title.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/andro转载 2017-06-06 11:21:32 · 370 阅读 · 0 评论 -
RetrofitUtils使用
PS:如果觉得文章太长,你也可观看该课程的视频教程,亲,里面还有高清,无码的福利喔写在前面: Retrofit与okhttp共同出自于Square公司,是目前市场上使用最多的联网框架,retrofit是对okhttp做了一层封装,不过封装之后的retrofit上手还是极其复杂,为了解决使用难度问题,本文推荐使用github开源项目RetrofitUtils.Retrof转载 2017-06-03 20:44:41 · 566 阅读 · 0 评论 -
Android Retrofit网络请求Service,@Path、@Query、@QueryMap、@Map...
GET请求多个参数在URL问号之后,且个数不确定http://api.stay4it.com/News?newsId=1&type=类型1… http://api.stay4it.com/News?newsId={资讯id}&type={类型}…@GET("News")Call getItem(@QueryMap MapString, String> map);1212转载 2017-06-09 15:11:10 · 438 阅读 · 0 评论 -
Picasso,Glide,Fresco的前世今生
前言图片加载是Android开发中最最基础的功能,同时图片加载OOM也一直困扰着很多开发者,因此为了降低开发周期和难度,我们经常会选用一些图片加载的开源库。老牌的有ImageLoader,UIL,Volley,主流的有,Picasso,Glide,Fresco等等,选择一款好的图片加载裤就成了我们的首要问题。接下来我们对比一下主流的三款 Picasso,Glide,Fresco框架的优转载 2017-07-24 17:38:06 · 417 阅读 · 0 评论 -
android 高德地图系统签名后定位失败解析
最近在做React-native项目,里面一个BUG,是定位失败问题,但是不管怎么实验,我在运行的时候是OK的,为什么签名之后就不行了,然后想着高德地图的key需要SHA1的值,而我所取得值和我签名的值是否不同,通过以下方式获取1、首先,大家知道高德地图定位,服务端申请key,需要sha1值 通过以下方式获取SHA1算法public static String sH原创 2017-08-17 10:51:31 · 980 阅读 · 0 评论 -
这是一份很详细的 Retrofit 2.0 使用教程(含实例讲解)
前言在Andrroid开发中,网络请求十分常用而在Android网络请求库中,Retrofit是当下最热的一个网络请求库今天,我将献上一份非常详细Retrofit v2.0的使用教程,希望你们会喜欢。如果对Retrofit v2.0的源码感兴趣,可看文章:Android:手把手带你深入剖析 Retrofit 2.0 源码目录转载 2017-07-26 14:26:04 · 1897 阅读 · 0 评论 -
使用Retrofit2封装适用于组件化项目的网络库
1URL的简单构成2Http中GET和POST的区别3Retrofit 概览1Url配置2Retrofit注解3请求参数注解的使用方法4ConverterFactory 数据转换工厂4使用Retrofit进行网络请求5Retrofit二次封装Builder模式1 Builder模式的定义2 使用Builder的目的3 具体的封装过程先创建一个HttpCl转载 2017-08-11 09:07:06 · 378 阅读 · 0 评论 -
Android6.0权限系统以及工具类的实现
Android6.0权限系统Android权限系统是一个非常重要的安全问题,因为它只有在安装时会询问一次。一旦软件本安装之后,应用程序可以在用户毫不知情的情况下使用这些权限来获取所有的内容。很多坏蛋会通过这个安全缺陷来收集用户的个人信息并使用它们来做坏事的情况就不足为奇了。Android团队也意识到了这个问题。在经过了7年后,权限系统终于被重新设置了。从Anroid 6原创 2017-11-28 16:17:33 · 451 阅读 · 0 评论 -
Dagger2入门,以初学者角度来观察
前言:依赖注入Dagger2是Android中比较热门的依赖注入框架,什么是依赖注入呢?维基百科上是这样描述的:控制反转(Inversion of Control,缩写为IoC),是面向对象编程中的一种设计原则,可以用来减低计算机代码之间的耦合度。其中最常见的方式叫做依赖注入(Dependency Injection,简称DI),还有一种方式叫“依赖查找”(Dependency转载 2017-11-28 17:34:02 · 282 阅读 · 0 评论 -
Android 一起来看看知乎开源的图片选择库
前言在实际开发中,图片选择器一直都是必不可少的一个部分,不管是 QQ 头像的设置,还是发送一条装逼的微信朋友圈,都要用到图片选择器来给用户选择他们想要上传的图片,最近知乎开源了一款图片选择库 Matisse 简直美哭了,而且完全遵循 Android 交互设计规范,实在是很良心。有需要的点击这里在开始正文之前,先欣赏一下这个图片选择器的效果Matisse是不是转载 2017-11-28 14:18:40 · 1586 阅读 · 1 评论 -
Android指纹对称加密及登录功能的实现
一、概述Android下的指纹识别是在Android6.0后添加的功能,因此,在实现的时候要判断用户机是否支持,然后对于开发来说,使用场景有两种,分别是本地识别和跟服务器交互;本地识别:在本地完成指纹的识别后,跟本地信息绑定登陆; 后台交互:在本地完成识别后,将数据传输到服务器;无论是本地还是与服务器交互,都需要对信息进行加密,通常来说,与本地交互的采用对称加密,与服务器交互则转载 2017-11-28 14:02:59 · 683 阅读 · 0 评论