自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 收藏
  • 关注

原创 安卓开发必看网站

http://www.wanandroid.com/

2017-09-30 09:06:04 456

转载 最全正则表达式总结:验证QQ号、手机号、Email、中文、邮编、身份证、IP地址等

http://www.lovebxm.com/2017/05/31/RegExp/

2017-08-10 14:29:00 579

原创 基于FFmpeg的开源项目small-video-record2

https://github.com/mabeijianxi/small-video-record/blob/master/document/2.x_using_help.md

2017-07-27 22:26:03 4062 1

转载 MVVM在Android上的正确使用方式

摘要:Google发布DataBinding已经有一年时间了,网上也有很多教程。但是在笔者看过的大部分关于MVVM在Android上的实现的教程中,都存在一个十分之严重的问题,就是大部分的介绍MVVM的文章只不过是介绍DataBinding的文章。而在这些教程中,几乎都无一例外地把DataBinding生成的Binding类(或实体类当成是ViewModel层。这两种方法都有一个十分之大的漏洞,就

2017-06-28 20:21:17 4478 3

转载 从零开始搭建一个完善的MVP开发框架(五),通过组件化开发优化项目的结构

摘要: 在第三篇文章有位朋友留言说:如果接口的数量有一百个,那么是不是需要写一百个Presenter?答案是不一定的,因为这个问题需要根据实际的业务需求来解决。但是这种一个接口对应一个Presenter的方式能够对项目进行最大限度的解耦,我们能够很方便的复用这个接口。采用MVP模式引发的一些思考笔者在研究MVP模式的时候查阅过相当多的资料,其中有两句话令我相当的深刻。一是:使用

2017-06-28 20:19:43 2980

转载 从零开始搭建一个完善的MVP开发框架(四) —对View(Activity,Fragment等)层组件进行封装简化View层的开发

摘要: 通过上面三篇文章所提到的关于MVP框架的封装,我们已经能够大大简化MVP模式中MP层的开发流程。但是还有一个问题,就是在开发的时候我们的 View层组件还需要处理较多的事情,例如错误处理,进度条显示等。所以我们需要对View层的组建进行封装,优化开发的流程。对View组建进行优化笔者根据封装好的MVP的特点,对View层的组建进行了不同的封装。里面包含2个Activit

2017-06-28 20:17:47 1003

转载 从零开始搭建一个完善的MVP开发框架(三),对列表型数据请求进行抽象,优化列表型数据的处理

摘要: 在上一篇文章中我们讨论了关于如何对普通的数据请求进行封装,对MVP模式进行优化。而在实际项目中,除了普通的数据外,一般我们还有列表型的数据,列表型的数据和普通的数据的主要区别是:列表型的数据需要分页获取。在实际项目中,我们一般获取分页型的数据时需要向服务器发送页码和一页的数据条数这两个数据。我们可以通过对列表型的Presenter进行封装,把大部分列表型数据需要处理的时间自动处理好。

2017-06-28 20:16:56 611

转载 从零开始搭建一个完善的MVP开发框架(二),通过泛型和抽象,简化MVP框架。

摘要: 在上一篇文章中,我们学习了关于MVP模式的简单使用方法。相信很多(实际上只有几个--)读者看完文章后都会产生一个疑问:按照这个方法使用MVP模式进行开发的话,代码量是不是会大大增加?答案是对的,如果这样简单地使用MVP模式的话代码的确会大大增加。每个网络请求(数据库)都会由原来的MV模式的一个Model类文件变成4个类文件,分别是:IModel、Model、IPresenter、Prese

2017-06-28 20:15:13 1882

转载 从零开始搭建 一个完善的 MVP模式开发框架(一),MVP模式的简单介绍篇

摘要: 在MVVM成熟之前MVP模式在Android上有被神化的趋势,笔者曾经在商业项目中从零开始大规模采用过MVP模式对项目进行开发。在使用MVP模式进行开发的时候发现项目的结构模式对开发是有一定的影响的,在这里笔者会对这一问题进行探讨。希望通过这篇blog能让读者了解如何使用MVP模式搭建一个功能完善的MVP模式开发框架,避免一些笔者认为比较严重的问题。为什么要使用MVP模式

2017-06-28 20:13:55 1555

原创 AndroidStudio中Module Library中使用butterknife踩坑

在8.0之前butterknife在Module Library中使用有bug,仔细观察原来是由于引用R资源字段不是常量所导致在Bind的时候找不到资源,8.0之后修复了这个bug,原文:To use Butter Knife in a library, add the plugin to your buildscript:buildscript { repositorie

2017-05-11 12:59:28 4752 2

原创 JNI开发流程(androidstudio)

一、ndk下载安装并配置环境下载解压得到如下目录(本人用的是r10版本):目录介绍(主要需要知道的目录):  * docs:帮助文档  * build/tools:linux的批处理文件  * platforms:编译c代码需要使用的头文件和类库  * prebuilt:预编译使用的二进制可执行文件  * sample:jni的使用例子  * sourc

2017-02-14 18:14:18 396

原创 解决tomcat运行一段时间就报错Software caused connection abort: socket write error错误

问题:     服务端是基于ssh框架搭建,在启动服务器一段时间访问正常,然后几十分钟几个小时后没有用户访问,再次去访问服务端就会报这个错。解决过程:     起初我以为是服务器为了节省资源“自动休眠”,然后开始百度找资料,修改了tomcat配置啥的,还是没有解决问题,还是会报错。又开始找找找,又以为是数据库连接问题(后面发现确实是这个问题),开始检查代码,因为hibernate对数据

2017-02-09 10:27:42 74828 1

转载 Android图片加载神器之Fresco-加载图片基础[详细图解Fresco的使用]

Fresco简单的使用—SimpleDraweeView百学须先立志—学前须知:在我们平时加载图片(不管是下载还是加载本地图片…..)的时候,我们经常会遇到这样一个需求,那就是当图片正在加载时应该呈现正在加载时的图像,当图片加载失败时应该呈现图片加载时的图像,当我们重新加载这张图片时,应该呈现重试时图像,直到这张图片加载完成。这些繁琐并且重复的如果得不到简化的话,那将是一个开发

2017-01-06 10:19:59 434

转载 Android 通过JNI实现守护进程

开发一个需要常住后台的App其实是一件非常头疼的事情,不仅要应对国内各大厂商的ROM,还需要应对各类的安全管家…  虽然不断的研究各式各样的方法,但是效果并不好,比如任务管理器把App干掉,服务就起不来了…网上搜寻一番后,主要的方法有以下几种方法,但其实也都治标不治本:1、提高Service的优先级:这个,也只能说在系统内存不足需要回收资源的时候,优先级较高,不容易被回收,然并卵…

2016-11-09 14:14:07 348

转载 Android艺术开发探索——第二章:IPC机制(下)

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]Android艺术开发探索——第二章:IPC机制(下)我们继续来讲IPC机制,在本篇中你将会学习到ContentProviderSocketBinder连接池一.使用ContentProviderContentProvider是Androi

2016-10-31 10:48:45 353

转载 Android开发艺术探索——第二章:IPC机制(中)

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]Android开发艺术探索——第二章:IPC机制(中)好的,我们继续来了解IPC机制,在上篇我们可能就是把理论的知识写完了,然后现在基本上是可以实战了。一.Android中的IPC方式本节我们开始详细的分析各中跨进程的方式,具体方式有很多,比如可以通过

