自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(79)
  • 资源 (1)
  • 收藏
  • 关注

转载 文章标题

这是Singleton pattern. 但是现在已经不建议这样写了。首先这没有被lazy initialization,在程序启动时(class Smarty被load)就会创建你的static instance,拖慢启动速度。要解决lazy initialization, 就得这么写: public class Smarty { private static Smarty insta

2015-05-02 16:07:50 390

原创 文章标题

写了个比较简单的python程序,尝试了os模块中几个常用的函数,还有个统计txt文档中单词数目的功能# -*- coding: utf-8 -*-__author__ = 'Administrator'import os,repath = u'F:/编程书籍/书/Python/python-master/agmcs/0006/test/'path2 = u'F:/编程书籍/书/Python

2015-04-16 22:28:02 401

原创 Python中的OS模块

写了个比较简单的python程序,尝试了os模块中几个常用的函数,还有个统计txt文档中单词数目的功能# -*- coding: utf-8 -*-__author__ = 'Administrator'import os,repath = u'F:/编程书籍/书/Python/python-master/agmcs/0006/test/'path2 = u'F:/编程书籍/书/Pyt

2015-04-16 21:30:26 458

原创 Python读取文件

今天学习python,学到读取文件那章,书上是这么写的:file = open("E:\test.txt",'r')但是老是提示错误..后来在网上找到了正确的写法:open(r"E:\test.txt",'r+')open(r"E:\test.txt",'r')

2015-04-09 22:34:53 944

原创 重构笔记

1、少用Switch语句,考虑用多态来代替每个类都应该包含它们自己的测试代码,方便自己测试这个类。

2015-03-26 20:04:15 342 1

转载 java中的Timer类和线程问题

最近用java开发了一个应用,主要是使用java中的Timer类做定时操作网页的事情。程序的设计是每个用户可能会有至少8个Timer类,这样当用户数多时Timer的数量就呈直线上升了。按照java的官方文档说明,Timer类会自动启动一个新线程,而多个Timer类则会有开辟多个线程,同时Timer类的线程是非daemon(守护)线程,所以一旦启动除非明确cancel掉,是一直存在的。因此,我的这个

2014-09-10 16:14:08 1676

原创 插入排序

#include "myinclude.h"void InsertionSort(int [],int);void main(){ int test[6] = {2,3,1,6,9,8}; int i = 0; InsertionSort(test,6); for(;i < 6;i++){ printf("%d ",test[i]); }}/*插入排序*/void Inse

2014-08-07 20:43:03 327

原创 创建单链表

#include #include #define FALSE 0#define TRUE 1typedef struct NODE{ struct Node * link; int value;}Node;//头指针Node *root = NULL;//创建链表Node *createNode(){ int num = 5; int i = 0; Node *h

2014-08-07 19:39:29 389

转载 逐层打印二叉树节点数据

/************************************************************************//*/* example input: ABD###CE#F###/* bi-tree built:/*                 A/*                / \/*               B   C

2014-08-06 20:53:11 712

原创 josephus链表解决

p1 = createNode(5);p2 = p1;for(;i printf("%d ",p2->num);p2 = p2->next;}printf("\nthe result is %d ",makeChoice(5,2,p1));}PNode createNode(int n){int i = 0;PNode head,p,link;h

2014-08-06 15:56:29 479

转载 Java排序算法(十):桶式排序

Java排序算法(十):桶式排序桶式排序不再是一种基于比较的排序方法,它是一种比较巧妙的排序方式,但这种排序方式需要待排序的序列满足以下两个特征:待排序列所有的值处于一个可枚举的范围之类;待排序列所在的这个可枚举的范围不应该太大,否则排序开销太大。排序的具体步骤如下:(1)对于这个可枚举范围构建一个buckets数组,用于记录“落入”每个桶中元素的个数;

2014-07-29 21:18:46 379

转载 广播与多播的实现

广播与多播的实现1 IP地址分类        A 类网络地址有128 个(支持127)个网络,占有最左边的一个字节(8 位)。高位(0)表示识别这种地址的类型。        B 类地址使用左边两个8 位用来网络寻址。两个高位(10)用于识别这种地址的类型,其余的14 位用作网络地址,右边的两个字节(16 位)用作网络节点。        C 

2014-07-16 15:42:48 400

转载 C/C++中static关键字详解

静态变量作用范围在一个文件内,程序开始时分配空间,结束时释放空间,默认初始化为0,使用时可以改变其值。    静态变量或静态函数只有本文件内的代码才能访问它,它的名字在其它文件中不可见。用法1:函数内部声明的static变量,可作为对象间的一种通信机制    如果一局部变量被声明为static,那么将只有唯一的一个静态分配的对象,它被用于在该函数的所有调用中表示这个变量。这个对象将

2014-07-15 15:33:39 304

原创 c,c++,java中static关键字的比较

今天由于项目需要,需要开发java的程序,于是就开始学习java语言,在看别人代码学习的过程中,发现了static关键字,仔细看了下,发现还是和c,c++中有些不同的,现在把3者的比较做个记录。java中的staticjava中的static用来修饰类的成员函数,或者是成员变量,这样这些变量就成为了静态方法(类方法)和静态变量(类变量)比如有类A中定义了静态变量varsam

2014-07-15 15:28:15 571

原创 C vs Java基本数据类型

1.C语言的数据类型:(1)五种基本数据类型:字符型(char:占1个字节)、整型(int:占4个字节)、单精度实型(float:占4个字节)、双精度实型(double:占8个字节)和空类型(void:占0个字符)。(2)几种聚合类型:数组、指针、结构、共用体(联合)、位域和枚举。注:除void类型外,基本类型的前面可以有各种修饰符。修饰符用来改变基本类型的意义,以便更准确地适应各种情

2014-07-11 16:13:10 483

原创 getApplicationContext()空指针

public class InsertActivity extends Activity {private String TAG = "InsertAPK";// private Context context = getApplicationContext();@Overrideprotected void onCreate(Bundle savedInstanceState)

2014-06-25 09:52:05 3880 2

转载 Runtime.getRuntime().exec()

Runtime.getRuntime().exec()是一个很有用的函数,可以调用操作系统的shell指令。但是这个函数有一个问题,当它把传给它的控制台命令丢给shell执行后,它就立即返回了。 这个问题看起来不大,但是如果我们用shell指令复制一个A文件到B文件,然后在下一语句中对B文件进行操作,那么问题就来了。因为shell指令很可能还没有执行完(而exec( )函数

2014-06-23 15:08:07 969

原创 看雪上有人分享的一个注册机的代码分析

最近看到有人在看雪上fe

2014-06-03 21:01:02 691

原创 杂记

Xposed好Hool和native C的 hook有什么联系

2014-05-14 10:12:30 355

原创 App伪加密

一些App经常会出现反编译不了的情况,其中一种就是用的伪jia

2014-05-13 21:33:48 578

转载 Android当道,不加密的APP必死

摘要 dex风险太大了,很多人有转向了使用native code编写关键代码,觉得so不好破解的同时又能提高性能并不受内存的制约,什么ida什么elf之类的工具也无法从容的查看代码,所以so成了上上策。可是我觉得你的jni一旦被别人攻下,那么恭喜你的so,我直接拿来用!!爱加密目录[-]DEX指令改写,破解你的程序没商量dex2jar 你的dex被一览无

2014-05-11 22:37:04 651

原创 如何混合native办法在so库函数对应关系

如何混合native办法在so库函数对应关系?                   jni办法注册体式格式有两种,                          1、经由过程javah产生函数头,该种体式格式产生的办法具有固定的&#26684;式。该体式格式使逆向解析人员斗劲轻易获取java层native办法对应的本处所                            

2014-05-11 21:47:56 537

原创 软件能正常反编译,但不做任何改动也无法打包回的问题

你用apktool b回编译的时候会报错,看第一个错就可以了,不知道怎么插图~~第一个错是libpng error: Not a PNG fileERROR: Failure processing PNG image /home/mindmac/Repackage/CqmamsMobile1.1.6/res/drawable-hdpi/station.png其实就是res/draw

2014-05-09 17:24:42 1566

转载 .9.png

大家好,这教程本来打算上次发M9的皮肤的时候就发的。后来在反编译的时候出了问题,不得不搁浅了。胎死腹中啊。这次重新找了一个工具,终于解决了9.png的图片的问题。  说说本人的近况: 手机终于拿回来了。苍天啊„„内牛满面当中。 最近新学到了许多东西,美化又有了新进展„„  介绍一下这次教程的情况: 以前的那

2014-05-09 17:19:16 459

转载 ARM

小弟近来开始学习原生逆向,并对其中一些基础知识做下总结(大神勿喷,出错请指正)...Android的原生程序运行于Linux内核上,并且处理器基于ARM,因此对于NDK的逆向,一些设计汇编知识的安全技术(注入,HOOK,劫持)等就需要了解有关知识。因此有必要学习一些与ARM相关的知识,下面主要介绍我们必须要了解的知识,具体指令等更加详细的知识参考相关文档,总结目录如下:寄存器比

2014-05-08 10:15:54 435

转载 Android 的提权 (root) 原理是什么?修改

真实姓名、TELLO913、温赫 等人赞同Android的内核就是Linux,所以Android获取root其实和Linux获取root权限是一回事儿。你想在Linux下获取root权限的时候就是执行sudo或者su,接下来系统会提示你输入root用户的密码,密码正确就获得root权限了。Android本身就不想让你获得Root权限,大部分手机出厂的时候根本就没有su这个程序。所以

2014-05-07 22:19:12 2080

转载 Android Native So加壳技术

这是13年12月份做的一个项目,难度相对较大,花了一个月的时间,不断试错,最后终于在元旦前晚完成,整理一下写出来,部分细节出于公司技术保护所以没有细说。目前市面上针对Apk的保护主要是基于Dex,公开的有DexGuard、梆梆、爱加密、ApkProtect等,私底下相信很多涉及到技术保密的App开发商都在做自己的保护策略。而针对so的保护就相对滞后了一些,这里有so在app中扮演的

2014-05-06 21:22:03 1180

转载 对于Android NDK编译器ARM和Thumb模式的理解及Toolchain的切换clang编译器

以前在做Symbian的时候,曾经研究过ARM CPU的指令集问题,ARM处理器支持两套指令集,即ARM和Thumb。ARM为32位指令集而Thumb为16位指令集,理论上32位可以提供更快的执行速度但会生成更大的二进制执行文件,而16位的Thumb则恰恰相反,省地但慢,这也正是体现出了ARM对于嵌入式设备的专业性。对于我这种牺牲一切换速度的理念来说,当时就留下了ARM就比Thumb快的印象,以致

2014-05-06 20:02:48 1053

原创 什么是MD5,什么是SHA-1

什么是MD5,什么是SHA-1,如何校验这些Hash。还有拿单个ISO文件的MD5,SHA-1讯问是不是原版的问题,在这里,对以上问题做一个终结解释!  让我们先来了解一些基本知识,了解hash。  Hash,一般翻译做“散列”,也有直接音译为"哈希"的,就是把任意长度的输入(又叫做预映射,pre-image),通过散列算法,变换成固定长度的输出,该输出就是散列值。这种转换是一种压

2014-05-06 16:30:36 735

原创 SHA家族

SHA家族的五个算法,分别是SHA-1、SHA-224、SHA-256、SHA-384,和SHA-512,由美国国家安全局(NSA)所设计,并由美国国家标准与技术研究院(NIST)发布;是美国的政府标准。后四者有时并称为SHA-2。SHA-1在许多安全协议中广为使用,包括TLS和SSL、PGP、SSH、S/MIME和IPsec,曾被视为是MD5(更早之前被广为使用的散列函数)的后继者。但SHA-1

2014-05-06 16:21:19 574

转载 LDMFD

ARM里面的堆栈是满递减(FULL DESCENDING)的。SP指向最后一个入栈的数据,SP的地址由高向低生长。对于LDM和STM指令来说,编号小的寄存器对应堆栈中的低地址。STMFD的寻址方式是事先递减方式(Decrease Before)。内存地址可以用下面的式子表示:start_address=SP-(Number of register *4)end_addr

2014-05-02 13:26:37 1127

原创 JNI小结

最近在研究JNI,以前也用过,但是都是非常的简单,只是仅仅的讲数据chuan

2014-05-01 22:00:41 342

转载 使用try Catch小结

什么时候用try Catch在你觉得容易出错的地方,一般大家会给整个大的程序try Catch一下,比如某个大的工作线程事实上对性能影响不大,因为try Catch是为了防止不可预见的异常,不至于程序崩溃,所以不是经常中断,然后组织throw exception这样的大动作。任何异常都用Try Catch吗很多异常是可预见的,比如参数错误,比如事件有无订阅等等,最好

2014-04-21 23:08:00 311

转载 使用try Catch小结

什么时候用try Catch在你觉得容易出错的地方,一般大家会给整个大的程序try Catch一下,比如某个大的工作线程事实上对性能影响不大,因为try Catch是为了防止不可预见的异常,不至于程序崩溃,所以不是经常中断,然后组织throw exception这样的大动作。任何异常都用Try Catch吗很多异常是可预见的,比如参数错误,比如事件有无订阅等等,最好

2014-04-21 22:59:32 283

转载 JAVA异常

你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗? 1 OutputStreamWriter out = ... 2 java.sql.Connection conn = ... 3 try { // ⑸ 4  Statement stat = conn.createState

2014-04-21 22:57:00 318

转载 JAVA异常

六种异常处理的陋习你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗? 1 OutputStreamWriter out = ... 2 java.sql.Connection conn = ... 3 try { // ⑸ 4  Statement stat = con

2014-04-21 22:53:15 270

转载 一篇不错的讲解Java异常的文章(转载)----感觉很不错,读了以后很有启发

六种异常处理的陋习你觉得自己是一个Java专家吗?是否肯定自己已经全面掌握了Java的异常处理机制?在下面这段代码中,你能够迅速找出异常处理的六个问题吗? 1 OutputStreamWriter out = ... 2 java.sql.Connection conn = ... 3 try { // ⑸ 4  Statement stat = con

2014-04-21 22:49:50 240

原创 有了多态的存在,instanceof存在的价值在什么地方

public interface Base{ public void base();}class Child1 extends Base{  public void base(){}  //实现接口方法  public void a(){}   //两个子类,方法不同,也中是重写父类的方法}class Child2 extends Base{

2014-04-21 16:03:17 516

原创 Java反射机制

JAVA语言中的反射机制:    在Java 运行时 环境中,对于任意一个类,能否知道这个类有哪些属性和方法?    对于任意一个对象,能否调用他的方法?这些答案是肯定的,这种动态获取类的信息,以及动态调用类的方法的功能来源于JAVA的反射。从而使java具有动态语言的特性。  JAVA反射机制主要提供了以下功能:      1.在运行时判断任意一个对象所属的类     

2014-04-21 14:51:14 283

转载 控制反转(IOC)与依赖注入(DI)

IOC 和DI,这两个在Java中指的是控制反转和依赖注入;熟悉struts2 , spring的人对于这两个名词都很不陌生;最近在学习的过程中,又不断的碰到这两个词;而网络上,更多的是对依赖注入的方式进行了说明;而很少提到具体什么是IOC和DI;在此蛮说一下自己对这两个的理解;依赖注入、控制反转;提到这两个概念,必须首先了解什么是依赖;依赖:"依赖描述了两个模型元素之间的

2014-04-21 14:05:02 415

Android+SDK+2.0中获取联系人信息.docx

还是不错的 可以运行感兴趣的可以下载看看

2013-02-07

空空如也

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

TA关注的人

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