自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 资源 (7)
  • 收藏
  • 关注

原创 anr

anr  trace.txtpsdf 2058  grep autoLink WP8800/ -rns 2059  vim WP8800/frameworks/base/services/java/com/android/server/WifiService.java:441 +441手机内存满时 ,browser crashbrowser.ja

2012-03-31 16:28:30 452

转载 JSP页面缓存技术--浏览器缓存(转)

一、概述     缓存的思想可以应用在软件分层的各个层面。它是一种内部机制,对外界而言,是不可感知的。     数据库本身有缓存,持久层也可以缓存。(比如:hibernate,还分1级和2级缓存)     业务层也可以有缓存(但一般来说,这是一个过程域,不会设缓存)。     表现层/数据服务层(传统web的表现层)也可以设置缓存(jsp cache 就是这

2012-03-28 12:29:25 545

转载 ZLIB:gzopen与compress2函数压缩的内容有什么不同?

zlib库中,可以用compress2()函数对一块内存区域进行压缩,也可以使用gzopen()和gzwrite()两个函数将内存中的信息压缩后写入gz文件。    测试中发现,如果把compress2()函数压缩后的内容直接写成文件,这个文件无法被gzip等程序打开,可见内存压缩后的内容并不是一个标准的gz文件。    compress2()函数与gzopen()函数所产生的压缩内容到底

2012-03-28 10:30:24 3917 3

转载 Ubuntu Linux 查看、编辑、比较二进制文件

2011年06月30日 星期四 9:55想根据gdb的反汇编来修改一个内核模块的汇编,没发现上面方便的工具,就直接用二进制编辑器来改了一下,还好是个简单的整型参数,该起来还比较简单。下面是用到的命令。 1.  这两个命令都可以以十六进制打印输出 二进制文件内容。可以指定偏移和打印格式等hexdump  xxd2。   Vim 可以用来查看和编辑二进制文件vim -b ege

2012-03-28 10:12:34 1272 1

原创 安全网站

1 https://   about://    data://       安全网站  2,3 ,4 Tab,java      framework   webkit2 DownloadListener-------webview---msubview            下载监听接口          mSubView.setDownloadListener(new Do

2012-03-26 14:30:27 836

原创 ActionBar actionMode

DownloadProvider-----DownloadList         多选----分享 , 删除private ListView mSizeOrderedListView; mSizeOrderedListView.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE_MODAL); ModeCallback modeCall

2012-03-26 10:01:43 3525

转载 Android 获取系统或SDCARD剩余空间信息