2016-10-31 10:47:11 279

转载 Android开发艺术探索——第二章:IPC机制(上)

版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]Android开发艺术探索——第二章:IPC机制(上)本章主要讲解Android的IPC机制,首先介绍Android中的多进程概念以及多进程开发模式中常见的注意事项,接着介绍Android中的序列化机制和Binder,然后详细的介绍Bundle,文件共享,AIDL,Mes

2016-10-31 10:45:28 255

转载 Android Studio 2.2 来啦

今年的 I/O 2016 Google 放出了 Android Studio 2.2 的预览版,改进了多项功能,只不过为了保证公司项目不受影响,我一般都不安装预览版的,因为预览版意味着不稳定,可能遇到各种意想不到的坑,昨天,Google 终于发布了 Android Studio 2.2 的正式版,于是赶紧第一时间体验了下,按照 Google 的说法本次更新包含了三个方面:speed, smar

2016-09-27 11:19:32 273

转载 【Android 应用开发】Android 开发 之 JNI入门 - NDK从入门到精通

NDK项目源码地址 : -- 第一个JNI示例程序下载 : GitHub - https://github.com/han1202012/NDKHelloworld.git -- Java传递参数给C语言实例程序 : GitHub - https://github.com/han1202012/NDKParameterPassing.Git --C语言回调Java方法示

2016-09-23 13:11:17 504

转载 App优化之性能分析工具

今天聊下个人比较惯用的一些App性能测试和分析工具, 先上个图: ![性能分析工具]tools_mind_node本文暂不对工具的使用做过多的深入. 在后续的具体实例中会具体说明怎么用这些工具来达成分析目的和解决问题的.1, 官方工具一般来说, 学习一门新的技术, 最应该做的就是阅读其官方文档, 那是最权威的. Android本身给我们提供了

2016-09-12 09:55:05 883

转载 App优化之提升你的App启动速度之实例挑战

