自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Dream It Possible

目标赋予我们生命的意义和目的。有了目标,我们才会把注意力集中在追求喜悦,而不是在避免痛苦上。

  • 博客(25)
  • 资源 (224)
  • 问答 (1)
  • 收藏
  • 关注

转载 Android中事件传递机制的总结

事件传递虽然算不上某个单独的知识点,但是在实际项目开发中肯定会碰到,如果不明白其中的原理,那在设计各种滑动效果时就会感到很困惑。关于事件的传递,我们可能会有以下疑问:事件是如何传递的事件是如何处理的自定义view的时候,事件也冲突了怎么解决带着这三个疑问,我们来总结一下事件传递机制是怎么回事。事件分发原理事件是如何传递的:首先由Activity分发,分发给根View,也就是DecorVie

2016-08-29 17:45:48 2207 1

转载 Android-使用JsBridge来优化js与本地webview的交互

基于lzyzsd的JsBridge 优化改进而来的Android JsBridge。工程传送门优化1.支持自定义桥名; 2.修复web页未渲染即进行跳转导致Js桥初始化失败的问题;使用添加maven依赖<dependency> <groupId>com.hjhrq1991.library</groupId> <artifactId>jsbridge</artifactId> <vers

2016-08-28 09:39:18 7234

转载 花一万个小时练习 Coding,不要浪费一万小时无谓地 Debugging

Coding 之于科技的重要性不言可喻,也不再是软件工程师的专利,医师、律师、会计师、护理师、金融从业人员,甚至是听起来摸不着边的政治家,不论是哪个行业,学习 Coding 已经成为世界新趋势。本文作者 Waseem Ahmad 为一个程序设计师,同时也是旅行家与终身学习者。以下文字以作者第一人称撰写。一切都要归功于 Code.org 与其他 Coding 自学网站,学生可以从网站学到学校没教的电

2016-08-26 10:06:33 2661 2

原创 Android Retrofit 实现图文上传-文字参数类型

回顾在 Android Retrofit 实现文字(参数)和多张图片一起上传 博客中,我们详细介绍了多张图片和文字参数上传的具体原理和实现,今天我们重点说说文字参数类型的问题。Post请求抓包信息:接口定义:从抓包信息中看到文字类型的参数字段名是“data”,值是“jdsjlzx”。其中的Content-Type信息如下:Content-Type: application/json; charset

2016-08-24 16:12:52 12164 13

转载 自定义控件-CascadeLayout

前言android的进阶之路上,总少不了使用自定义控件。自定义控件按照不同的分法,有不同的分类,这里主要分为四类:继承自view,重写 onDraw方法;比如系统的TextView,ImageView;继承自ViewGroup,实现自己的自定义控件;继承自特定的view(比如ImageView), 圆角图片CircleImageView,自带清除按钮的EditText;继承自特定的ViewG

2016-08-22 23:08:17 1632 1

转载 HermesEventBus-饿了么开源的Android跨进程事件分发框架

由于Android不同进程之前不能相互通信,所以当开发过程中遇到跨进程通信的时候,常用的方案就是AIDL(Android Interface Definition Language)通过它我们可以定义进程间的通信接口,但是当应用中出现大量跨进程通信的时候,比如你想体验一下插件化开发或者特殊需求在单应用中需要开多个进程,那么写过AIDL的同学都会有痛不欲生的感觉。现在福利来了,可以试试饿了么开源了一款

2016-08-22 18:46:29 6165

原创 Android Retrofit 实现(图文上传)文字(参数)和多张图片一起上传

背景在有心课堂《自己动手写HTTP框架》课程中有下列课程:自拍要发朋友圈如何实现 http://stay4it.com/course/4/learn#lesson/208通过自己写的HTTP框架实现将图片和文字等内容在一个接口中提交到服务器。无论哪种网络框架,都要遵守HTTP协议。下面我们简单了解下HTTP协议。HTTP协议其中HTTP协议版本有两种:HTTP1.0/HTTP1.1 可以这样区别:

2016-08-19 00:13:29 41637 19

