自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

ljtyzhr的专栏

左手编程,右手写诗,在代码的世界里遨游。

  • 博客(217)
  • 资源 (20)
  • 收藏
  • 关注

原创 常用的几种字符串处理方式

判断字符串是否为空/** * 判断字符串是否为空 * @param text * @return */public static boolean isEmpty(String text){ if (null == text || "".equals(text) || text.length() ==0 ){ return true; } return

2015-11-20 15:46:08 1060

原创 Android Studio模块化编程实践之aar

aar介绍我们都知道在java开发中,我们的library都是使用jar这种形式的,使用Eclipse开发的同学对这个应该会非常熟悉。J2EE中开发中的很多框架都是使用jar包的形式导入的,比如SSH等这样的开源框架等等。 在java世界里面,jar包中所包含的一般都是逻辑性的处理,不涉及界面上的一些开发,换句话说就是不包括资源文件。相对于J2EE开发而言,Android开发中有很多资源文件,比如

2015-11-18 16:49:09 3092

原创 Android自定义携带Cookie的POST请求

发送请求第一步当然是首先了解POST请求的整个流程是什么样的,我们简单列出步骤,如下:设置参数设置请求链接获得返回值一般来说,我们使用POST请求,大致如上的三个步骤。我们可以有如下的框架性的代码:/** * 发送请求 * @param context * @param baseUrl * @param params * @param handler * @return * @

2015-11-17 20:30:13 3518 1

转载 使用Volley请求,获取POST请求cookie值

根据字符串获取请求返回值当值的cookie值,话不多说,直接上代码,如下:public class JsonPostRequest extends Request { private HashMap mMap; private Response.Listener mListener; public String cookieFromResponse; priv

2015-11-07 15:59:33 1089

原创 Android NDK开发(二)——JNI访问和引用JAVA对象

引用 Java 对象基本类型(如整型、字符型等)在 Java 和平台相关代码之间直接进行复制。而 Java 对象由引用来传递。虚拟机必须跟踪传到平台相关代码中的对象,以使这些对象不会被垃圾收集器释放。反之,平台相关代码必须能用某种方式通知虚拟机它不再需要那些对象,同时,垃圾收集器必须能够移走被平台相关代码引用过的对象。全局和局部引用JNI 将平台相关代码使用的对象引用分成两类:局部引用和全局引用。局

2015-11-01 23:24:57 743

原创 WebView支持JS、Alert以及进度监控等

1、支持JS使用WebView支持JS,代码比较简单,直接可以在代码中设置一句话,如下:mWebView.getSettings().setJavaScriptEnabled(true);mWebView.getSettings().setDefaultTextEncodingName("utf-8") ;JS的支持主要是实现如下方法:public void addJavascriptInterf

2015-10-27 14:53:40 1288

原创 对Octopress更换个性化主题

1、准备兵马未动,粮草先行,万事都是以准备工作开始的。前面我们简单介绍了如何搭建博客、写作和发表博客以及做一些配置上的修改。 不过有没有人跟我有一样的感受:这个Octopress默认的主题简直看不下去了?好吧,这种东西还是不要说出来的好,萝卜白菜,各有所爱。如果是想和我一样来修改主题的,那么先告诉大家一个好地方咯,如下是一些第三方主题,我们可以从中选出自己满意的:https://github.co

2015-10-24 13:53:31 1327

原创 在Octopress中修改我们的博客配置

1、准备工作其实这里谈到的准备工作,十分简洁。我们的每一个命令,都是要进入到命令行(有时候也叫做终端)进行的。因为我们的博客使用了Octopress,所以我们需要在octopress目录下进行操作。所以,命令行如下:cd octopress2、_config.yml从名字我们就知道这个是一份配置文件,它到底有一些什么内容呢,抄一部分如下:url: http://yoursite.com #这里改为

2015-10-21 19:34:47 677

原创 如何使用Octopress写作和发布博客

写博客写博客,我们首先要建立一个文档,使用的命令如下: rake new_post["this is title"] 文章生成在目录下的source/_posts目录下,文章是markdown格式的,不熟悉该语法的同学可以去Google一下,这里不作太详细的解释。输入如上的命令之后,我们可以在octopress/source/_posts目录中找到我们生成的文件。该文件以时间和标题命名,一般格

2015-10-18 17:04:17 514

原创 使用Octopress在Github上搭建博客系统

1、homebrewruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"其间会有提示:Press RETURN to continue or any other key to abort所以按 return 键开始进行下载安装;下载成功的提示如下:==> Installati

2015-10-17 19:00:10 622

原创 Android NDK开发(一)——JNI中的基本语法与概念

JNI接口函数与指针平台相关代码是通过调用 JNI 函数来访问 Java 虚拟机功能的。JNI 函数可通过接口指针来获得。接口指针是指针的指针,它指向一个指针数组,而指针数组中的每个元素又指向一个接口函数。每个接口函数都处在数组的某个预定偏移量中。下图 说明了接口指针的组织结构: JNI 接口的组织类似于 C++ 虚拟函数表或 COM 接口。使用接口表而不使用硬性编入的函数表的好处是使 JNI 名

2015-10-15 19:29:34 1289

原创 Android常用辅助类(四)——屏幕、图片及其他

1、屏幕相关类import android.app.Activity;import android.content.Context;import android.graphics.Bitmap;import android.graphics.Rect;import android.util.DisplayMetrics;import android.view.View;import

2015-10-11 22:11:21 707

原创 Android常用辅助类(三)——存储相关

1、SD卡的操作import java.io.File;import android.os.Environment;import android.os.StatFs;//SD卡相关的辅助类public class SDCardUtils{ private SDCardUtils() { /* cannot be instantiated */ throw new Un

2015-10-11 15:36:56 555

原创 Android常用辅助类(二)——设备相关

1、分辨率分辨率在做应用适配的时候用到比较多,常用的几个方法如下,代码:import android.content.Context;import android.util.TypedValue;//常用单位转换的辅助类public class DensityUtils{ private DensityUtils() { /* cannot be instantiate

2015-10-08 21:17:03 486

原创 Anroid常用的辅助类(一)——网络相关

1、网络请求以下是一个网络请求的相关类,如下:import java.io.BufferedReader;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.i

2015-10-08 21:11:46 384

原创 Android常用组件——定制化的SwipeListView

1、背景介绍其实要实现的东西并不算太复杂,类似于QQ那样的ListView横向滑动展现删除控件而已。图示,如下:2、SwipeListView介绍一下,我在最开始实现这样的功能的时候,找到的是这样的一个开源控件,名字如标题,地址是:https://github.com/47deg/android-swipelistview大家可以直接在GitHub上去看,不过这个项

2015-09-28 19:19:09 1814

原创 Android常见问题——分辨率适配问题

1、基本的概念1)分辨率:屏幕上显示的像素个数,单位尺寸内像素点越多,显示的图像就越清楚。市场上主流分辨率有:480*800、 720*1280、 1080*1920(其他的早该淘汰了,忽略不计)2)屏幕密度:表示屏幕每英寸有多少个像素。240dpi(480*800) 、320dpi(720*1280)、480dpi(1080*1920)3)单位:px:像素(设计师都知道像

2015-09-27 14:59:36 670

原创 Android Studio导出的密钥签名市场认证安装包

1、背景介绍在Android平台发布应用程序之前,必须经过一个签名流程。现在您的密钥就是您的身份证明,您所要做的就是使用您的密钥,将我们提供给您的一款未经过签名的apk包签名后,发送给我们。2、签名说明jarsigner简单使用说明jarsigner -verbose -keystore ~/Workspace/mykeystore -signedjar ./release-sig

2015-09-21 21:00:37 1777

原创 Android Studio中的git配置中文件修改颜色

1、背景在AS中配置git之后,文件修改会让文件的颜色发生相应的变化,有时候电脑不知道抽风了还是怎么,可能会把某些配置文件给删除掉了,这个时候,要修改配置选项,步骤记录在这里。2、步骤不说话,默默看图就好:3、备注上面的看图说话即可,不行的话还有如下:详细的情况可以看这里http://www.anxia.com/jiaocheng/136

2015-09-21 16:50:58 5629

原创 Linux C语言程序设计(二十)——基于Linux C的简单web服务器

1、HTTP的GET请求        打开浏览器,输入服务器IP,例如 http://192.168.0.3 ,如果端口号不是80,例如是8000,则输入 http://192.168.0.3:8000 。这时浏览器向服务器发送的HTTP协议头如下:GET / HTTP/1.1Host: 192.168.0.3:8000User-Agent: Mozilla/5.0 (X11; U;

2015-09-19 15:39:35 4909

原创 Linux C语言程序设计(十九)——基于UDP的网络编程

1、UDP协议        UDP协议是英文User Datagram Protocol的缩写,即用户数据报协议。它是一种面向非连接的协议,面向非连接指的是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。至于对方是否可以接收到这些数据内容,UDP协议无法控制,因此UDP协议是一种不可靠的协议。UDP适用于一次只传送少量数据、对可靠性要求不高的应用和环境。由于没有建立连接的过程,

2015-09-13 16:31:38 1221

原创 Linux C语言程序设计(十八)——基于TCP的网络编程

1、基本流程下图是基于TCP协议的客户端/服务器程序的一般流程        服务器调用socket()、 bind()、 listen()完成初始化后,调用accept()阻塞等待,处于监听端口的状态,客户端调用socket()初始化后,调用connect()发出SYN段并阻塞等待服务器应答,服务器应答一个SYN-ACK段,客户端收到后从connect()返回,同时应答一个ACK

2015-09-12 23:40:20 1647

原创 Linux C语言程序设计(十七)——Socket编程的基础解析

1、socket概念socket这个词可以表示很多概念:1)在TCP/IP协议中, “IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程, “IP地址+端口号”就称为socket。2)在TCP协议中,建立连接的两个进程各自有一个socket来标识,那么这两个socket组成的socket pair就唯一标识一个连接。 socket本身有“插座”的意思,因此用来描述网络连接的一