1, 代码分析因为这个App集成了Bugly, Push, Feedback等服务, 所以Application的onCreate有很多第三方平台的初始化工作...public class GithubApplication extends MultiDexApplication { @Override public void onCreate() {

2016-09-12 09:53:27 2400

转载 App优化之提升你的App启动速度之理论基础

1, 欲善其事, 先利其器论语有云: 工欲善其事,必先利其器. 要想提升App的启动速度, 我们需要先找到拖后腿的点, 要想找到这些点, 我们就需要借助我们的 工具 了.前文 提到了很多工具, 今天我们使用Traceview来分析我们的启动过程.1.1 Traceview介绍Traceview是一个性能分析工具, 主要是分析当前线程情况, 各个方法执行时间等. 如下

2016-09-12 09:52:50 661

原创 Android 图片下载工具类:BitmapUtil

package com.net.util;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.MalformedURLExce

2016-08-19 17:34:46 324

转载 【精华】图解 Android 事件分发机制

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

2016-08-03 09:13:39 219

转载 深入浅出 RecyclerView

原文:http://kymjs.com/code/2016/07/10/01作者:kymjs张涛今天推荐给各位的是张涛同学最近的一篇文章,说实话,RecyclerView 的文章挺多的,但像这样由浅入深,一步步讲到源码实现工作原理的不是那么多,推荐大家阅读。起深入浅出这名字的时候我是慎重又慎重的,生怕被人骂标题党,写的什么破玩意还敢说深入浅出

2016-08-03 09:11:33 318

转载 java中Map集合的常用遍历方法及HashMap的应用实例

Map的遍历大体有3种:1、遍历Map.entrySet():它的每一个元素都是Map.Entry对象,这个对象中,放着的就是Map中的某一对key-value;2、遍历Map.keySet():它是Map中key值的集合,我们可以通过遍历这个集合来读取Map中的元素;3、遍历Map.values():它是Map中value的集合,我们可以直接通过这个集合遍

2016-07-21 12:02:36 307

原创 将图片和Base64为互相转换

// 把Bitmap转换成Base64        public static String getBitmapStrBase64(Bitmap bitmap) {                ByteArrayOutputStream baos = new ByteArrayOutputStream();                bitmap.compress(Compre

2016-07-01 19:31:45 452

转载 android图片轮播效果,RollViewPager的简单使用

图片轮播算是我们用的比较多的一个功能,我之前也写过类似的文章(http://blog.csdn.net/double2hao/article/details/48896297),但是说实话自己写并不是特别方便,而且往往bug会比较多。而在github上有一些大神专门写了viewpager的轮播框架并且开源,供大家学习参考,这篇博客就教大家如何简单地使用开源框架RollViewPager。对

2016-07-01 09:11:00 635

转载 Android漂亮的对话框项目sweet-alert-dialog

项目地址: https://github.com/pedant/sweet-alert-dialogandroid原生的dialog太生硬了,之前看到了这个效果非常不错但是没有用过,今天给别人推荐使用,他遇到了问题,导入后错误非常多,也没有库工程。于是自己认真看了一下,这是个AndroidStudio的工程,并且里面还依赖于materialish-progress工程,也是个AS的工程。于

2016-07-01 09:08:29 792

转载 是时候用NoHttp来替换Volley了

NoHttp一个有情怀的框架我们日常生活中常用的App,包括我们开发者平常的开发中,有90%以上的App都用了Http来和服务器做交互。随着Android6.0开始AndroidSDK中删除了HttpClient的相关的API,我们有必要选择一个可以兼容高低版本系统的Http框架,Google的官方文档中推荐我们使用HttpURLConnection,但是鉴于HttpURLCo

2016-07-01 09:05:42 753

转载 Android端 WebP图片压缩与传输的一点探索

1、简介直到4g时代,流量依然是宝贵的东西。而移动网络传输中,最占流量的一种载体:图片,成为了我们移动开发者不得不关注的一个问题。我们关注的问题,无非是图片体积和质量如何达到一个比较和谐的平衡,希望得到质量不错的图片同时体积还不能太大。走在时代前列的谷歌给出了一个不错的答案——WebP。WebP是一种图片文件格式,在相同的压缩指标下,webp的有损压缩能比jpg小

2016-07-01 09:00:35 475

转载 常用的正则表达式

1234567891011121314151617181920212223242526272829303132333435

2016-05-21 16:37:04 332

转载 《Android深入透析》之常用设计模式经验谈

前言:       Android开发的设计模式,基本设计思想源于java的设计模式,java的设计模式有N多种,据不完全统计,迄今为止,网络出现最频繁的大概有23种。Java只是一门开发语言,学会并掌握这门语言进行代码编写,这是每个程序员必修的课程,但如何写出高质量、易维护和复用性强的代码,那就体现出程序员的层次和水平了。设计模式的出现就是为了解决这些问题。       开始

2016-05-20 17:55:15 188

空空如也

空空如也

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

TA关注的人

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