原创 Rxjava实践-把混乱的WORKFLOW撸成串吧

本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发。前言前几天和Stay讨论了一个rxjava场景,觉得很有意思,这里也和大家分享下。通过还原一个真实的开发过程,来感受下rxjava的便利之处。巨坑从来都是由小坑慢慢塌陷的先来看下一段最普通的代码在没有特殊需求的情况下,代码就这么简单。你可以理解为,获取一个目录下的所有文件,将它们一个个传到服务器上去。看起来好像是没

2016-08-18 16:36:04 2033 1

转载 Android View的绘制流程

View的绘制和事件处理是两个重要的主题,上一篇《图解 Android事件分发机制》已经把事件的分发机制讲得比较详细了,这一篇是针对View的绘制,View的绘制如果你有所了解,基本分为measure、layout、draw 过程,其中比较难理解就是measure过程,所以本篇文章大幅笔地分析measure过程,相对讲得比较详细,文章也比较长,如果你对View的绘制还不是很懂,对measure过程掌

2016-08-16 19:26:08 2369 2

转载 图解 Android 事件分发机制

在Android开发中,事件分发机制是一块Android比较重要的知识体系,了解并熟悉整套的分发机制有助于更好的分析各种点击滑动失效问题,更好去扩展控件的事件功能和开发自定义控件,同时事件分发机制也是Android面试必问考点之一,如果你能把下面的一些事件分发图当场画出来肯定加分不少。废话不多说,总结一句:事件分发机制很重要。Android 事件分发流关于Android 事件分发机制网上的博文很多,

2016-08-16 15:10:47 1641

转载 Android文字图片写入CSV(Base64)并分享

