Android
文章平均质量分 83
Soon_苏大强
这个作者很懒,什么都没留下…
展开
-
Android自动更新App
自动更新App,很多App都有这个功能,现在记录一下过程。首先导入grandlecompile "com.squareup.retrofit:retrofit:2.0.0-beta2" compile "com.squareup.retrofit:converter-gson:2.0.0-beta2" compile "com.squareup.retrofit:ada原创 2016-06-29 17:57:50 · 607 阅读 · 0 评论 -
解压本地zip,读取数据更新UI
今天遇见了一个需求,后台给我们一个图标和颜色的zip,让我们前端使用的图标和颜色配置都从后台读取,以方便以后的调整。想要改变图标或是整体颜色,直接在后台更改zip版本,就能使ios和Android都更新了,不用在前端修改,这样可以说一劳永逸。解决了很多问题。那么现在面临第一个问题,就是解压本地的zip并获取数据。我这里写了一个demo。记录一下:首先在清单文件添加权限:原创 2016-06-15 17:15:20 · 1107 阅读 · 0 评论 -
Android知识点之屏幕适配
一、前言Android屏幕种类很多,适配起来也相当麻烦。有很多Android开发者,做了很久的开发依然不知道该如何去适配屏幕。这里我做一下简单的介绍,屏幕分辨率和dp等等之间的换算。这里我粘出一些基本知识。三、通过多布局的形式进行屏幕适配:通过多布局的形式进行屏幕适配,系统会根据当前手机的分辨率自动寻找匹配(如果没找到,优先加载高分辨率的布局文件)如果再未找到,加载原创 2016-06-15 18:01:33 · 442 阅读 · 0 评论 -
社会化三方分享集成详细介绍(友盟)
相信做开发的猿友们肯定会接触三方分享,那么三方分享怎么具体集成呢,当初我吃过苦头,现在想为新手们写一个详细的集成介绍。大神请自行走开。。。我这里就介绍友盟的三方了吧,目前使用比较广泛,三方呢,这里只做qq,微信,微博等常见的。友盟呢有自己的demo和配置文档,不过那个demo是Eclipase的,很久了。废话不多说,开始吧。一、友盟SDK去友盟的官网下载一个友盟集成的SDK,在首页点击原创 2016-06-17 11:30:03 · 4404 阅读 · 0 评论 -
自定义无缓存的ViewPager
【原创 转载请标明出处】viewpager大家用的已经是不能再熟了,viewpager的缓存机制不知道大家研究的怎么样,有的时候呢,缓存给我们带来很多方便,但是有的需求是不需要缓存的。那么就需要自定一个把它的缓存去掉。这就是一个类,拿着直接用就ok了、package com.jjc.nocacheviewpagerlib;import android.content.Conte原创 2016-07-28 10:45:38 · 1237 阅读 · 0 评论 -
PhotoView双击放大缩小图片
【原创 】仿微信的个人相册,来回浏览个人图片和视频,其中图片时需要实现双击放大和缩小的。那么PhotoView完美解决这个问题。这里记录一下,写一个Studio的demo,我觉得每次去博客上找那些文章时,最想要的还是代码,设身处地的为同僚们着想,我还是写个简单的应用。方便大家参考和使用。在grandle中导入photoView。compile 'com.commit451:PhotoV原创 2016-07-28 10:19:29 · 2284 阅读 · 0 评论 -
带背景显示文字,自动换行的MultipleTextView
【原创 转载请标明出处】自定的RelativeLayout,可实现带背景显示文字,自动换行。直接上代码。拿过去就可以用。package net.masonliu.multipletextview.library;import android.content.Context;import android.content.res.TypedArray;import android.原创 2016-07-28 11:25:53 · 1504 阅读 · 0 评论 -
Android Retrofit 2.0框架上传图片,视频解决方案
本文为大家分享了 Android Retrofit 2.0框架上传图片解决方案,具体内容如下1.单张图片的上传/** * 上传一张图片 * @param description * @param imgs * @return */ @Multipart @POST("/upload") Call uploadImage(@Part("fil原创 2016-07-29 10:36:44 · 9145 阅读 · 4 评论 -
xUtils的基本使用(get,post,上传文件)
【原创 转载请标明出处】xUtils已经是熟的不能在熟了。我在这里总结一下xUitls的一些基本使用。首先导入grandle:compile 'org.xutils:xutils:3.3.30'然后在一个Application类中初始化。x.Ext.init(this);1:GET网络请求数据 RequestParams requestParams = new Reque原创 2016-07-29 13:46:17 · 8709 阅读 · 1 评论 -
viewpager切换动画
viewpager,做安卓的都相当的熟悉,今天给大家分享一下viewpager的切换动画,使用非常简单,就一行代码就ok。上代码viewPager.setPageTransformer(false,new BackgroundToForegroundTransformer());这就是使用过程。那么动画效果就是一些自定义的类。这里有几个写好的,供大家参考。这是动画基础类,直接copy进原创 2016-08-04 10:40:21 · 529 阅读 · 0 评论 -
Android开发人员不得不收集的代码
Android开发人员不得不收集的代码字数6150 阅读6415 评论98 喜欢464为方便查找,已进行大致归类,其目录如下所示:尺寸相关dp与px转换 dp2px、px2dpsp与px转换 sp2px、px2sp各种单位转换 applyDimension在onCreate()即可强行获取View的尺寸 forceGetViewSizeListView中提前原创 2016-08-02 13:40:57 · 1117 阅读 · 0 评论 -
git常用命令
名词master: 默认开发分支origin: 默认远程版本库Index / Stage:暂存区Workspace:工作区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库# 在当前目录新建一个Git代码库$ git init# 新建一个目录,将其初始化为Git代码库$ git原创 2016-08-30 17:45:52 · 313 阅读 · 0 评论 -
mvp框架学习实战代码(配合retrofit+dagger2+rxjava)
转载请标明出处,谢谢。 最近一直在学习框架的搭建和使用,对于mvp,很多开发者有自己的独特见解,褒贬不一。不过我还是觉得它有学习的必要。在某些大项目上,使用mvp可以方便后期的代码维护和更新。废话不多说,开始进入正题。首先是了解这些技术,我推荐几个个人觉得比较好的文档。rxjava:http://gank.io/post/560e15be2dca930e00da1083#toc_12dagge原创 2016-07-08 14:48:43 · 2116 阅读 · 0 评论 -
Android提交应用市场
360提交网址请上传4-5张截图,支持JPG、PNG格式,不小于800*480(480*800),单张不能超过3M,请去除截图中的顶部通知栏13-22个字,简要说明产品的特色和卖点。应用宝提交网址请上传2-5张截图(尺寸保持一致),单张图片不超过1M。截图不能小于320*480像素,推荐480*800像素。JPG、PNG格式。请填写一句话简介5至15字的内容原创 2016-08-31 15:11:21 · 2050 阅读 · 0 评论 -
设计模式学习之路-代理模式
学习了简单工厂模式,策略模式,装饰者模式。设计原则有单一职责原则,开放-封闭原则,依赖倒置原则,里氏代换原则。学会使用才是关键,在自己做项目时,拿到一个需求,先对其进行结构分析,选用合适的设计模式,在编程时注意设计原则,经常使用就能把这些设计原则铭记于心。直接进入主题,代理模式。代理模式(Proxy):为其他对象提供一种代理以控制对这个对象的访问。看一下基本代码。abstr原创 2016-08-31 09:54:25 · 255 阅读 · 0 评论 -
2016年最值得学习的五大开源项目
【原文:http://www.jianshu.com/p/8180cc105f01】1,Material Animations演示View的平移、缩放动画,activity进入和退出动画,界面间元素共享。是学习动画很好的项目,项目代码量比较少,也很适合新手学习。项目地址GitHub: https://github.com/lgvalle/Material-A转载 2016-08-31 16:54:56 · 670 阅读 · 0 评论 -
设计模式学习之路-状态模式
状态模式,实时监测状态,当状态发生变化原创 2016-09-09 14:37:42 · 294 阅读 · 0 评论 -
设计模式学习之路-适配器模式
适配器模式,将一个类的接口转换成客户希望的另外一个接口,Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。那么何时使用适配器模式呢,一般在项目后期维护时,一些已有的不可更改或很难更改的类,需要使用其他的类的接口,那么就可以根据需求创建一个适配器。看看适配器的UML类图基本得逻辑代码class Target{ public void Request原创 2016-09-12 17:29:02 · 334 阅读 · 0 评论 -
设计模式学习之路-工厂方法模式
工厂方法模式乍一听和简单工厂模式很相似。很容易把他们弄混。我们先来学习什么是工厂方法模式。工厂方法模式(Factory Method):定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。原创 2016-09-01 10:24:57 · 318 阅读 · 0 评论 -
设计模式学习之路-备忘录模式
备忘录模式,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。这个模式也很简单,最主要是一种思想。逻辑缜密的人在设计框架时必然走到这里。我们看看UML类图。 基本逻辑代码:class Originator{ private String state; public Memento createMemento(原创 2016-09-13 12:02:15 · 462 阅读 · 0 评论 -
设计模式学习之路-模板方法模式
这个模式在Android中是可以用到的,当我们要完成某一细节层次一致的一个过程或一系列步骤,但其个别步骤在更详细的层次上的实现可能不同时,我们通常考虑用模板方法模式来处理。模板方法模式:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。模板模式方法的相关UML类图。基本代码abstract clas原创 2016-09-02 14:29:03 · 320 阅读 · 0 评论 -
设计模式学习之路-原型模式
由于我是做Android的,所以不可能把所有的模式都学一遍,理一遍。我只是想多学一点Android经常用的模式。比如之前学的的代理模式,在Android里很少用到,一般在电脑编程中的远程代理和虚拟代理用的比较多。所以我会选择性的记录学习过程中对Android开发有意义的设计模式。不可能每个模式都去细嚼慢咽。这里的原型模式也是,Android很难用到。废话不多说,看看原型模式吧。原型模式(P原创 2016-09-02 11:03:24 · 381 阅读 · 0 评论 -
设计模式学习之路-组合模式
组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。在设计一个Android开发中,在设计一些对象关系时,总会出现树形结构,权限问题。若是整个树状图没设计好,那么后期很容易崩溃。这个时候组合模式很合适。看看UML类图。基本代码abstract class Component{ protected String nam原创 2016-09-14 10:32:26 · 525 阅读 · 0 评论 -
设计模式学习之路-简单工厂模式
设计模式是程序员进阶的必经之路,这也是我的必经之路,也许大家当初为了面试所需都强记过一些设计模式的名字,像单例模式,工厂模式,策略模式,观察者模式,代理模式,适配器模式,命令模式等等。我当初就是知其然不知其所以然,现在决定把设计模式都认真学习一遍,没有代码量是不可能成功的,所以在学习过程中,记录下所有代码。见证成长。那么先从最简单的工厂模式开始,工厂模式,顾名思义就是生产实例的工厂。也就是在设原创 2016-08-23 17:35:56 · 387 阅读 · 0 评论 -
设计模式学习之路-装饰者模式(附设计原则)
设计模式,学过了简单工厂和策略模式,简单实用,在设计代码的时候,经常使用就会养成一个好的代码习惯,时时刻刻保持代码的可维护性,可复用性,灵活性,可扩展性。这些是写出优美代码的前提。那么接下来,一起学习一些设计原则。第一个设计原则:单一职责原则(SRP),就一个类而言,应该仅有一个引起它变化的原因。白话呢,就是一个类,职责作用尽可能的单一,这样就可以降低耦合性,提高代码的可维护性,灵活性。原创 2016-08-29 17:09:43 · 852 阅读 · 0 评论 -
设计模式学习之路-策略模式
工厂模式很简单,也很好上手,那么接下来学习策略模式,我们就以商场的收银系统作为需求,使用策略模式完成。达到学习了解策略模式的目的。策略模式(strategy):它定义了算法家族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化,不会影响到使用算法的客户。先看看策略模式的结构图:通过Context的实例去调用不同具体实例的方法。那么根据策略模式的结构图,商场收银系统的UM原创 2016-08-24 16:48:40 · 356 阅读 · 0 评论 -
设计模式学习之路-外观模式
设计模式最重要的还是在于运用,多做多看多练。这是唯一能提高技术水平的道路。没有捷径!外观模式(Facade),为子系统中一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。原创 2016-09-05 17:55:08 · 280 阅读 · 0 评论 -
设计模式学习之路-建造者模式
建造者模式,使我们经常提到一个模式,而且很多地方都用到了,比如AlertDialog创建使用Builder。这也是建造者模式的体现,那么我们平时在写代码的时候也可以使用这个方式,来梳理代码逻辑。建造者模式(Builder):将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者的UML类图基本代码absract class Builder{ pu原创 2016-09-06 20:01:16 · 257 阅读 · 0 评论 -
设计模式学习之路-观察者模式
设计模式就是解决问题和优化代码的经验总结,站在巨人的肩膀上,才能达到更高的高度。原创 2016-09-07 17:13:03 · 407 阅读 · 0 评论 -
设计模式学习之路-抽象工厂模式
之前学过了简单工厂模式,工厂方法模式,简单工厂在创建的时候,需要传入一个识别符,然后返回相应的实例。而工厂方法在需要的时候,创建相应的工厂类,获得相应的实例。抽象工厂模式(Abstract Factory):提供一个创建一系列相关或互相依赖的接口,而无需指定它们具体的类。看看UML类图基本代码/// /// 抽象产品A /// public ab原创 2016-09-08 16:49:38 · 348 阅读 · 0 评论 -
二维码生成、扫描、图片识别(Zxing)
这样的例子虽然已经很多了,不过我在网上浏览了一圈,也没找到几个图库二维码图片识别例子,好的算法识别率才高。这里有一个好点的算法,算法不是我写的,只是作为整理记录,给众多安卓开发者一个方便。原创 2016-10-18 17:02:21 · 11662 阅读 · 1 评论 -
github的README.md编写
最近对它的README.md文件颇为感兴趣。便写下这贴,帮助更多的还不会编写README文件的同学们。README文件后缀名为md。md是markdown的缩写,markdown是一种编辑博客的语言。用惯了可视化的博客编辑器(比如CSDN博客,囧),这种编程式的博客编辑方案着实让人眼前一亮。不过GitHub支持的语法在标准markdown语法的基础上做了修改,称为Github Flavor转载 2016-10-19 09:47:35 · 341 阅读 · 0 评论 -
Android手机Fiddler2抓包教程
Fiddler手机抓包第一步:配置FiddlerTools->Fiddler Options...重启Fiddler第二步:在手机上安装证书用手机浏览器打开http://10.240.139.173:8888(IP是你电脑的IP,8888是Fiddler的端口)在页面上下载FiddlerRoot certificate(文件名Fidd原创 2016-10-19 13:51:46 · 587 阅读 · 0 评论 -
Android进阶系列之源码分析事件分发责任链模式
翱翔于源码的海洋,痛并快乐着....什么是责任链模式?责任链模式(Chain of Responsibility)的目标是使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递请求,直到有一个对象处理它为止。在处理用户的请求时可能要根据不同的情况对请求添加不同的处理逻辑,在这时候就可以利用责任链进行设计。当需要添加一个处理逻辑原创 2017-01-03 14:52:29 · 1715 阅读 · 1 评论 -
Android进阶系列之Percent Support Library使用详解
总是在为屏幕适配而烦恼,蓝瘦香菇。Google爸爸看着我们这么辛苦,终于在2015年8月推出了一个全新的百分比布局兼容函数库:Android Percent Library。当时我的心情啊,就像看见了千年难得一见的美女。那么来看看都咋用吧。首先需要在Gradle里加入依赖。 compile 'com.android.support:percent:24.2.0'看清楚自己的co原创 2017-01-03 18:05:16 · 6983 阅读 · 0 评论 -
Android进阶系列之源码分析Activity的启动流程
美女镇楼,辟邪!源码,是一个程序猿前进路上一个大的而又不得不去翻越障碍,我讨厌源码,看着一大堆。5000多行,要看完得啥时候去了啊。不过做安卓的总有这一天,自从踏上这条不归路,我就认命了。好吧,我慢慢来啃。先从Activity的启动流程开始,一个app启动的底层源码流程。那么我们该去哪里找源码呢,源码其实就在sdk的包里,并不遥远,只是平时我们很少去关注。(从应用层的入口开始,FrameWor原创 2016-12-23 14:11:43 · 408 阅读 · 0 评论 -
Android进阶系列之事件分发详解
曾经有个朋友问过我,你到底是想挣钱还是搞技术?这个问题很简单,但是我却沉思了。这就关于自己的目标了,到底是安安心心有个工作,有钱拿就行?还是继续深入搞技术,宁愿待在工资高的小公司还是愿意待在工资低的大公司?晚上躺在床上想了想,还是搞技术吧,技术好了自然就有钱了。好吧~最终还是脱离不了钱,毕竟只是个庸俗的人。想想那么多要学的就蓝瘦香菇~========================原创 2016-11-17 16:33:02 · 356 阅读 · 0 评论 -
Android进阶系列之源码SDK单例模式运用
又到了伤心时刻,源码的魅力,只有翱翔于源码的海洋时才能发现。震惊于她的美丽,她的性感,她的婀娜多姿。是的,是她。在看源码之前呢,我们对单例模式应该有足够了解才能在一片黑的源码中找到那点光亮。单例模式,就如它的名字一样,没有必要多次实例化,一次就好。那么单例模式又有多少种呢。除去变异的大概有5种。简单单例模式,饿汉单例模式,DLC单例模式,内部类单例模式,枚举类单例模式。还有很多这些原创 2016-12-27 18:13:51 · 665 阅读 · 2 评论 -
Retrofit谷歌官方详解
之前对Android里常用的网络请求库OkHttp与Volley做了简单的学习归纳与总结,这里看这个系列中的最后一篇,来认识一下Retrofit。 Retrofit可以认为是OkHttp的“升级版”。之所以这么说,是因为其内部默认正是基于OkHttp来进行封装的。这点从Retrofit这个命名就可以看出端倪。 回顾一下OkHttp,我们会发现虽然是封装过后的库,但OkHttp的封装是比较“转载 2016-12-23 17:09:25 · 2119 阅读 · 0 评论 -
设计模式学习之路--解释器模式
设计模式是进阶到架构师的必备技能,当然不只是记住他们的名字,而是要学会他们的精髓。这就不简单了,还是得靠经验和学习。无美女,不代码!原创 2017-01-07 19:12:33 · 327 阅读 · 0 评论