2015-09-05 15:06:02 739

原创 Linux C语言程序设计(十六)——TCP/IP协议基本解析

1、TCP/IP简介1.1 协议简介TCP/IP网络协议栈分为应用层(Application)、传输层(Transport)、网络层(Network)和链路层(Link)四层。如下左边图示:        两台计算机通过TCP/IP协议通讯的过程如上图右所示。传输层及其以下的机制由内核提供,应用层由用户进程提供(后面将介绍如何使用socket API编 写应用程序),应用程序对

2015-09-04 13:54:32 5124

原创 Linux C语言程序设计(十五)——进程、线程与信号

1、进程1.1 基本概念每个进程在内核中都有一个进程控制块( PCB)来维护进程相关的信息, Linux内核的进程控制块是task_struct结构体。进程ID:统中每个进程有唯一的id,在C语言中用pid_t类型表示,其实就是一个非负整数。进程状态:有运行、挂起、停止、僵尸等状态。当前工作目录1.2 forkfork的作用是根据一个现有的进程复制出一个新进程,

2015-09-03 17:32:46 1824

原创 Linux C语言程序设计(十四)——文件系统与I/O

1、C标准I/O库函数先看看C标准I/O库函数是如何用系统调用实现的。fopen(3)调用open(2)打开指定的文件,返回一个文件描述符(就是一个int类型的编号),分配一个FILE结构体,其中包含该文件的描述符、 I/O缓冲区和当前读写位置等信息,返回这个FILE结构体的地址。fgetc(3)通过传入的FILE *参数找到该文件的描述符、 I/O缓冲区和当前读写位置,判断能

