自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (32)
  • 收藏
  • 关注

原创 Android Studio 问题解决记录

问题1:提示Gradle version 2.10 is required. Current version is 2.8. If using the gradle wrapper, try editing the distributionUrl in /Users/lee/Downloads/AS Demo/MiLaDouSupplierApp/app/gradle/wrapper/gradle

2016-07-06 20:00:02 1186

原创 Android实现Banner界面广告图片循环轮播(包括实现手动滑动循环)

前言:经常会看到有一些app的banner界面可以实现循环播放多个广告图片和手动滑动循环。本以为单纯的ViewPager就可以实现这些功能。但是蛋疼的事情来了,ViewPager并不支持循环翻页。所以要实现循环还得需要自己去动手。自己再网上也找了写例子,本博文的Demo是结合自己找到的一些相关例子的基础上去改造,也希望对读者有用。  Demo实现的效果图如下:

2015-05-08 12:59:39 184269 120

原创 自定义ViewGroup

本博文Demo下载地址:http://download.csdn.net/detail/stevenhu_223/8527997     前言:很久之前写了一篇文章《基于第三方开发Android锁屏》,里面有用到自定义ViewGroup(StarLockView类),今天回头去看看当初写的这个类,简直惨不忍睹。用了一大堆变量,相关视图也在代码中创建,代码健壮性也有待提高。今天就把当初写的这个S

2015-03-24 12:35:57 1881 1

原创 Android中的xml、json格式数据解析

转载请注明出处:         本博文相关的Demo下载链接:  前言:在开发Android第三方App应用的过程中,特别是涉及到网络请求的App,都会涉及到解析后台返回的数据。而后台返回的数据无非就是两种格式,xml和json格式。如何更好的方便有效的解析这些后台返回的数据,对我们开发者来说是很重要的。接下来将介绍以下几种笔者比较常用的数据解析方式。   一。simple-

2015-01-08 13:22:13 16436 1

原创 解决Android单个dex文件不能超过65536个方法问题

当我们的项目代码过大时,编译运行时会报Unable to execute dex: method ID not in[0, 0xffff]: 65536)错误。当出现这个错误时说明你本身自己的工程代码中含有的太多的方法,或者你的工程lib文件夹下引用的第三方插件jar包有太多的方法,这两者的方法加起来已经超过了65536这个数目。而谷歌规定单个dex文件中的方法不能超过65536的限制。  那

2014-11-21 15:58:33 38532 33

原创 Android 百度地图开发问题----解决地图有时候加载不出来问题

相信很多人在开发百度地图的时候会出现百度地图有时候会加载不出来,只显示网格图。 这个问题究其原因就是申请百度key的时候填写的SHA1

2014-08-01 11:42:46 26287 12

原创 FusionCharts报表在Android上的实现

最近Android这边报表方面的实现一直在考虑是否需要谷歌提供的第三方库achartengine来实现,但考虑到和IOS的一致问题

2014-07-18 12:41:54 7087 6

原创 Android有用处理代码集锦-----Sdcard相关

1. 检测sdcard是否可用:

2014-05-08 10:32:29 1737

原创 Launcher源码浅析-----涉及Workspace界面资源加载重要类和资源文件简介

前言:Workspace界面加载属于Launcher资源加载的一部分,总体来说,Workspace上的加载主要还是解析default_workspace.xml文件中定义的资源。Launcher启动后在Workspace界面和Hotseat上看到的默认显示的应用图标、小部件等都是在default_workspace.xml文件中定义的。本博文主要介绍Workspace和Hotseat界面如果通过解

2014-05-07 11:53:37 5508 1

原创 Android有用处理代码集锦-----图片相关

sss

2014-04-29 10:31:48 2963

原创 Android开发学习网址记录(更新中....)

eoe移动开发者社区:http://www.eoe.cn/code/android.html  开源中国社区:http://www.oschina.net/  ItEye:http://www.iteye.com/  360doc图书馆:http://www.360doc.com/index.html  java虚拟机学习:http://zhanjia.iteye.com/blog

2014-04-01 11:37:10 1446

原创 人生抉择

转眼间工作已经将近两年,两年的时间说长也不长,说短也不短。就这样磕磕碰碰的就过去了。想想过去的这两年,我扪心自问,我得到了什么?又失去了什么?我不清楚,我只知道我当初毕业时选择了android,而不是选择从事自己大学所读专业的工作是正确。很庆幸,刚毕业的时候就可以选择自己相对感兴趣的行业。虽然这个路程比较艰难,但是自己还是熬过来了。而现如今,自己却又不得不做出人生的又一次抉择。总之,这段时间只能用

