自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (5)
  • 收藏
  • 关注

原创 Android富文本编辑器开发之旅

技术选型从确定要开发富文本编辑器到正式立项,差不多只有一周的时间,在这周内我结合公司已有的业务调研了市面上富文本编辑器的实现方式。主要有以下两种:Android原生实现,主要通过EditText,Span等相关技术。优点:交互效果比较理想,绕过了WebView的兼容性等问题。 缺点:不能与网页端文本编辑器实现互通,web端通过css等实现一些新样式,原生如果要兼容新样式,就需要发版本支持,不够灵

2016-11-12 19:31:36 3060

原创 在mac osx 下使用 Jenkins对Android 进行持续集成

在mac osx 下使用 Jenkins对Android 进行持续集成Jenkins环境搭建java下载jenkins依赖Java环境,所以在安装jenkins之前先安装JDK或者JRE。java下载地址下载之后,像普通软件一样安装。环境变量的配置安装Java以后,需要把java路径配制到系统环境变量。在mac下配置Java环境变量。下载并安装jenkins下载安装可以使用在[]Jenkins官网]

2016-06-04 21:54:44 4700

原创 Android压力测试利器---Monkey

应用背景压力测试可以保证应用在一定条件下能够正常运行。我们也可以在应用优化的时候,进行压力测试,在压力测试执行的时候,观察Android系统的内存等情况,从而进行相应的应用调优。Monkey是Android 自带的压力测试工具,接下来,我就描述一下Monkey的使用。Monkey介绍Monkey是Android SDK 自带的测试工具,它可以产生伪随机事件来模拟用户的行为。可以作为压力测试的工具。入

2016-04-14 11:58:48 1286 1

原创 用Android Studio对应用签名打包

抛弃ADT,投向Android Studio。由于Android Studio 采用的是Gradle来构建项目,所以在Eclipse中使用的一些习惯和方法都要改变。列如,如何导出签名的APK文件。本来翻译自AndroidUserGuide。步骤创建一个签名文件。签名文件是一个包含私钥的二进制文件。你必须保证你的签名文件放置在一个安全的地方。创建一个私钥。密钥代表一个应用的标识。在你项目的bui

2016-03-08 16:33:37 4042

原创 Memory Leak检测神器--LeakCanary初探

在之前的文章Android内存泄露的几种情形中提到过在开发中常见的内存泄露问题,但是过于草率。由于刚开年,工作还没正式展开,就看了一下Github开源大户Square的LeakCanary,并用公司项目的测试环境来练手,试图找出项目中存在的内存泄露。与上一篇不同,这一篇我会先说一下Java的内存区域以及垃圾回收机制,然后再讲LeakCanary的应用,并且会用一个在项目中遇到的真实案例来结尾。Jav

2016-02-17 15:01:31 4726 1

原创 SimpleNews- Android MVP模式学习

MVC模式与MVP模式MVC模式是上世纪开始风靡的一种软件设计模式。尤其适用于Web开发。该模式将一个软件系统分成三个部分:控制层(Controller),显示层(View),模型层(Model)。每个层次各司其职,这样将原来的一个系统代码有机分成几个部分,便于出错控制和团队协作开发。总结一点就是:解决了原有系统的高度耦合。 MVP模式也是为了解耦和。有过Android开发经验的同学都知道,我们利

2016-02-02 21:10:00 1415 1

原创 利用Ant在mac osx下实现多渠道打包 + 混淆

这篇文章是上一篇mac下多渠道打包的实现的续集,在上一篇的基础上加上混淆功能。混淆说到混淆,让我想起前段时间很火的蜻蜓FM造假事件,有人通过反编译蜻蜓FM,发现其源代码基本没有做过混淆,才会让人找到像“普罗米修斯”这样神一样的代码。 同上一篇文章一样,混淆也是一个我们值得深入的学习点。在自动打包学习学习过程中,我也搜集到了一些很好的学习资料:proguard官方学习资料。前辈总结的混淆的用法

2015-12-13 17:38:22 1333

原创 使用Ant在mac os下实现多渠道打包

背景于还在使用Eclipse做为开发工具的同学而言: 由于各种原因,还有部分公司使用Eclipse作为Android开发工具,版本要上线的时候,要上传渠道包到国内主流应用平台,如:应用宝,安智市场,百度的三个市场,360,华为等等,但是Eclipse不提供多渠道打包的工具。如果重复使用Eclipse手动打包,更改AndroidManifest中的UmengChannel,再签名导出,不仅降低了线率

2015-12-12 13:52:56 2236

原创 Volley全解析(一):创建一个请求队列