2015-08-30 22:27:07 1068

原创 Linux C语言程序设计(十三)——Linux上的系统与文件命令

1、系统命令在Linux系统的shell命令中,$符号表示当前用户是普通用户, #符号表示当前用户是超级管理员用户,一般为root这里只说明简单的系统命令,退出命令,可以使用如下:$ exit或者$ logout回车之后就会退出当前用户状态。2、文件和目录2.1 ls命令ls命令是最常用的操作,它表示罗列当前目录下的所有文件和子目录。它的格式为ls

2015-08-15 19:15:59 708 1

原创 Linux C语言程序设计(十二)——Shell编程的基础知识

1、创建脚本Shell脚本是将一系列的Linux命令放在一个文件中执行的实用程序。Shell脚本可以利用vi等文本编辑器来编写。Shell脚本的格式是固定的,如下:#!/bin/bash#注释命令...        第一行中的符号“#!”用来指定解释执行该脚本文件的Shell程序。如果脚本文件中缺少该行,在执行过程中就会报错。除了第一行只为,所有“#”开头的行都是注释。如果

2015-08-15 14:31:39 1026

原创 Linux C语言程序设计(十一)——Mac上编写与编译C文件

1、步骤介绍步骤:创建C文件、用Vim编写C程序、编译C程序文件、执行编译后生成的.out文件。1)$:touch Hello.c               //创建一个Hello.c文件(本目录下)2)$:vim Hello.c                 //用vim编辑Hello.c文件       i                                //