android.os下的StatFs类主要用来获取文件系统的状态,能够获取sd卡的大小和剩余空间,获取系统内部空间也就是/system的大小和剩余空间等等。      看下读取sd卡的:Java代码void readSDCard() {         String state = Environment.getExternalStorageState();         i

2012-03-17 16:05:13 4923

转载 数据存储【Shared Preferences

任何一个应用程序都要依赖数据存储,而且这种存储必须不丢失数据,并且有效、简便使用和更新这些数据。在 Android 操作系统中一共提供了4种数据存储方式,但是由于存储的这些数据都是私有的,所以如果需要共享其他应用程序的数据,就需要我们上篇文章说到的 Content Provider。4种数据存储方式分别为如下:1、Shared Preferences。用来存储 “键-值”格式的数据。2

2012-03-15 17:35:28 737

转载 通过JNI实现Java和C++的相互调用

一、从Java调用C++的DLL  1.    创建Java文件  创建名为TestNative的Java文件,注意包名。  package org.druze.test;  publicclass TestNative {  publicnativevoid sayHello();  publicvoid sayHello2(){  System.out.printl

2012-03-13 15:30:46 442

转载 一条进程的栈区、堆区、数据区和代码区在内存中的映射

l          栈区:主要用来存放局部变量, 传递参数, 存放函数的返回地址。.esp 始终指向栈顶, 栈中的数据越多, esp的值越小。l          堆区:用于存放动态分配的对象, 当你使用 malloc和new 等进行分配时,所得到的空间就在堆中。动态分配得到的内存区域附带有分配信息, 所以你能够free和delete它们。l          数据区:全局,静态

2012-03-13 15:02:44 1252

转载 java正则表达式详解

如果你曾经用过Perl或任何其他内建正则表达式支持的语言,你一定知道用正则表达式处理文本和匹配模式是多么简单。如果你不熟悉这个术语,那      么                             “正则表达式”(Regular Expression)就是一个字符构成的串,它定义了一个用来搜索匹配字符串的模式。许多语言,包括Perl、PHP、Python、JavaScrip

2012-03-13 13:50:28 385

转载 java层aidl细节_ipc & ibinder-binder & aidl

ibinder和binderservice端有一个ibinder当client和service处于同一个进程中时,client可以找到service的ibinder,并直接拿它来用当client和service不在同一个进程中时,client通过bindservice得到一个ibinder,通过ibinder.transact(int code, Parcel data, Parcel

2012-03-13 11:47:58 531

转载 TreeMap、HashMap、HashTable的键是否能为""和Null的问题

TreeMap键不能为null,HashMap键可以为null。实例代码:  Map treeMap_1 = new TreeMap();  treeMap_1.put(null, "treeMap_1成功了!");  Map hashMap_1 = new HashMap();  hashMap_1.put(null, new String("hashMap_1,ok....

2012-03-13 10:56:10 1083

转载 parcel 容器--IBinder parcelable--实现类--writeto parcel 传递数据 intent.put(name, parcelable)

Parcel 在英文中有两个意思,其一是名词,为包裹,小包的意思; 其二为动词,意为打包,扎包。邮寄快递中的包裹也用的是这个词。Android采用这个词来表示封装消息数据。这个是通过IBinder通信的消息的载体。需要明确的是Parcel用来存放数据的是内存(RAM),而不是永久性介质(Nand等)。Parcelable,定义了将数据写入Parcel,和从Parcel中读出的接口。一个实体(用

2012-03-13 10:44:00 1114

转载 找不到

packages/apps目录下的项目,需要加些功能上去。在添加一些资源文件后,出现莫名的错误:xxx ...找不到文件。  造成这种错误的原因主要有四个:  1.代码;  2.没有资源文件;  3.没有添加R文件;  4.xml未编译    前面三个比较可以检查出来,但是后面一个确实很难检查的出,只有你确定前三个原因排除之后,你就可以锁定第四个,而且每次都成功。想要xml

2012-03-10 17:48:44 418

原创 Adapter的 cursor注入方式

1 通过定义adpter时的构造函数传入       CursorAdapter(Context context,Cursor c, boolean autoRequery);       CursorAdapter(Context context,Cursor c, int flags);2 调用cursorAdapter的changeCursor( cursor )方法

2012-03-10 09:47:35 617

转载 Android Loader

装载器从android3.0开始引进。它使得在activity或fragment中异步加载数据变得简单。装载器具有如下特性:它们对每个Activity和Fragment都有效。他们提供了异步加载数据的能力。它们监视数据源的一将一动并在内容改变时传送新的结果。当由于配置改变而被重新创建后,它们自动重连到上一个加载器的游标,所以不必重新查询数据。装载器API概述在使

2012-03-09 18:14:50 997

转载 Android平台的Action Bar

Action Bar为Android 3.0及更高版本开发人员提供了一个相对较新的导航部件,它取代了传统的应用程序标题栏,提供了更丰富的功能,允许你更快遍历屏幕和应用程序的功能,只需很少的点击,困惑也更少了。AD:Action Bar是什么?很长一段时间内,开发人员一直在为他们的Android应用程序设计功能标题栏,Android 3.0正式引入了Action Bar部件,

2012-03-08 11:40:48 765

转载 C++ Namespace 详解

命名空间的定义格式为:(取自C++标准文档)named-namespace-definition:       namespace identifier { namespace-body }unnamed-namespace-definition:       namespace { namespace-body }namespace-body:       declara

2012-03-08 09:36:57 343

转载 #ifndef、#def、#endif说明

你所遇到的这几个宏是为了进行条件编译。一般情况下,源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译,也就是对一部分内容指定编译的条件,这就是“条件编译”。有时,希望当满足某条件时对一组语句进行编译,而当条件不满足时则编译另一组语句。    条件编译命令最常见的形式为:     #ifdef 标识符     程序段1     #else

2012-03-07 16:34:07 326

原创 make mm

make -j4 framework  缺库的话自动查找编译mm framework  缺库的话报错编不过去

2012-03-03 11:24:22 375

转载 Uid pid

我们经常在一个activity中去start另一个activity,或者与另一个acitivity的结果进行交互(startActivityForResult)。但有没有想过可能会出现的permission问题呢?如果你遇到了permission denial的Exception,那么你需要读读这篇文章啦。我们在同一个application内部,可以随意的startActivity fro

2012-03-01 19:31:41 763

test3 popupwindow

关于PopupWindow的使用例子

2012-06-27

android 画图 bitmap drawable canvas paint

android 画图 bitmap drawable canvas paint

2012-06-06

android 矩阵学习

android matrix学习

2012-06-06

browser源码

browser源码

2011-11-24

mms源码

mms源码

2011-11-24

android游戏开发资源宝典

android游戏开发资源宝典android游戏开发资源宝典android游戏开发资源宝典android游戏开发资源宝典

2011-11-24

空空如也

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

TA关注的人

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