自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(57)
  • 资源 (23)
  • 问答 (1)
  • 收藏
  • 关注

转载 Gradle和Maven区别(转自zhihu

Gradle和Maven都是项目自动构建工具,编译源代码只是整个过程的一个方面,更重要的是,你要把你的软件发布到生产环境中来产生商业价值,所以,你要运行测试,构建分布、分析代码质量、甚至为不同目标环境提供不同版本,然后部署。整个过程进行自动化操作是很有必要的。整个过程可以分成以下几个步骤:编译源代码运行单元测试和集成测试执行静态代码分析、生成分析报告创建发布版本部署到目标环

2016-08-30 18:28:48 662

转载 通俗的理解Gradle(转自zhihu

软件开发讲究代码复用,通过复用可以使工程更易维护,代码量更少..... 开发者可以通过继承,组合,函数模块等实现不同程度上的代码复用.但不知你有没有想过,软件开发也是一种工程作业,绝不仅仅是写代码,还涉及到工程的各种管理(依赖,打包,部署,发布,各种渠道的差异管理.....),你每天都在build,clean,签名,打包,发布,有没有想过这种过程,也可以像代码一样被描述出来, 也可以被复用.举

2016-08-30 17:11:23 514

转载 Git SSH Key 生成步骤

Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置。github的SSH配置如下:一 、设置Git的user name和email:$ git config --global user.name "xuhaiyan"$ git config --global user.email "haiyan.xu.vip@gmail

2016-08-30 14:06:44 509

原创 android studio2.1关联源码bug记录

我自己是直接可以F3或者按Ctrl进去的,也能看到系统SDK源码,昨天同事说他的不行,一看,source code在SDK Manager里也下载好了,然后在本地磁盘直接打开比如Activity的源码,也都有。但是通过IDE打开就是不行,看不到方法注解之类的。后来同事说找到原因了,是androidstudio2.1的一个bug。解决方案如下(Mac上)cd /users/emo/L

2016-08-22 14:16:53 514

转载 bolts-android

对Android客户端编程来说,有个明确的规则是不能在ui线程里面做耗时的操作。这样就要求网络请求、文件读写等等操作都要异步操作。而异步操作完成后,往往需要再更新ui界面。最直接的想法是回调,只要保证在ui线程里面,更新ui组件不会困难。但有些情况下,往往需要多层异步操作,这时候代码就很丑了,不管是维护,还是编写都是挑战。以发布内容举例:先上传所有图片,图片依次上传。 图片上传完成后,调用

2016-07-11 11:59:25 579

转载 Git命及Git数据通信原理详解

Git是一款开源的分布式版本控制系统(VCS),常用的VCS工具还包括SVN、Mercurial等,他们的使命是对资源变化的进行版本管理控制,对资源容灾备份,支持多域协同开发。这里的资源不仅仅是系统代码,还包括图片、文件、网页等。本篇文章结合流程图、详细的注解、实例操作针对Git的使用、Git数据通信原理进行细致的讲解,利用半场足球赛的时间通读全文后相信你面对Git会自信满满、知其所以然,使用起来

2016-05-11 12:17:16 903

原创 AndroidStudio十佳常见编译或运行错误集锦

Error:Execution failed for task ':app:processDebugResources'.> com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'D:\sdk\build-tools\19.1.0\

2016-04-25 08:05:27 9072 1

原创 CompileSdkVersion和buildeToolVersion版本号关系

1、CompileSdkVersion是你SDK的版本号,也就是API Level,例如API-19、API-20、API-21等等。2、buildeToolVersion是你构建工具的版本,其中包括了打包工具aapt、dx等等。这个工具的目录位于..your_sdk_path/build-tools/XX.XX.XX这个版本号一般是API-LEVEL.0.0。 例如I

2016-04-24 23:14:11 1796

转载 Android Studio 导入各种形式的三方库

1,导入 jar 包导入 jar 包的方式非常简单,就是在项目中的 libs 中放入你需要导入的 jar 包,然后右键你的 jar 文件,选择“add as a library”即可在你的项目中使用这个 jar 包了。如果 gradle 中已经有如下代码,只需要sync一下即可compile fileTree(include: ['*.jar'], dir: 'libs')

2016-04-24 16:21:20 431

翻译 View的事件体系

onInterceptTouchEvent()用于处理事件并改变事件的传递方向。处理事件这个不用说了,你在函数内部编写代码处理就可以了。而决定传递方向的是返回值,返回为false时事件会传递给子控件的onInterceptTouchEvent();返回值为true时事件会传递给当前控件的onTouchEvent(),而不在传递给子控件,这就是所谓的Intercept(截断)。onTouchEv

2016-04-07 12:04:32 385

转载 Mac上SSH的生成

Git是分布式的代码管理工具,远程的代码管理是基于SSH的,所以要使用远程的Git则需要SSH的配置。github的SSH配置如下:一 、设置Git的user name和email:$ git config --global user.name "username"$ git config --global user.email "[email protected]

2016-01-28 13:42:00 3128

转载 FrescoImageUtil的使用

引入Fresco的原因:性能方面:目前项目中使用的Universal-Image-Loader(简称UIL)是一个比较强大的图片加载框架.在java层有非常丰富的加载,缩放,缓存逻辑,可以满足目前项目所有需要.但是其bitmap在内存缓存这一级依然使用javaheap,在控件大小未能获取到时(页面oncreat时加载图片),创建的bitmap是以原始图片的宽高为标准生成的(不超过confi

2016-01-22 14:09:00 2684

原创 层级调用

这个没什么好说的。方便抓包的时候快速定位问题。

2015-11-30 09:42:33 792

原创 Git的三级缓存

木有visio,手画。不要在意这些细节多个开发者一起干一个项目的某一个迭代版本。如上图,dever A和dever B一起干2.3版本。用git作为工程的版本控制工具。1级缓存就是在androidStudio里的修改快照,任何改动都会存在项目的工作空间,并没有存到git仓库里去。2级缓存就是本地的git仓管,此事也并没有推送到服务器origin上去,只是提交到了git仓库而已。

2015-11-30 09:38:10 595

原创 android开发表情输入

偌,首先声明,我并不是用图片在edittext之类的控件中显示,来充当表情。而是用手机系统自带的字符集,通过unicode编解码来做的。所以不需要在工程里放入几百张表情的小图片。因为Emoji表情本来就是字符集里的一个字符,和普通的中文英文是一个意思。只是在unicode扩展字符集里而已。1,down一份Emoji表情的Unicode编码的json或者xml数据(见附件下载)。当然了,

2015-11-19 11:51:19 2799

原创 gitlab和sourcetree配置ssh绕坑

这家伙很懒,什么也没留下

2015-11-18 01:51:27 29826 2

转载 如何理解Looper.prepare()

Looper用于封装了android线程中的消息循环,默认情况下一个线程是不存在消息循环(message loop)的,需要调用Looper.prepare()来给线程创建一个消息循环,调用Looper.loop()来使消息循环起作用,从消息队列里取消息,处理消息。注:写在Looper.loop()之后的代码不会被立即执行,当调用后mHandler.getLooper().quit()

2015-06-10 22:18:57 1875

转载 Fragment生命周期及其与activity的关系

Fragment的生命周期及其与activity的关系如上图所示,下面分别对每个回调进行中文注释,如下所示:    [html] view plaincopyonAttach:当fragment第一次添加到activity时调用,onCreate(bundle)将在这后面执行。    onCreate:fragment初次创建时调

2015-06-10 16:01:32 1053

转载 两个Fragment之间的跳转,和数据的传递

需求:从一个Fragment跳转到另一个Fragment,并且还要传递数据,就像Activity的跳转一样。 1、首先在第一个Fragment 里面拿到FragmentManger 和FragmentTransaction 代码如下。@Overridepublic void onCreate(Bundle savedInstanceState) { super.on

2015-05-24 10:51:15 18070 3

转载 Android高效加载大图、多图解决方案,有效避免程序OOM

高效加载大图片我们在编写Android程序的时候经常要用到许多图片,不同图片总是会有不同的形状、不同的大小,但在大多数情况下,这些图片都会大于我们程序所需要的大小。比如说系统图片库里展示的图片大都是用手机摄像头拍出来的,这些图片的分辨率会比我们手机屏幕的分辨率高得多。大家应该知道,我们编写的应用程序都是有一定内存限制的,程序占用了过高的内存就容易出现OOM(OutOfMemory)异常。我们可

2015-05-22 08:25:28 618

转载 Instrumentation

这两天准备研究Robotium的源码,不过由于Robotium是以Instrumentation为基础的,因此就先补习了一下Instrumentation的基础。    Instrumentation是Android自带一个单元测试框架,不过虽然这么说,其对于大部分应用开发人员来讲,最大的作用反而是用于功能或UI测试。     整个框架继承自JUnit框架,使用方法也类似,也是要继承T

2015-05-18 15:25:37 1677

转载 Monkeyrunner

一、什么是monkeyrunnermonkeyrunner工具提供了一个API,使用此API写出的程序可以在Android代码之外控制Android设备和模拟器。通过monkeyrunner,您可以写出一个Python程序去安装一个Android应用程序或测试包,运行它,向它发送模拟击键,截取它的用户界面图片,并将截图存储于工作站上。monkeyrunner工具的主要设计目的是用于测试功能/框

2015-05-18 14:44:53 553

转载 三次握手四次挥手

TCP/IP 状态机,如下图所示:在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接,如图1所示。 (SYN包表示标志位syn=1,ACK包表示标志位ack=1,SYN+ACK包表示标志位syn=1,ack=1) (1) 第一次握手:建立连接时,客户端A发送SYN包(SEQ_NUMBER=j)到服务器B,并进入SYN_SEND状态,

2015-05-14 19:58:57 719

转载 Android网络编程 --断点续传下载文件

想实现断点续传需要对http协议有一定的了解,并且对多线程机制比较熟悉,还有就是Android中异步更新UI的原理不能让程序出现卡顿的现象。在说http断点续传之前需要重点了解http协议头部的Range字段Range    用于请求头中,指定第一个字节的位置和最后一个字节的位置,一般格式:   Range:(unit=first byte pos)-[last byte

2015-05-11 10:33:19 1446

转载 Android性能优化

2015新年伊始,Google发布了关于Android性能优化典范的专题,一共16个短视频,每个3-5分钟,帮助开发者创建更快更优秀的Android App。课程专题不仅仅介绍了Android系统中有关性能问题的底层工作原理,同时也介绍了如何通过工具来找出性能问题以及提升性能的建议。主要从三个方面展开,Android的渲染机制,内存与GC,电量优化。下面是对这些问题和建议的总结梳理。0)R

2015-05-11 10:23:22 700

翻译 HTTPS是如何保证连接安全

HTTPS协议的工作原理是什么?”这是我在数天前工作项目中需要解决的问题。作为一名Web开发者,我当然知道 HTTPS 协议是保障用户敏感数据的好办法,但并不知道这种协议的内在工作机制。它怎么保护数据?有人监听线路的情况下,服务器与客户端之间如何建立安全的连接?安全证书又是什么,为什么还要花钱买呢? 一系列通道在深入讲解原理细节之前,让我们首先简单了解下HT

2015-05-09 14:27:45 752

翻译 TCP/IP体系结构深入理解

TCP/IP协议集把整个网络分成四层,包括网络接口层、网际层、传输层和应用层。 1.网络接口层 网络接口(Network Interface)和各种通信子网接口,屏蔽不同的物理网络细节; (1)ARP协议: 地址解析协议(Address Resolution Protocol):实现IP地址向物理地址的映射; (2)RARP协议: 反向地址解析协议(Reverse Addr

2015-05-09 11:39:45 656

转载 android无法下载adt-bundle.绕个弯

android官网:http://developer.android.com/sdk/index.htmladt-bundle下载地址:https://dl.google.com/android/adt/adt-bundle-windows-x86_64-20140702.zip  64位下载地址https://dl.google.com/a

2015-04-28 22:59:49 758

转载 支付宝快捷支付开发

转载请标明出处:http://blog.csdn.net/u014084504/article/details/42104035公司最近要在项目中加入购物车功能,提到购物车那就自然少不了支付宝的身影啦。下面我们就来探讨一下如何在Android快速集成支付宝SDK。支付宝的SDK目前已经更新到了2.0版本,这次的SDK相比上个版本的SDK来说,代码更佳简洁了,集成起来更加的方便快捷。

2015-04-26 09:56:28 3263 1

转载 Axure RP快速入门

Axure RP 能帮助网站需求设计者,快捷而简便的创建基于网站构架图的带注释页面示意图、操作流程图、以及交互设计,并可自动生成用于演示的网页文件和规格文件,以提供演示与开发。主要有以下几条功能:一.网站构架图(Site Structure) AxureRP可以快速绘制树状的网站构架图,而且可以让构架图中的每一个页面节点,直接连接到对应网页。二.示意图(Wireframe)

2015-04-23 14:50:52 1617

转载 张小龙谈app(重点部分)

当用户超过一亿之后,微信4.0推出“朋友圈”,建立手机上的熟人社交圈,开放API接口打造移动社交平台。微信4.2推出视频通话功能,彻底封闭手机通讯工具上的任何其它可能。从此,微信确立了移动互联网时代生活方式的产品地位,未来一系列新功能的演进,都将围绕这一核心价值进行。任何试图以节省电话费、短信费作为竞争卖点的产品,此时已经完全失去了竞争的可能,因为微信提供的已经不再是单纯的通讯服务,而是移动互联网

2013-02-25 16:48:45 947

转载 android4.0源码地址

git clone https://android.googlesource.com/device/common.git   git clone https://android.googlesource.com/device/htc/common.git   git clone https://android.googlesource.com/device/htc/dream-sapphi

2013-02-18 14:13:20 863

转载 windows下androidNDK环境配置

一:什么是NDK?      NDK 提供了一系列的工具,帮助开发者快速开发C(或C++)的动态库,并能自动将so 和java 应用一起打包成apk。这些工具对开发者的帮助是巨大的。     NDK 集成了交叉编译器,并提供了相应的mk 文件隔离CPU、平台、ABI 等差异,开发人员只需要简单修改mk 文件(指出“哪些文件需要编译”、“编译特性要求”等),就可以创建

2013-02-01 15:27:00 1050

转载 常用正则表达式

验证数字的正则表达式集 验证数字:^[0-9]*$验证n位的数字:^\d{n}$验证至少n位数字:^\d{n,}$验证m-n位的数字:^\d{m,n}$验证零和非零开头的数字:^(0|[1-9][0-9]*)$验证有两位小数的正实数:^[0-9]+(.[0-9]{2})?$验证有1-3位小数的正实数:^[0-9]+(.[0-9]{1,3})?$验证非零的正整数:^\+?[1-9][

2013-01-30 11:08:22 603

转载 http获取网络资源文件等并保存到本地sd或者磁盘

因为是转载的,就不废话了。第一种方法:package com.hg.threadPoolExecutorDemo;import java.io.ByteArrayOutputStream; import java.io.File; import java.io.FileOutputStream; import java.io.InputStream; import jav

2013-01-24 15:44:59 3951

原创 android webview 和 js交互

事出有因,那天我看到手厅的客户端里,在网页webview中点击网络设置后,跳转到了手机的网络设置界面,然后就搜了一下,原来是html中js与androidApp之间的交互。这么说的太费劲了,还是上截图吧,如下:手机没网的时候,会弹出上面这个网页,然后我们通过快捷按钮“网络设置”后,界面跳转到如下这个是通过js和webview共同完成的一个交互效果。首先,在js中如下:

2013-01-08 12:07:13 5784

转载 dos常用指令

31. regedit.exe----注册表48. msconfig.exe---系统配置实用程序  80. services.msc---本地服务设置 93. regedit.exe----注册表  110. osk------------打开屏幕键盘  1. gpedit.msc-----组策略  2. sndrec32-------录音机 3. N

2012-12-19 17:30:39 769

原创 MediaPlayer简单使用

啥也不说了,上代码package com.media;import java.io.IOException;import android.app.Activity;import android.media.MediaPlayer;import android.media.MediaPlayer.OnCompletionListener;import android.os.Bund

2012-12-12 15:06:21 4633

转载 android之谁动了我的内存

一、 Android的内存机制    Android的程序由Java语言编写,所以Android的内存管理与Java的内存管理相似。程序员通过new为对象分配内存,所有对象在java堆内分配空间;然而对象的释放是由垃圾回收器来完成的。C/C++中的内存机制是“谁污染,谁治理”,java的就比较人性化了,给我们请了一个专门的清洁工(GC)。    那么GC怎么能够确认某一个对象是不是已经被废

2012-12-03 14:52:01 1992

转载 android适配各种分辨率的问题

Android设备屏幕的尺寸是各式各样的,如小米是4英寸的,Xoom平板是10英寸;分辨率也千奇百怪,800×480,960×540等;Android版本的碎片化问题更是萦绕于心,不过在设计应用时可以分为两大块:3.0之前的版本和3.0之后的版本。这种情况会带来什么问题我们用三个假设来说明一下。1. 假设你的手上有两个4英寸的设备,设备A的分辨率是800×480,设备B的分辨率是1

2012-11-30 13:24:07 59314 3

android上的键盘表情开发

表情键盘,图片实现的,其实这个有点扯淡。不过表情翻页的代码大家直接拿去。我花了10积分搞来的。原作者,别勿喷

2015-11-19

emoji表情库

emoji表情库.这个文件主要是放在assets里,在MyApplication里加载出来,存放在内存中。在弹出表情键盘的时候,直接获取相应的unicode即可

2015-11-19

PhotoView 手势缩放 双击缩放 图片滑动 支持viewpager

不是源码你咬我。绝对是jar里的所有类,不会缺斤少两,不坑爹。

2015-08-19

webview与js的交互

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

2013-01-08

播放sd卡中的amr音频文件

用MediaPlayer播放sd卡中的amr音频文件

2012-12-12

自制简单浏览器

自制简单浏览器,可以输入,刷新,停止,后退。退出

2012-11-29

meta-data标签的使用

meta-data标签的使用在配置文件中配置参数,然后在Context中通过bundle取出参数

2012-11-27

自定义contentprovider

自定义contentprovider 在其它应用中访问该应用暴露的数据。

2012-11-22

android蓝牙开发

android蓝牙开发深度剖析已经原生态英文文档

2012-11-21

net.sf.fjep.fatjar_0.0.31.jar

net.sf.fjep.fatjar_0.0.31.jar 是eclipse jar包插件,提供方便的打包插件,将该jar放入eclipse的plugins目录下,重启eclipse即可,右击工程会出现一个build fat jar选择即可

2012-11-15

android list View多选

android list View多选

2012-10-23

gson api文档

gson api文档

2012-10-11

j2se1.5 api文档

j2se1.5 api文档。有点儿大。30M

2012-10-11

android api文档

android的API文档。不是中文的

2012-10-11

android之action

android中的action详细列表。。转自百度文库,共同学习

2012-09-26

tablehost与viewpager结合

tablehost和viewpager完美结合

2012-09-18

android viewpager android-support-v4.jar

android viewpager android-support-v4.jar

2012-09-18

android intent action

请大家在sd卡中丢一个song.mp3和一个test.apk,并安装一个demo,包名是com.haigang.financing,入口类是com.haigang.financing.act.Logo再运行代码。

2012-09-17

J2ME几个经典的项目

经典项目 如 贪吃蛇 俄罗斯方块 魔方 连连看

2012-09-13

android 推送 GCM

google在今年六月份发布了新的推送机制GCM,取代C2DM.

2012-09-12

java和android发送邮件

资源收集自网络,方便大家。里面有mail的3个jar,1个api,2个demo(java和android各一个)

2012-09-12

json数据的可视化查看、可视化编辑、Gson工具包

zip中包含json数据的可视化查看工具、可视化编辑工具、Gson工具jar包。。。使用工具前,花30秒阅读readme.txt

2012-08-20

json可视化编辑,可视化查看,gson包

zip中包含json数据的可视化查看工具、可视化编辑工具、Gson工具jar包。。。使用工具前,花30秒阅读readme.txt

2005-11-21

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

TA关注的人

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