2014-03-18 23:40:04 2814 17

原创 Launcher源码浅析-----Launcher启动时的资源加载

前言:Launcher在刚启动时,会在UI主线程之外创建一个异步消息处理线程来执行相关资源的加载。资源的加载分为两部分,一部分是加载需要在Workspace和Hotseat中显示的资源(应用程序对应的快捷方式、文件夹、widget),另一部是加载需要在菜单界面中显示的资源(所有应用、小部件)。    一. Launcher启动时资源加载机制         在分析Launcher资源加载之

2014-02-19 16:53:00 4075 3

原创 Android中的软引用(SoftRefrerence)和弱引用(WeakReference)

在Android开发中,基本上很少有用到软引用或弱引用,这两个东东若用的很好,对自己开发的代码质量的提高有很打的帮助。若用的不好,会把自己给坑。所以,在还没有真正的去了解它们之前,还是慎用比较好。  对于这两者,先作个小总结如下:   1.  SoftReference:软引用-->当虚拟机内存不足时,将会回收它指向的对象;需要获取对象时,可以调用get方法。    2.  WeakR

2014-01-16 16:26:27 34636 6

原创 ContentProvider单元测试

Android单元测试框架是在Java单元测试框架的基础上扩展的,Android四大组件中的Activity、Service、ContentProvider都可以作为单元测试的Target进行测试。本文主要介绍了ContentProvider的单元测试。    1.建立测试环境         在前面的一篇文章《Android单元测试》中介绍的测试环境的建立是与Android工程独立的一种

2013-11-02 14:01:59 3691 1

原创 Android有用处理代码集锦-----分辨率相关

通过我们所说的屏幕分辨率如800x480、960x540等。这些分辨率的值是可以通过代码获取到的。要想知道自己的Android手机屏幕分辨率,可以通过下列的demo代码实现获取。  代码如下:  MainActivity

2013-10-08 15:37:24 2297

原创 动态显示和隐藏状态栏

小米Launcher有一个细节上的功能效果:在长按桌面应用图标时,会隐藏状态栏,然后在状态栏原有的布局上显示卸载或删除的操作栏。放手后,操作栏隐藏,状态栏显示出来。也就是说,这个过程是涉及到对状态栏的动态操作的。    View类提供了setSystemUiVisibility和getSystemUiVisibility方法,这两个方法实现对状态栏的动态显示或隐藏的操作,以及获取状态栏当前可见

2013-10-08 15:21:05 76667 25

原创 Android手势源码浅析----手势识别

前言:手势识别在Android手势手势中是最重要的部分,基本上算是手势的精髓;手势识别的算法有点类似人脸识别;手势识别的利用很普遍,涉及到用户安全操作的领域比较多;比如可以通过手势识别来实现手机的解锁,安全启动用户设置的用户模式的应用等;

2013-09-06 00:58:25 9360 3

原创 Launcher源码浅析-----Launcher自定义布局属性

在上一篇文章Android源码Launcher模块浅析-----Launcher布局>中,对Launcher的总布局文件Launcher.xml进行的分析。在分析Launcher布局文件代码过程中,会看到一些以launcher:开头而不是以android:开头的布局属性的定义。如launcher.xml文件中id为workspace的视图布局,如下代码:... <com.andro

2013-08-18 22:05:19 8898

原创 Launcher源码浅析-----Launcher布局

前言:Launcher是Android的系统应用,在手机开机后第一个见到就是Launcher。用户通过Launcher基本上可以从整体上纵观手机中所存在的所有应用;Android源码中的Launcher分两个主要界面,一个是WorkSpace界面,就是我们俗称的桌面;另一个是AppsCustomizePagedView界面,就是我们俗称的菜单界面;Launcher可以说是Android系统中比较重

2013-08-10 00:39:33 17465 15

原创 Android手势源码浅析-----手势的保存和加载(GestureLibrary)

前言:在《Android手势源码浅析------手势的形成(Gesture)》文章中,介绍了手势Gesture的形成。那么,有的时候,用户绘制的手势是需要保存的,以便用户需要时加载出来进行相关的手势识别处理;接下来将结合一个Demo重点介绍源码中手势的保存和加载流程机制;    一. 关于手势保存和加载的Demo          手势保存概要:           1. 在绘制完

2013-08-04 16:45:17 9375 1

原创 解决android4.0系统中菜单(Menu)添加Icon无效问题