在使用Volley进行网络请求,我们通常做法是:RequestQueue requestQueue=Volley.newRequestQueue(context);其实,在Volley类里面,有三个 重载的newRequestQueue方法。newRequestQueue(Context context, HttpStack stack)newRequestQueueInDisk(Conte

2015-12-09 17:59:19 1240

原创 安卓自定义控件初探---仿web验证码的实现

自定义控件对于安卓进阶来说是一门必不可多少的课程,作为菜鸟的我,也开始学习安卓自定义控件,搞了一上午,勉强写出来了一个demo,但是还是很有收获的。自定义控件给我的感觉就是:这些知识点都是成系统的,缺了一小块知识,就会很迷惑。我将我在探索自定义控件中遇到的一些想法和收获记录下来,希望能和大家切磋一下,共同进步。下面就开始。自定义控件必备的基础知识:自定义控件通常继承View类或者ViewG

2015-10-14 14:21:14 1196

原创 JavaWeb(四)-----用Java程序操作XML①

XML的诞生原本是用来对数据进行更好更快的存储。XML趋性开始用于航空工业,到后来慢慢进行简化,形成了我们现在常用的形式,由于XML能够很好的表现数据的层次结构(在java中,一般集合也就能表现出一种平面结构),在以前很多人都认为xml会成为一种卓越的语言,甚至提到Java等编程语言。后来证明:XML不仅没有取代java,反而成为java很好的帮手。闲话不扯了。进入正题。。。XML是用来保存数

2014-03-03 13:48:36 1216

原创 JavaWeb(三)------servlet基础

学习JavaWeb,servlet是基础也是重点。框架都是在这些基础之上建立起来的。废话不多说,来看servlet的基础知识。servlet的配置写好的servlet需要在web.xml文件中进行配置才能被外界访问到。所以学习配置servlet是重点。不能仅仅依靠IDE。在web.xml中配置servlet需要两个标签:和标签。标签接收和子标签,分别用于说明servlet的名字和该

2014-02-26 20:22:02 1016

原创 JavaWeb-----JSP②

JSP脚本中的9个对象JSP脚本中含有9个对象,这9个对象都是servlet API接口的实例,这九个对象在JSP中的_jspService()方法中被初始化。因此,在jsp中可以直接拿来用。JSP的9个对象只能在脚本和输出表达式中使用,在其他的地方使用就会导致找不到这些对象。JSP和servlet的四个域对象:JSP和servlet之间通常不会相互的调用,这就会导致他们之间的数据通信

2014-02-26 13:50:07 793

原创 JavaWeb(一)-----JSP基础知识①

JSP的声明:①JSP声明用来声明JSP中的变量和方法。②声明语法:③声明的变量对应servlet的成员变量,声明的方法对应servlet的成员方法。虽然是成员方法但是不能使用abstract修饰符,因为abstract修饰符会使servlet无法初始化。JSP的输出表达式:输出表达式语法:,输出表达式与out的write方法效果一致。JSP脚本:①JSP脚本一

2014-02-25 21:11:08 901

原创 Java基础(十七)-----Object探秘

所有类的超类①Object类是所有类的最终祖先,Java中的每个类都由Object类继承而来,但在定义类的时候,不需要显式说明该类继承自Object。所有的对象都可以写成:  Object o = new aClass();。②除了基本数据类型,Java中所有的都是对象,包括我们常见的一个方法,一个变量,常量,还有参数都可以表示成一个对象。equals方法①Object类中的e

2014-02-23 23:06:56 963

原创 java基础(十六)-----GUI基础②

AWT常用组件1,按钮:Button2,用户绘图的桌布:Canvas3,复(单)选框组件:Checkbox4,CheckboxGrooup:用于将多个Checkbox组件组合在一起,一组Checkbox只有一个可以被选中。5,Choice:下拉式选择框组件6,Frame,窗口7,Label:标签8,List:列表框组件,可以添加多条项目。9,Panel,容器

2014-02-19 15:08:22 1113

原创 Java基础(十五)-----GUI基础①

java.awt包的结构1,所有容器组件的父类都可追溯至Component或者MenuComponent。Component是所有的容器的父类,包括Button,TextField,Container.MenuComponent则代表了图像界面的菜单组件,MenuBar,MenuItem,Menu.2,Container是Component的子类,主要用来盛装其他的GUI组件。

2014-02-18 23:54:10 1338 1

原创 Java基础(十四)-----JDBC(三)[JDBC高级]

可滚动的结果集和可更新的结果集使用ResultSet的next方法可以遍历整个结果集,JDBC也提供了对结果集的一些处理,如设置结果集可滚动和可更新。为了从查询中获得可滚动的结果集,必须使用以下方法获得不同的Statement对象Statement stmt = conn.createStatement(type,concurrency);或者PreparedStament stmt=

2014-02-03 16:27:07 1237 7

原创 Java基础(十三)-----JDBC(二)

JDBC中的CRUD与SQL的关系     JDBC对数据库的增删改查是JDBC技术的基础,是以后学习 事务,批处理,可更新结果等技术的奠基石。使用JDBC与数据库进行连接的根本目的就是操作数据,然而对数据的操作就是增,删,改,查,简称“CRUD”。对数据库的增删改查的基础是SQL技术,利用java程序将sql语句送至数据库,让数据库管理系统对语句进行解析,然后返回相应的结果。数据库的结构

2014-01-25 17:21:16 1233 1

原创 Java基础(十二)-----JDBC(一)

初识JDBCJDBC是Java与数据库进行连接的一套API。通过这些API,开发者可以和不同的数据库进行连接并且可以对数据库中的数据进行操作。应用程序如果想要持久化保存,一种理想的解决方案就是使用数据库进行保存数据。这就使得连接数据库变得十分重要。JDBC正是为了实现这一目标而诞生的。Sun公司为了让开发者可以连接到不同的数据库,只为API提供了接口,由数据库提供商或者其他人提供数据库驱动

2014-01-22 15:34:18 1450 3

原创 Java基础(十一)-----Java的反射机制

Java面向对象无处不在       众所周知,Java是纯粹的面向对象程序设计语言,并且这种思想深入到Java的各个方面。“一切皆为对象”,如:每个类的字节码文件用Class类来代表,所有字段用Field类表示,方法则用Method方法表示。既然是面向对象思想,那么对于这些类,都提供了一些对象的操作的方法。这也是理解反射技术必须所必需的。反射技术的应用背景反射技术的应用背景:对于已经

2014-01-21 23:26:15 1303 3

原创 Java基础(十)-----Java中的IO(二)

Java中IO流除了基本的四大体系的流以外,还提供了丰富的流类供我们使用。有对数组进行操作的流对象,对字符串操作的流对象,对于基本数据类型操作的流对象等等。对于这些流对象,有的用的不多,但是还是得必须掌握的知识点。一,转换流Java的四大流体系可以按照操作对象分为:字节流和字符流。由于我们对字符的操作更加方便,在Java里面提供了将字节流转换成字符流的转换流。但是没有将字符转换成字节的流。

2014-01-11 15:48:42 1179 1

原创 Java基础之(九)-----Java中的IO流(一)【进阶必备】

Java中的IO包是java基础的核心包,掌握好IO包,对以后程序开发有很大影响。不管是桌面应用还是J2EE开发,都会频繁使用输入输出。自我感觉,输入输出就想人得呼吸一样正常,在第一遍学习java基础的时候,由于IO包中的类多而且杂,曾经学习起来感觉很吃力,特别是一个人想通过看书来解决这一章的时候要有耐心,还要有方法。这里客串一下学习java的方法。学习Java方法体会。网上很多人说jav

2014-01-06 14:34:33 1346 4

原创 java基础(八)-----java中的常量池技术(底层)

http://baike.baidu.com/link?url=8uhrTcfbIVjtMkHaZC_8ltAceGEI1kWD9CnQixYI2TG0ZuGaJx4eglGsIeJJnDC2TuZi40CU-3UIzSHScR_7I_

2013-12-26 13:08:08 1133

原创 java基础(七)------java集合框架

集合是java基础中比较重要的知识点。掌握好集合的知识对以后的程序开发很有用。由于本人知识有限,对于没有集合概念的人来说,可以从“1136”学起,也就是一张图,一个类(Collection),三个知识点和六个接口。java集合可以归纳为两类,这是根据集合框架的基础接口而言的。一类是以Collection接口的集合框架,一类是以Map接口的集合框架,根据我的理解,Collection是Map的基础,

2013-12-24 13:07:37 1130

原创 java基础(六)-----浅谈java中“==”和“equals”的区别

学习java已经差不多有一整年的时间了,暂时学到servlet,每次想继续学习新知识的时候,总是听到旁边的人说java基础如何如何重要,的确,万丈高楼平地起,只有经过时间和代码的积累,才会有一个相对的提升。学习java并不是你看了几本书,看了多少的视频,关键在于学习的基础上多总结。比如说,java中“eqals”与“==”的异同。我反正在这个问题上面犯晕过。截止现在想写关于“equals”与“==

2013-12-23 22:34:32 1248

原创 java基础(五)-----java的异常

java异常都继承Throwable类,其子类可以分为两个部分,一:Error,二,Exception。 Error属于系统异常,程序员无法控制,我们可以不用去理会。Exception异常是可以被我们处理的异常,Exception类又可以分为RuntimeException和Exception的直接子类。对于Exception的直接子类,程序必须进行处理,或者抛出,或者捕获处理。对于Run

2013-12-23 20:41:51 804

原创 java基础(四)-----单例设计模式(一)

先说一下设计模式,设计模式是对问题行之有效的解决方案。是一种思想,适用于所有几乎所有的计算机语言。来自建筑学。单例模式是要求内存中只能创建唯一的类的对象,接下来,我将从单例模式的动机,要求,实现三个方面进行说明。动机动机,这个词是看到网上的,比较简洁,拿来一用,我没有这么高的归纳能力,说白了,动机就是单例模式索要解决的问题。这个问题就是:要保证内存中只有唯一的一个实例,例如,多个类公用

2013-12-15 21:46:27 995

原创 java基础(三)-----java编程中数据存储问题

今天学习学习了一点关于java编程数据在内存中的存放问题,现在写在下面,既可以加深自己对于java的理解,也方便日后复习。注意:这里不同于《java编程思想里面》内存区域划分为5个部分,分为:一,寄存器寄存器在cpu内部,与cpu的交往很“亲密”,但是我们java程序员不能操控它。通常寄存器的数量比较少,存储一些重要的并且速度要求高的数据。二,本地方法区java程序运行的时候要

2013-12-13 21:34:15 1061

原创 java基础(二)------学习system类的几点收获(二)

system类的几个方法中,有很大一部分是对外部定义的属性和环境变量的访问和删除,也有arraycopy这实用的方法。①getenv()方法,这是一个重载的方法,参数可以为空或者是String类型。前者返回Map集合。后者根据String返回参数值。代码如下:import java.util.Map;public class Demo1 { /** * @para

2013-12-03 21:39:51 937

原创 java基础(一)-----学习system类的几点收获(一)

对于每天使用的System.out.println();我们是否想过system代表什么,后来一直想看一下,今天想起来了,就查看了一下javaAPI,满足了我的好奇心。相对于String类来说,System类的字段和方法算是比较少的了,现在对我所学的做一个小总结,也是在再学习的阶段吧 一:首先是关于system类的三个字段---in,out,err。in和out都可以重定向到其他文件,er

2013-12-02 23:12:58 1238

原创 写五子棋游戏有感

这两天跟着老师写五子棋游戏,老师只是写了一个大致的框架,但是算法海没有实现,自己写。通过写程序发现,算法对于我还是一个比较困难的,相对于javaweb的处理事务的逻辑来说,这个考虑的更多,也就更加锻炼人,所以,如果想要以后能有一个比较深远的发展,我想这方面必须得学好。这个月,就在周末搞一下servlet吧,还要把英语四级好好准备一下吧 ,,,,四级过了,一切都好说。好了 菜鸟就写到这里

2013-11-22 23:25:26 1311

原创 Android基础学习开篇

在经过痛苦的挣扎(对有些基础不了解,不熟悉)后,我决定把Android 官方文档再重新学习一遍。大致路线:Training —–>API Guide(用户指南)—–>Sample(官方示例)具体过程在学习的过程中,记载学习笔记,并记录至CSDN博客。申请 “Android 基础巩固”指南。用时根据自己的情况,初步定为两个月。

2016-08-12 11:35:51 701 1

原创 为什么图片加载框架要再封装一层?

最好把图片加载框架封装一层,有可能在未来的某一个时候,现在的框架满足不了功能,需要另外的框架。封装以后,要换框架的话 ,直接换被封装的那个库,顶层代码不用更改。

2016-05-18 14:15:55 781

原创 Android 读书笔记---Intent 和 IntentFilter

作为安卓开发者,最好的最原始的资料还是来自谷歌,所以谷歌官网会是我以后首要的光顾地点。没事点点这里,看看那里总会有收获。但是泛泛的浏览,会成为过眼烟云,所以我选择在CSDN博客做笔记。IntentIntent有两种类型---显式Intent和 隐式Intent。显式Intent        显式Intent经常作用于本应用中。显式Intent需要制定要启动的界面或者服务的

2015-10-27 19:28:55 745

仿IOS搜索栏---SearchLayout

将EditText,ImageView组合,做成一个仿IOS的搜索栏,当然这是一个demo,是一个可重用的组件,如果要使用到项目里面,需要修改一下

2015-10-16

Listview 滑动 贴合效果

实现了在ListView的滑动过程中需要某一项贴合在屏幕顶端的效果,具有一定的实用性,并其可以更深层次扩展为其他效果

2015-10-15

自定义控件--仿web验证码

自定义控件,对于很多自定义控件小白来说这是一个很好的开场白,包含了自定义属性等一些基础知识

2015-10-14

仿wiindow的图片浏览器

这是一个仿window的图片浏览器,综合了java的单例模式,集合,IO,Swing等知识,比较适合初学者学习

2014-02-10

Java控制台学生信息管理系统(JDBC版)

使用mvc三层架构实现的控制台版学生信息管理系统,可以作为学习GUI可视化软件的跳板

2014-01-27

空空如也

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

TA关注的人

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