2015-08-10 21:45:38 2018

原创 Linux C语言程序设计(十)——makefile

1、Makefile的规则如果一条规则的目标属于以下情况之一,就称为需要更新:目标没有生成。某个条件需要更新。某个条件的修改时间比目标晚。在一条规则被执行之前,规则的条件可能处于以下三种状态之一:需要更新。能够找到以该条件为目标的规则,并且该规则中目标需要更新。不需要更新。能够找到以该条件为目标的规则,但是该规则中目标不需要更新;或者不能找到以该条件为目标的规则,并且该条件已

2015-08-04 19:29:40 668

原创 Linux C语言程序设计(九)——gdb调试

1、单步执行add_range函数从low加到high,在main函数中首先从1加到10,把结果保存下来,然后从1加到100,再把结果保存下来。#include int add_range(int low, int high){int i, sum;for (i = low; i <= high; i++)sum = sum + i;return sum;}int main

2015-07-28 15:12:09 497

原创 Linux C语言程序设计(八)——树的基本概念介绍

1 定义及相关术语1.1 树的定义树(Tree)是n(n≥0)个有限数据元素的集合。当n=0 时,称这棵树为空树。在一棵非树T 中:(1)有一个特殊的数据元素称为树的根结点,根结点没有前驱结点。(2)若n>1,除根结点之外的其余数据元素被分成m(m>0)个互不相交的集合T1,T2,…,Tm,其中每一个集合Ti(1≤i≤m)本身又是一棵树。树T1,T2,…,Tm 称为这个根结点的子树

2015-07-28 15:09:10 1134

原创 Linux C语言程序设计(七)——栈与队列

1、数据结构        数据结构( Data Structure) 是数据的组织方式。程序中用到的数据都不是孤立的,而是有相互联系的,根据访问数据的需求不同,同样的数据可以有多种不同的组织方式。以前学过的复合类型也可以看作数据的组织方式,把同一类型的数据组织成数组,或者把描述同一对象的各成员组织成结构体。数据的组织方式包含了存储方式和访问方式这两层意思,二者是紧密联系的。

2015-07-22 16:24:27 693

原创 Linux C语言程序设计(六)——查找与排序

1、算法的概念        算法( Algorithm) 是将一组输入转化成一组输出的一系列计算步骤,其中每个步骤必须能在有限时间内完成。算法是用来解决一类计算问题的,注意是一类问题,而不是一个特定的问题。       这里我们可以回想之前提到的递归算法,递归就是算法,而具体求解的过程,不能称为算法,而是算法实现的过程。2、插入排序        插入排序算法类似于玩扑克

2015-07-14 19:19:25 633

原创 Linux C语言程序设计(五)——数组基本概念与解析

1、数组基本概念        和结构体类似,数组( Array) 也是一种复合数据类型,它由一系列相同类型的元素( Element) 组成。数组元素的存储空间是相邻的,数组中的元素可以是基本数据类型,也可以是组合数据类型,但是只有一种。定义和访问一个数组,如下:#include int main(void){ int count[4] = { 3, 2, }, i; for

2015-07-12 16:19:28 570

原创 Linux C语言程序设计(四)——枚举与结构体

1、结构体        结构体不同于我们之前了解到的基本数据类型,结构体数据类型是一种复合数据类型,它可以包括一些基本的数据类型。        复合数据类型一方面可以从整体上当作一个数据使用,另一方面也可以分别访问它的各组成单元,复合数据类型的这种两面性提供了一种数据抽象。如果学习过java这样的面向对象的语言,会对结构体这样的抽象数据结构了解得比较深刻。比如,如果我们在二维坐标系上有

2015-07-09 20:37:29 1269

原创 Linux C语言程序设计(三)——函数的理解与自定义

1、函数我们在上一篇文章介绍到,一个求解从1到100之内的素数的问题,当中提到一个概念为函数。在C语言中,我们称之为函数,但是在JAVA里面,我们称之为一个方法。2、函数介绍2.1 数学函数不做过多介绍,是一些方法的封装,在C语言中封装了一些基本的算法,比如求解正弦和余弦等函数。#include #include int main(void){ double p

2015-07-08 20:08:04 846

原创 Linux C语言程序设计(二)——分支与循环