在Android4.0系统中,创建菜单Menu,通过setIcon方法给菜单添加图标是无效的,图标是显示不出来的,2.3系统中是可以显示出来的。这个问题的根本原因在于4.0系统中,涉及到菜单的源码类 MenuBuilder,该类的部分源码如下:public class MenuBuilder implements Menu {...private boolean mOptionalIc

2013-08-01 20:00:05 25823 21

原创 Android手势源码浅析------手势的形成(Gesture)

前言:上篇介绍了提供手势绘制的视图平台GestureOverlayView,但是在视图平台上绘制出的手势,是需要存储以及在必要的利用时加载取出手势。所以,用户绘制出的一个完整的手势是需要一定的代码机制来完成存储以及必要时加载取出的;那么,在源码中Gesture这个类就是用来描述完整的手势的。一个Gesture就是用户手指在触摸屏上绘制形成的不规则几何图形(A gesture is a hand

2013-07-27 17:57:32 6352

原创 Android手势源码浅析-----手势绘制(GestureOverlayView)

前言:Android关于手势的操作提供两种形式:一种是针对用户手指在屏幕上划出的动作而进行移动的检测,这些手势的检测提供android提供的监听器来实现;另一种是用户手指在屏幕上滑动而形成一定的不规则的几何图形(即为多个持续触摸事件在屏幕形成特定的形状);本文主要是针对第二种手势的绘制原理进行浅析,我们姑且称它为输入法手势;    1. 输入法手势       在Android源码中,

2013-07-25 00:40:18 23219 8

原创 C++函数与java函数菜鸟级的对比理解

Android源码底层的代码实现文件有.h、.c、.cpp后缀名文件,它们分别是c、c++程序代码文件和头文件。下面就以一个小例子来对比理解它们之间关系。  1. 在java中,假如我要实现一个函数getHeight(int height)返回的是传入的height     1). 在A.java文件中声明和定义函数的实现,代码如下:         public class A

2013-07-24 08:57:08 1275

原创 Java反射机制知识点

前言:我们知道,类和类的成员变量及方法都是要求有权限控制的(public、protected、private);而当类中的信息封装为私有时,外部对该类中私有的信息是没有访问权限的,也就是说当该类里的内容信息均受private权限控制时,外部想要获取和处理该类里的私有信息是几乎不可能的;但是,有时候这种需求是有的,而当我们非得需要去动用别的类里封装的私有信息时,java的反射机制就起到了非常关键的作

2013-07-14 18:23:42 15856 2

原创 基于第三方开发Android锁屏

在Android系统锁屏模块开发中,有两种形式的开发:一种是基于源码开发;另一种是基于第三方开发。  基于源码开发还是比较具有危险性的,而且相对于第三方开发来说要考虑的问题比较多,而且移植后可能会出现问题,不便于维护。  当然,基于源码开发锁屏要做的工作相对于第三方开发锁屏要做的工作就少了很多,比如在时间和日期的获取和实时更新、充电时显示的电量状态、运营商名字的显示等等。这些在源码中是已经

2013-07-11 23:12:54 35859 109

原创 Java基础学习笔记

时刻提醒自己:基础是最重要的,也是最容易被轻视和遗忘的,基础过硬才能更深入地去学习!1. 子类new对象时,调用父类构造函数,也就是说,子类创建对象时,父类的对象也同时隐式创建(父类的构造函数调用之前,父类中相关的成员变量已完成初始化)。 2. 关键字private和final对函数的修饰是等同的,也就是说private修饰的方法,实际上等同于final修饰的方法。(而且这些被final或

2013-07-07 23:21:34 1197

原创 Android中Path类的lineTo方法和quadTo方法画线的区别

但我们需要在屏幕上形成画线时,Path类的应用是必不可少的,而Path类的lineTo和quadTo方法实现的绘制线路形式是不一样的;   1. Path--->quadTo(float x, float y) :     该方法实现的是当我们不仅仅是画一条线而且是画弧线时会形成平滑的曲线,该曲线又称为"贝塞尔曲线"(Bezier curve),下面以一个Demo来结合理解quad

2013-07-02 23:42:54 79276 22

原创 Android中Parcelable接口的应用

在前面的一篇文章基于Android应用开发的跨进程通信实现(IPC)>介绍了通过跨进程实现基本数值类型(String)的传递,但是有的时候,需要跨进程实现传递相对较复杂的数据(比如图片之类的资源),而不仅仅是基本数据。那么,实现复杂数据跨进程的传递使用呢?这时候就不得不把Parcelable接口搬出来了,假设我们需要跨进程的数据都包装在一个我们自定义的类里面,那么这个类就需要实现Parcelabl

2013-06-30 22:47:56 8929 1

原创 实现一个视图在固定圆圈内移动

我们知道,在android4.0系统原生的滑动锁屏中,用户可以拖动中心的图标在固定的圆圈内移动。本文将以一个小Demo来实现类似这种绕着固定圆圈内拖动图标。    这个Demo有两个类:    1. MainActivity:继承Activity,主要用来承载MainView这个自定义ViewGroup类;    2. MainView:自定义ViewGroup,继承ViewGroup

2013-06-16 17:01:46 3022

原创 Android快捷开关实现

在Android源码中,提供的快捷开关相对是比较少的,Android4.0系统默认提供的桌面快捷开关AppWidget上只有5种开关(分别是Wifi开关、蓝牙开关、GPS开关、同步开关、亮度设置开关)如下图所示:         当然,有时候就需要开发实现承载更多的快捷开关的AppWidget来实现用户体验,所以,本文主要针对这些开关的主要代码实现来重点解决开发这些快捷开关。  本

2013-06-13 14:48:25 25320 12

原创 枚举类型的理解和应用

相信学习java的人,在平时开发时是很少用到枚举。说实在的,本人对枚举类型一向都是云里雾里,直到最近在看android源码时,才微探到其中的妙处。   接下来就以一个例子结合枚举和手势知识点的应用开发来讲解枚举类型在android应用开发中的活用(很多知识点都是借鉴android源码,学习android,源码是最好的教程,对开源致敬!)。      示例代码如下:packa

2013-06-10 22:51:22 5164 1

原创 枚举类型特别实用的特性(在switch语句内使用)

枚举类型可以在switch语句内使用,如下代码:     1.枚举类      public enum Season { SPRING, SUMMER, FALL, WINTER}          2.switch语句内使用:public class EnumTest { private Season season; public EnumTest

2013-05-04 23:59:22 12374 1

原创 Git和Repo管理使用简要介绍

在Linux平台下进行Android系统项目开发时,需要git或repo管理。  一. Git和Repo的区别:       1. Git:Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。       2. Repo: Repo是谷歌用Python脚本写的调用git的一个脚本。主要是用来下载、管理Android项目的软件仓库(也就是说Repo是用

2013-04-22 11:28:02 67929 3

原创 基于Android应用开发的跨进程通信实现(IPC)

本文是基于上一文《浅析Android Binder机制》讲解的Binder机制,实现开发第三方应用跨进程通信。  所谓跨进程调用,在Android应用开发中,就是不同了两个应用程序进程之间的通信实现。  我们姑且将这个两个通信的应用程序进程区分为客户端和服务端。  下面就以两个简单的应用程序来了解如何实现Android应用开发的跨进程通信。   这两个应用的实现很简单,就是实现

2013-03-30 14:08:25 5763 3

原创 Android Binder机制----实现自定义的系统服务

一.基于源码分析Binder机制:      Binder机制是android系统中实现跨进程通信(IPC)的一种重要机制。可以说,Binder机制在android系统中无处不在,所以,要研究android源码,学好Binder机制极其重要。   在学习Binder机制之前,我们先试着摸索一下系统中一些相关的涉及到Binder机制的代码。   首先,先看看SystemServer.ja

2013-02-04 16:49:59 14088 5

转载 Java程序员应该了解的10个面向对象设计原则

面向对象设计原则是OOPS(Object-Oriented Programming System,面向对象的程序设计系统)编程的核心,但大多数Java程序员追逐像Singleton、Decorator、Observer这样的设计模式,而不重视面向对象的分析和设计。甚至还有经验丰富的Java程序员没有听说过OOPS和SOLID设计原则,他们根本不知道设计原则的好处,也不知道如何依照这些原则来进行编程

2013-01-29 23:10:10 1740

原创 android悬浮窗口的实现

当我们在手机上使用360安全卫士时,手机屏幕上时刻都会出现一个小浮动窗口,点击该浮动窗口可跳转到安全卫士的操作界面,而且该浮动窗口不受其他activity的覆盖影响仍然可见(多米音乐也有相关的和主界面交互的悬浮小窗口)。那么这种不受Activity界面影响的悬浮窗口是怎么实现的呢?    竟然它能悬浮在手机桌面,且不受Activity界面的影响,说明该悬浮窗口是不隶属于Activity界面的,

2013-01-16 21:16:36 178270 75

原创 浅析android锁屏开机绘制流程(基于android4.0源码分析)

最近大体看了一下android源码锁屏模块,顺便把自己的收获在此记录下来,希望对研究锁屏的同行们有所帮助(对于锁屏模块,本人也没什么时间去真正的深究,只是摸清了个大概,若有奇异和错误之处,恳请指出)    好了,废话不多说了。     Android源码模块锁屏大体分为两种:    1.LockScreen: 系统默认的锁屏,就是我们所常见的系统原生波纹解锁(涉及MultiWave

2013-01-10 21:55:36 7309 2

Android广告控件

轻松实现广告头效果。甚至可以不用对库源码进行修改,可以任意支配自己的网络请求图片数据格式需求。同时还提供了多种翻页动画特效。

2015-11-16

自定义ViewPager实现循环滑动翻页

自定义ViewPager实现循环滑动翻页,广告页的形式。

2015-05-14

Android实现可轮播循环和手动滑动循环的广告界面

Android实现可轮播循环和手动滑动循环的广告界面 源码下载 经常会看到有一些app的banner界面可以实现循环播放多个广告图片和手动滑动循环。本以为单纯的ViewPager就可以实现这些功能。但是蛋疼的事情来了,ViewPager并不支持循环翻页。所以要实现循环还得需要自己去动手。打包给大家分享源码全过程,有需要的下载学习哈!

2015-05-08

自定义ViewGroup

自定义ViewGroup,简化StarLockView

2015-03-24

Android数据解析(xml、json)

simple-xml包解析xml格式数据、SAX解析xml格式数据。jackson包解析json格式数据。

2015-01-08

解决Android单个dex文件限制65536个方法问题

分包解决单个dex文件限制65546个方法问题

2014-11-21

FusionCharts在Android上的实现

FusionCharts各种主流报表在Android上的实现。

2014-07-18

SlidingMenu

Android eoe,SlidingMenu

2014-04-18

android之ViewPager的使用

ViewPager,FragmentPagerAdapter,Fragment

2014-03-12

Android中的软引用和弱引用

主要介绍Android中如何使用软引用和弱引用,已经两者的区别。

2014-01-16

ContentProvider单元测试

Android四大组件之ContentProvider的单元测试

2013-11-02

异步消息处理线程

什么是主线程异步消息处理和子线程异步消息处理。

2013-10-10

解决Android4.0中菜单设置图标无效问题

通过反射解决Android4.0中菜单设置图标无效问题

2013-08-01

手势绘制Demo

GestureOverlayView实现的手势绘制代码示例

2013-07-21

仿360星空锁屏(纠正版)

基于第三方开发的Android锁屏,仿360星空锁屏。

2013-07-20

仿360星空锁屏

Android基于第三方开发的锁屏,仿360星空锁屏。

2013-07-20

java反射机制知识点

java反射机制基础学习。Class、Method、Field

2013-07-14

Android第三方锁屏开发(星空锁屏)

基于第三方开发Android锁屏(仿360星空锁屏)

2013-07-11

Android中Path类的quadTo函数

Android中Path类的quadTo和lineTo函数的区别

2013-07-04

通过实现Parcelable接口跨进程传递复杂数据

实现Parcelable接口跨进程传递复杂数据

2013-06-30

在固定圆圈内移动视图

实现用户手指点击相应的视图在固定圆圈内移动

2013-06-16

Android快捷开关实现Demo

Wifi开关、移动数据开关、亮度设置开关、蓝牙开关、飞行模式开关.....

2013-06-13

枚举类型应用小Demo

枚举在android应用开发中的小列子,知识点有应用到手势的绘制监听函数

2013-06-10

基于Android应用开发的跨进程通信实现

IpcService、IpcClient、IMyService.aidl

2013-03-29

android悬浮窗口

WindowManager、WindowManagerImpl、LocalWindowManager,CompatModeWrapper。

2013-01-15

android单元测试

ActivityInstrumentationTestCase2,ApplicationTestCase

2012-12-16

单元测试手机UI界面

通过编写UI界面,在手机上直接查看测试结果(AndroidTestRunner类实现)

2012-12-15

Java单元测试(基础)

有关java单元测试的一些基础例子,以及TestSuite类的使用。

2012-12-13

匿名内部类代码

the different code of create factory.

2012-12-06

匿名内部类解读代码

the different core of Factory with InnerClass。

2012-12-06

Hanlder、HandlerThread、AsyncTask处理机制的相关Demo代码

有关于Handler、HandlerThread、AsyncTask消息处理机制的相关Demo代码

2012-10-16

ActionBar应用开发相关代码

ActionBar相关知识点:Tab导航式ActionBar、List导航式ActionBar(Spinner),ContextActionBar(上下文操作栏)的Demo代码。

2012-10-03

空空如也

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

TA关注的人

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