做的一个分享的功能,将文字图片以CSV的形式分享到邮件之类的应用。首先,CSV逗号分隔值文件格式(Comma-Separated Values),纯文本形式,逗号分隔,一行数据不跨行。图片转换成Base64字符串public String writeBase64(String path) {          //path图片路径 byte[] data = null;

2016-08-16 13:49:37 1491

原创 Android LRecyclerView实现类似viewpager的功能

新的一周,新的一天,LRecyclerView也推出了新的功能——viewpager滑动效果。先来看看效果图:主要有两个功能: 1.viewpager滑动; 2.上下滑动删除。具体使用这里就不讲了,详见demo。compile 'com.github.jdsjlzx:LRecyclerView:1.0.6'新版本解决了一些问题: 1.不能强制刷新; 2.接口名字拼写错误; 3.解决头尾状态

2016-08-15 17:37:52 3647 2

转载 如何通过Retrofit提交Json格式数据

本文将介绍如何通过retrofit库post一串json格式的数据。首先post的json数据格式如下:{ "Id": "string", "DeviceId": "string", "Name": "string", "SumDistance": 0, "RouteNo": "string", "SumPoints": 0, "SetupTime": "2016-06-

2016-08-12 11:41:16 11052 3

转载 Android 设置TabLayout背景和字体大小

效果图:TabLayout使用如下:<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android

2016-08-10 14:17:08 8178

转载 Android 使用Glide动态加载圆形图片和圆角图片

Glide我们都不陌生了,有时我们需要把加载下来的图片转成圆角或者圆形的图片,怎么处理呢,Glide原生没有这个方法,于是我拓展了BitmapTransformation来实现这个功能。效果图:Glide是默认本地存储的,但重复加载的时候,是不需要重复访问网络。下载的图片转圆形的方法public class GlideCircleTransform extends BitmapTransformat

2016-08-10 11:28:13 6557 1

原创 Retrofit Url 配置多个相同参数名(同名参数)的参数

Multiple Query Parameters我们需要请求的url就像下面那样https://api.stay4it.com/tasks?id=123&id=124&id=125我们预期返回的response是一个以url的ids=[123, 124, 125]为查询参数任务列表。Retrofit通过提供一个ids的列表作为一个参数来执行一个含有多个同名参数的请求。Retrofit会一一对应给定

2016-08-09 15:38:35 5969 1

转载 Retrofit自定义GsonConverter处理请求错误异常处理

通常从服务端拿到的JSON数据格式大概如下: { "code":1, "message":"查询成功", "detail":{"aa":"123","bb":"123","cc":"123"} }因此通常我们会定义一个实体类来解析对应的json:public class Response { @SerializedName("code") private

2016-08-07 21:41:45 12561 7

转载 Retrofit2实现App自动更新

原理Retrofit2和okhttp实现了apk的下载自定义类实现Retrofit2的Callback类在里面通过IO流写入文件并且使用RxBus订阅下载进度自定义类实现okhttp3的ResponseBody类并且在里面使用RxBus发布下载进度信息在Service中使用Retrofit在后台下载文件发送Notifaction到通知栏前台界面展示进度情况实现步骤1.创建UpdateMa

2016-08-07 21:17:18 7529 8

转载 Android之Keystore文件签名(获取查看apk签名)

Android应用开发的时候会经常使用到第三方SDK,例如地图、推送、支付以及分享等。而这些第三方服务SDK为了应用不被滥用都会有签名验证机制。我们通过上传Android应用的签名来在服务端配置以验证应用的合法性。本文将讲述下在Android Stduio中常用的签名操作。默认KeyStore默认KeyStore存储路径在Android Stduio中系统默认内置了一个签名文件debug.keys

2016-08-07 21:02:08 33412 3

原创 RecyclerView关于notifyItemRemoved的那点小事

当我们需要remove掉一条数据(位置在position)时,想要使用RecyclerView的动态效果,就需要调用notifyItemRemoved。但是该方法不会使position及其之后位置的vitemiew重新onBindViewHolder。所以不当使用会导致下标错乱,各种坑爹的bug就来了。 弥补上面的问题,你还需要调用 notifyItenRangeChanged方法,使下面的ite

2016-08-05 18:12:16 7651 1

转载 Android Retrofit RxJava实现缓存

RxJava如何与Retrofit结合参考:http://blog.csdn.net/jdsjlzx/article/details/52015347缓存配置app网络数据的离线缓存实现有很多种办法,例如存进数据库(保存json使用时拿出来解析),存专有文件,或SharedPreference等等,也可以自己实现 LruCache 和 DiskLruCache 这两种缓存策略构成二级缓存(内存和磁盘

2016-08-03 23:57:00 6213 2

转载 RxJava Android(RxAndroid) 开发全家桶

RxJava 在 Android 应用开发中越来越流行,但是由于其门槛稍高,初次使用不免遇到很多问题,例如在 RxJava 常见的错误用法 和 不该使用 RxJava 的一些情况 中所描述的情况。为了避免这些常见的问题,很多民间高手开发了很多在 Android 应用中可以使用的 Rx 扩展类库,组合使用这些类库,可以更方便的使用 RxJava 并且可以避免一些常见的错误用法。 本文来介绍一些使用 R

2016-08-03 23:38:31 7067

原创 Retrofit 使用flatmap操作符时处理错误、异常

在实际项目(Retrofit+RxJava框架)中,有时需要先登录,获取token后再去获取用户信息,那么我们需要把登录后服务器返回的信息进行筛选过滤等到我们需要的token,然后根据token获取用户信息。我们最终需要做的也就是转换数据流。RxJava中,具有转换数据流功能的操作符有很多,这里我们使用flatmap转换操作符来实现数据流的转换。在RESTResult对象里,包括请求返回的状态:失败

2016-08-02 17:35:52 7554 5

原创 android AppCompatEditText 样式(线条粗细等)修改

样式定义com.android.support:appcompat-v7库中,样式主要的定义在$SDK_HOME/extras/android/v7/appcompat/res/values/themes_base.xml中,其中定义了以下样式:Platform.AppCompat(android:Theme)Platform.AppCompat.Light(Platform.AppCompat

2016-08-02 15:46:18 14776 1

转载 理解RxJava的线程模型

ReactiveX是Reactive Extensions的缩写,一般简写为Rx,最初是LINQ的一个扩展,由微软的架构师Erik Meijer领导的团队开发,在2012年11月开源,Rx是一个编程模型,目标是提供一致的编程接口,帮助开发者更方便的处理异步数据流,Rx库支持.NET、JavaScript和C++,Rx近几年越来越流行了,现在已经支持几乎全部的流行编程语言了,Rx的大部分语言库由Rea

2016-08-02 11:15:13 2118

Android将list数据通过LitePal保存到本地(集合保存到本地)

有时候我们需要将list集合保存到本地,自己写起来太麻烦,就找到了强大的框架LItePal Git地址 https://github.com/LitePalFramework/LitePal

2016-06-17

AndroidDownLoad-多线程断点续传下载

什么是多线程下载? 多线程下载其实就是迅雷,BT一些下载原理,通过多个线程同时和服务器连接,那么你就可以榨取到较高的带宽了,大致做法是将文件切割成N块,每块交给单独一个线程去下载,各自下载完成后将文件块组合成一个文件,程序上要完成做切割和组装的小算法 什么是断点续传? 断点续传,就是当我们下载未结束时候,退出保存下载进度,当下次打开继续下载的时接着上次的进度继续下载,不用每次下载都重新开始,那么有关断点续传的原理和实现手段 http://blog.csdn.net/jdsjlzx/article/details/41014021

2016-06-14

DownloadEngine-Android多线程下载断点续传

商业级别的范例,集支持多线程下载,断点续传,只使用wifi网络下载,显示下载速度,人性化提示及超强的容错机制多功能于一体,绝对的实用,绝对的专业。

2016-06-14

MulThreadDownloader-Android实现网络多线程断点续传下载

Android实现网络多线程断点续传下载

2016-06-14

android-rsa-http

对url的path段进行rsa加密 博客:http://blog.csdn.net/jdsjlzx/article/details/51644798

2016-06-12

android自定义ProgressBar(仿淘宝)的加载效果

android自定义ProgressBar(仿淘宝)的加载效果

2016-06-11

RxJava封装、离线缓存、在线缓存时间控制

http://blog.csdn.net/adzcsx2/article/details/51333890 代码修复版本

2016-05-24

RxJava在Android中内存泄漏解决以及RxJava的封装

RxJava在Android中内存泄漏解决以及RxJava的封装 原文:http://blog.csdn.net/adzcsx2/article/details/51333890 原作者的demo运行有点问题,本人修复重新上传。

2016-05-23

Android RecyclerView实现了下拉刷新和上拉加载

Android RecyclerView实现了下拉刷新和上拉加载,不需要其他控件辅助。

2016-05-23

Android H5做的商城客户端

H5做的商城客户端,效果和android原生客户端没多大区别 详细:http://blog.csdn.net/jdsjlzx/article/details/51283543

2016-04-29

Android下的图片压缩及图片和视频的上传

Android开发中上传图片很常见,一般为了节省流量会进行压缩的操作,Android下的图片压缩及图片和视频的上传

2016-04-19

Android通过AsyncTask与ThreadPool(线程池)两种方式异步加载大量数据的分析与对比

在加载大量数据的时候,经常会用到异步加载,所谓异步加载,就是把耗时的工作放到子线程里执行,当数据加载完毕的时候再到主线程进行UI刷新。在数据量非常大的情况下,我们通常会使用两种技术来进行异步加载,一是通过AsyncTask来实现,另一种方式则是通过ThreadPool来实现。 http://blog.csdn.net/jdsjlzx/article/details/43682351

2016-03-31

Android Bluetooth蓝牙通信文件传输

Android Bluetooth文件的引入和传输,可使用两台设备,一个做客户端一个做服务端,传输文件,显示传送进度。 http://download.csdn.net/download/u010963246/8907157

2016-03-27

Android蓝牙聊天程序的扩展开发(基于Google Sample,类QQ设计)

Android蓝牙聊天程序的扩展开发(基于Google Sample,类QQ设计) 原作者:http://my.oschina.net/sikilao/blog/488331

2016-03-26

Android蓝牙聊天程序优化版

Android蓝牙聊天程序的扩展开发(基于Google Sample,类QQ设计) 原创作者链接:http://my.oschina.net/sikilao/blog/488331

2016-03-26

universal-image-loader-1.9.5.jar

universal-image-loader-1.9.5.jar

2016-02-27

Android 二维码扫描怎样实现第二次(重复)扫描

Android二维码扫描怎样实现第二次(重复)扫描

2016-02-16

Android 通过Socket 和服务器通讯

Android 通过Socket 和服务器通讯,是一种比较常用的通讯方式,时间比较紧,说下大致的思路,希望能帮到使用socket 进行通信的人 (1)开启一个线程发送消息 SocketOutputThread 消息是放在队列里的,当有消息后,进入队列,线程唤醒,发送消息,并反馈发送是否成功的回调 (2)开启一个线程接受服务器消息 SocketInputThread 为了防止一直收数据,浪费电池的电,采用NIO的方式读socket的数据,这个是本文的关键 (3)开启一个线程,做心跳,防止socket连接终断 , SocketHeartThread (4)构建 SocketThreadManager对以上三个thread进行管理 (5)构建 TCPClient 发送socket消息 在NIO的方式实现TCP,特别是在接收服务器的数据,不用写个线程定时去读了。

2016-02-16

android RangeSeekBarView 选定范围值的控件

实现了一个选定范围值的控件,刻度尺为等分的100等分。模仿二手车app中筛选选定区间的控件。 原创链接:http://download.csdn.net/detail/huweigoodboy/8508243

2016-02-01

Android仿天天动态上拉播放界面控件

仿天天动态上拉出现播放界面(修改) 效果:1,在Content未展开的状态(隐藏): 1>点击Handler控件,弹出Content。 2>拖动Handler,Content会从底部逐渐出来。 2,在Content展开的状态: 拖动Content,content位置随着手指的滑动而产生位置变化。 原创:http://download.csdn.net/detail/huweigoodboy/8372255

2016-01-31

RecyclerView的四级缓存源码分析

RecyclerView 四级缓存

2023-03-21

Flutter编程指南-多线程

Flutter是Google开发的新一代跨平台方案,Flutter可以实现写一份代码同时运行在iOS和Android设备上,并且提供很好的性能体验。 在Google刚推出Flutter时,其发展很缓慢,终于在18年发布第一个Bate版之后迎来了爆发性增长,发布第一个Release版时增长速度更快。可以从Github上Star数据看出来这个增长的过程。在19年最新的Flutter 1.2版本中,已经开放Web支持的Beta版。 目前已经有不少大型项目接入Flutter,阿里的咸鱼、头条的抖音、腾讯的NOW直播,都将Flutter当做应用程序的开发语言。除此之外,还有一些其他中小型公司也在做。Flutter越来越变成一个新的开发趋势。

2022-02-21

java数据结构与算法之美(物超所值)

数据结构与算法之美教程分为 4 个由浅入深的模块:入门、初级、高级、实战。 高级篇将从概念和应用的角度,深入剖析一些稍复杂的数据结构与算法,推演海量数据下的算法问题解决过程;帮你更加深入理解算法精髓,开拓视野,训练逻辑;真正带你升级算法思维,修炼深厚的编程内功。 实战篇将通过实战案例串讲前面讲到的数据结构和算法;并拿一些开源项目和框架,剖析它们背后的数据结构和算法;并带你用学过的内容实现一个短网址系统;深化对概念和应用的理解,灵活使用数据结构和算法。

2022-02-09

flutter_macos_2.8.1-stable.zip

Flutter 的 Stable channel 是相对稳定的发布版本,最新版本是2.8.1。 官网下载速度慢还容易失败,有需要的下载即可。

2022-01-05

mac_apktool.zip

MacOS下用的APK逆向工程工具 本工具分两个版本:一个是图形化版本Android-Crack-Tool,易操作;一个是命令行版本; 使用参考:https://www.jianshu.com/p/56ea01d7ccac

2021-03-25

Postman-osx-5.3.2 for Mac

Postman是一种网页调试与发送网页http请求的chrome插件。我们可以用来很方便的模拟get或者post或者其他方式的请求来调试接口。 这里提供的是Mac下的Postman安装包。

2017-10-31

Android 三种方式实现自定义圆形页面加载中效果的进度条

Android 三种方式实现自定义圆形页面加载中效果的进度条

2016-12-19

CoordinatorLayout+AppBarLayout实现上滑隐藏ToolBar

Android Material Design之CoordinatorLayout+AppBarLayout实现上滑隐藏ToolBar http://blog.csdn.net/jdsjlzx/article/details/50421349

2016-08-19

android自定义进度条渐变色View的实例代码

这个自定义的view,完全脱离了android自带的ProgressView,并且没使用一张图片,这样就能更好的降低程序代码上的耦合性! http://blog.csdn.net/jdsjlzx/article/details/49586339

2016-07-26

Android多行文本折叠展开效果

- 单行文本水平触摸滑动效果 通过EditText实现TextView单行长文本水平滑动效果 - 多行文本折叠展开 自定义布局View实现多行文本折叠和展开 详见: http://blog.csdn.net/jdsjlzx/article/details/45821909

2016-07-25

Android封装popwindow类(下拉菜单弹出和收缩效果)

popwindow 实现下拉菜单的弹出和收缩效果 http://blog.csdn.net/jdsjlzx/article/details/52000107资源

2016-07-22

Android自定义spinner下拉框

Android自定义spinner下拉框实现的实现 http://blog.csdn.net/jdsjlzx/article/details/41316417 请支持原创:http://blog.csdn.net/geniuseoe2012/article/details/8723702

2016-07-16

Android DigitalClock实现倒计时

应用案例: 大量商品的限时抢购等。 类似于这样的倒计时,不知道大家有没有遇到过,大家又能想到哪些方案????? 1、每一秒到服务器上面去取一次数据? 2、每一秒,通过一个Handler去循环遍历,对每一条去刷新一次时间控件? 3、还是大家有其它的想法。 上述两种方案都不可取: 1、网络连接有时间差,况且数据访问量大的情况,服务器没法承受。 2、 循环遍历可行,但是要在数据量少的情况下,如果数据量过大,那么会卡屏,对系统内存的占用也较高。 本源码的方案是对Android 系统中 DigitalClock 进行一次封装。 通过继承以下方法并改变内部的实现。

2016-07-12

Android 带箭头有光晕效果的ProgressBar

Android 带箭头有光晕效果的ProgressBar(Android Studio版本) 原文:http://blog.csdn.net/ekeuy/article/details/39228285

2016-07-04

android webview与 js交互通信

webview与js的交互。 其实这个demo完全可以在客户端实现相同功能,这里只是学习交互如何实现的。并且用html动态加载会比较灵活,可以在服务端随时更新样式。没有公网服务器,我把网页放在assets中,不过不影响的。

2016-06-20

Android项目webview中做与js交互

Android项目webview中做与js交互,涉及到js中调用Android本地的方法,于是查了资料整理了一下android和js互相调用的过程。如下demo,demo的主要实现过程如下:通过加载本地的html文件(里面有js脚本),实现android本地方法和js中的交互。 http://blog.csdn.net/jdsjlzx/article/details/7254875

2016-06-20

Android socket通信长连接(心跳检测)

Android的socket长连接(心跳检测),有服务端和客户端 。开发环境eclipse,不可多得的客户端与服务器端代码

2016-06-17

Android客户端提供Socket服务与pc通过USB通信

Android手机和电脑通USB线连接,手机里面的app作为Socket的服务器端,PC作为Socket的客户端,两者进行通信。

2016-06-17

Android 使用Socket,ServerSocket编程网络通信

Android完全支持JDK本身的TCP,UDP网络通信API,也可以使用ServerSocket,Socket来建立基于TCP/IP协议的网络通信,也可以使用DatagramSocket,Datagrampacket来建 立基于UDP协议的网络通信

2016-06-17

Android socket即时通信Demo

基于tcp和udp的即时通信源码,以及实现原理说明和截图。 当然socket不仅仅可以用来做聊天,如usb连接和wifi通信等都可以用socket来实现,此源码功能实现非常详细,不可多得!

2016-06-17

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

TA关注的人

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