1、程序执行程序的执行是有一定的流程的,如果中间没有其它情况发生,程序会一直从头执行到结束。在C语言的定义中,我们有这样的三种基本流程:分支,顺序,循环。可以说这三种流程,是整个程序的架构基石,一切其它变形的流程都是建立在这三种流程执行,如递归等。2、if语句除了从前到后顺序执行之外,有时候我们需要检查一个条件,然后根据检查的结果执行不同的后续代码,在C语言中可以用分支语句

2015-07-06 19:24:00 764

原创 Linux C语言程序设计(一)——常量、变量和表达式

1、Hello World好像每一次都要用Hello World开始一门语言的学习,好吧,给出一个例子,如下:#includeint main(){ printf("this is Hello World!");}2、常量常量( Constant) 是程序中最基本的元素,有字符常量( Character Constant) 、数字常量和枚举常量。枚举常量以后再介绍,现

2015-07-06 14:45:32 2126

原创 UML简单介绍(二十四)——基于UML的软件设计总结

1、什么是设计设计就是MDA,是受模型驱动的一个抽象的过程。在设计的时候,不要太过于具体,要学会抽象出他们之间共同的地方。2、设计的基本策略        设计有四个基本的策略,包括:复用,扩展,分治,优化。        复用和扩展是软件工程中提到非常对的概念了,这就不再过多的赘述。复用指的是,如果模块中间有一些模块功能是相同的,那么就要尽可能抽象出来,所以复用常常与

2015-07-01 21:42:08 1216 1

软件需求文档格式的标准写法

软件需求文档格式的标准写法

2015-06-30

IDA破解apk初试

IDA破解apk初试,对应我的博文,这里提供给大家分析测试使用。

2014-10-23

Smali指令中文手册

smali的中文手册,里面包含了所有的smail指令与说明文档,可以对照英文文档查看。默认一分,给点金币,谢谢啦。 英文文档地址:http://pallergabor.uw.hu/androidblog/dalvik_opcodes.html

2014-09-19

蓝桥杯系统中的算法题

这个是蓝桥杯官网上的题目,有些题目需要用户申请权限才能查看,额,偷偷放上来。对于要参加蓝桥杯竞赛的同学来说,很值得一看。

2014-09-17

smali语法高亮文件

这个资源要两分一点都不贵哦,大家下载了一定很划算的,可以在EditPlus中高亮显示smali文件的语法。

2014-09-17

jsoup解析jar包

这种资源不应该要分啊,jsoup也可以在官网下载的,我上传只是自己下载方便。

2014-09-11

蓝桥杯java历年真题

本来想要十分的,但是那样可能大家就不想下载了,也觉得太坑了,暴强整理版啊,绝对的给力.

2013-12-23

考研辅导之数据结构

考研的一些资料,有一些历年的真题包含在里面,希望对考研的学生有帮助.

2013-12-23

考研辅导之C语言

考研时候整理的资料,非常实在,希望对考计算机专业的同学来说有帮助.

2013-12-23

Android学习手册

Android学习手册,封装成了APK文件,下载下来,安装在手机里面就可以了,一共分为八个部分,资源很不错的,豆豆很值得.愿你喜欢,好评哦亲.

2013-11-24

手机守护神源码

手机守护神源码,王家林主编教材随书源码。不过只有这个完整项目额,没有其他资料。

2013-11-23

Oracle性能优化电子书

Oracle性能优化的电子书,从各个方面整理而来的,对你肯定有帮助。

2013-11-23

安卓中文API

安卓中文API,详细请看里面,有比较详细的说明。

2013-11-23

myeclipse的密码生成器

myeclipse的密码生成器,免得总是卸载重装。

2013-11-22

蓝桥杯算法竞赛试题.

蓝桥杯算法竞赛试题,不多说,对你竞赛一定会有好处的,这是一些训练逻辑思维的算法试题,希望对你有所帮助!

2013-11-22

Oracle10g教程

非常详细的Oracle教程,一定会对你有所帮助的。

2013-11-22

共创在线考试系统(JSP+SERVLET)

JSP+SERVLET 做的 共创在线考试系统!

2013-08-30

LL1语法分析源程序

LL1语法分析源程序,编译原理课程设计。

2013-05-26

java学生管理系统

这是一个用java写就的学生管理系统。项目虽小,但是很有学习的必要。希望对你有所帮助。

2012-05-19

java课程设计耿祥义版源代码.rar

java的一份很好的学习资料,他出版的课程设计,非常适合基础学完之后的学习!

2012-05-15

空空如也

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

TA关注的人

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