<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[chenghai2011的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/chenghai2011</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; chenghai2011]]></copyright><item><title><![CDATA[activity 的四种启动模式]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/8797054</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/8797054</guid><author>chenghai2011</author><pubDate>Sat, 13 Apr 2013 16:56:02 +0800</pubDate><description><![CDATA[activity 的四种启动模式 这个话题网上一搜一大坨 ，在此写一下就是想让自己记住，长时间不做android总是会忘记


模式一： 
standard 表准模式 android 默认启动activity 的模式就是标准模式不会重用，会一直往当前的栈中添加
模式二：
singleTop  使用这个模式时会检查当前栈的栈定是否是需要启动activity 如果是则重用栈定的activi]]></description><category></category></item><item><title><![CDATA[android AIDL 自我理解]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/8523226</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/8523226</guid><author>chenghai2011</author><pubDate>Mon, 21 Jan 2013 00:06:16 +0800</pubDate><description><![CDATA[android  IPC 进程间通信主要通过的是binder  一个高效的进程间通信的机制   
AIDL 是 google 为了简便程序开发提供的一个方法 今天在这里说说自己对AIDL自动生成的.java 文件的理解  
AIDL 自动生成的.java 文件 其实是有 一个接口和两个静态内部累 
这里我们先说一下接口用来定义我们通信的方法 继承   android.os.IInterfac]]></description><category></category></item><item><title><![CDATA[android 签名对比]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/8132739</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/8132739</guid><author>chenghai2011</author><pubDate>Wed, 31 Oct 2012 15:20:52 +0800</pubDate><description><![CDATA[发布过Android应用的朋友们应该都知道，Android APK的发布是需要签名的。签名机制在Android应用和框架中有着十分重要的作用。

例如，Android系统禁止更新安装签名不一致的APK；如果应用需要使用system权限，必须保证APK签名与Framework签名一致，等等。在《APK Crack》一文中，我们了解到，要破解一个APK，必然需要重新对APK进行签名。而这个签名，一]]></description><category></category></item><item><title><![CDATA[android 安全机制]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/8078886</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/8078886</guid><author>chenghai2011</author><pubDate>Tue, 16 Oct 2012 21:14:04 +0800</pubDate><description><![CDATA[1 Android 安全机制概述

Android 是一个权限分离的系统 。 这是利用 Linux 已有的权限管理机制，通过为每一个 Application 分配不同的 uid 和 gid ， 从而使得不同的 Application 之间的私有数据和访问（ native 以及 java 层通过这种 sandbox 机制，都可以）达到隔离的目的 。 与此 同时， Android 还 在此基础上进]]></description><category></category></item><item><title><![CDATA[java 调试]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/8074747</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/8074747</guid><author>chenghai2011</author><pubDate>Mon, 15 Oct 2012 21:10:57 +0800</pubDate><description><![CDATA[java Debug-2


2012-08-21 17:05 64人阅读 评论(0) 收藏 举报



目录(?)[+]






 

1、 条件断点

断点大家都比较熟悉，在Eclipse Java 编辑区的行头双击就会得到一个断点，代码会运行到此处时停止。

条件断点，顾名思义就是一个有一定条件的断点，只有满足了用户设置的条件，代码才会在运行到断点]]></description><category></category></item><item><title><![CDATA[java  synchronized 的实现机制]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/8009983</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/8009983</guid><author>chenghai2011</author><pubDate>Sun, 23 Sep 2012 16:24:50 +0800</pubDate><description><![CDATA[最近在做项目的时候遇到了较多的同步问题 。
JAVA 给我们提供了很方便的方法去解决多线程同步的问题   synchronized 关键字  
一直很疑惑  synchronized 是怎么来做同步的呢   实现 原理是什么呢     ?


1 synchronized -- 对象加锁
 所有对象都自动含有单一的锁，JVM负责跟踪对象被加锁的次数。
如果一个对象被解锁，其计数变为0]]></description><category></category></item><item><title><![CDATA[android debug 任意程序]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7972409</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7972409</guid><author>chenghai2011</author><pubDate>Wed, 12 Sep 2012 20:18:23 +0800</pubDate><description><![CDATA[做android 开发  debug 是少不了的    有的时候想了解别人的程序  或者想调试系统的代码    怎么办呢


下面现在说一下怎么调试我们自己的程序   


1 。比如我们有个自己的程序  包名 是  com.example.testjava   我们不使用  debug as 的方法  可以打开DDMS直接下断点   如下图 选中我们的进程 然后点击上面 绿色的 类似]]></description><category></category></item><item><title><![CDATA[数据库 多线程和多进程同步和崩溃的问题]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7960822</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7960822</guid><author>chenghai2011</author><pubDate>Sun, 09 Sep 2012 18:09:41 +0800</pubDate><description><![CDATA[最近，在开发android 项目中数据的同步和崩溃 的问题很令人头疼，如果多线程进行同步还可以java  同步锁进行同步  这样也不会出太大的问题，但是现在正轨的程序经常会有两个进程 但是需要同一个数据库，这个问题就很棘手了  sqlite 多进程的读还是可以的 但是要是多进程同时网数据库里写一般就会crash  . 这个问题困扰了我很长一段时间。
 
最近才发现了一个很好的解决办法就是用an]]></description><category></category></item><item><title><![CDATA[java 位运算基础]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7694331</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7694331</guid><author>chenghai2011</author><pubDate>Tue, 26 Jun 2012 21:44:36 +0800</pubDate><description><![CDATA[昨天一哥们问我Java位移你会吗，我说不会，想想位移这么麻烦，一般有位移的Java代码一律不看，有几个人会啊，是吧？但是那哥们的回答，让我郁闷半天：“这都不会啊，都是Java基础的东西呀！”我靠，我晕倒，听着老不爽了，so我决定对位移一探究竟，原来也这么随意啊，哈哈。因此，把心得总结如下，欢迎收看。

在这里先感谢一下，JavaEye上的高手们的技术博客指点。TKS very much。]]></description><category></category></item><item><title><![CDATA[小米手机通过电脑上网]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7662919</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7662919</guid><author>chenghai2011</author><pubDate>Thu, 14 Jun 2012 14:19:58 +0800</pubDate><description><![CDATA[步骤很简单。只需要两步。所需要的软件工具如下：
　　电脑软件1.小米USB驱动
　　手机软件2.超级终端　点击下载
　　1.打开系统设置-系统-共享手机网络-USB绑定- （打开）
　　2.USB连接上电脑，在网络连接里会多出一个本地连接4，然后找到一下你的宽带连接(电脑上网那个)点一下右键-属性-共享- 允许其他网络用户通过此计算器... 选择勾上。

　　然后找到虚拟网卡(就是第二]]></description><category></category></item><item><title><![CDATA[c  c++ 才是王道  开始学习c 的基础  #ifndef、#def、#endif说明]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7645941</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7645941</guid><author>chenghai2011</author><pubDate>Fri, 08 Jun 2012 16:38:42 +0800</pubDate><description><![CDATA[你所遇到的这几个宏是为了进行条件编译。一般情况下，源程序中所有的行都参加编译。但是有时希望对其中一部分内容只在满足一定条件才进行编译，也就是对一部分内容指定编译的条件，这就是“条件编译”。有时，希望当满足某条件时对一组语句进行编译，而当条件不满足时则编译另一组语句。

    条件编译命令最常见的形式为： 
    #ifdef 标识符 
    程序段1 
    #else]]></description><category></category></item><item><title><![CDATA[linux 命令实战]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7639883</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7639883</guid><author>chenghai2011</author><pubDate>Wed, 06 Jun 2012 23:02:44 +0800</pubDate><description><![CDATA[对于linux  的命令太不熟悉了    对于一个程序员这样会被鄙视的 所以在这每天学习几个命令  记录下来 
1.           dirname     dirname 命令用来取给定文件的父目录      一般用在shell　脚本中 获取指定文件的目录 然后切换过去


2.　　 uname 用来获取  系统信息和 硬件信息    比如想知道  系统是 32位的还是  64位 的]]></description><category></category></item><item><title><![CDATA[android 使用eclipse 调试 so]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7597310</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7597310</guid><author>chenghai2011</author><pubDate>Thu, 24 May 2012 10:18:11 +0800</pubDate><description><![CDATA[Eclipse+CDT+GDB调试android
 NDK程序




Eclipse+CDT+gdb调试android ndk程序
先介绍一下开发环境，在这个环境下，up主保证是没有问题的。

ubuntu 11.10eclipse 3.7(indego) for javajdk 6android sdk 2.2andrid ndk r7
 
当然，在windows环境下通]]></description><category></category></item><item><title><![CDATA[Android 如何获取apk大小与时间]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7542295</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7542295</guid><author>chenghai2011</author><pubDate>Mon, 07 May 2012 14:22:38 +0800</pubDate><description><![CDATA[通过PackageManager获得已安装程序：

java代码：
List installedList = mPackageManager.getInstalledPackages(0);

for (PackageInfo info : installedList) { 
mInstalledList.add(info.packageName + ":" + info.applic]]></description><category></category></item><item><title><![CDATA[sqlite 数据库官方文档（翻译版）]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7336906</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7336906</guid><author>chenghai2011</author><pubDate>Fri, 09 Mar 2012 15:05:50 +0800</pubDate><description><![CDATA[此文档介绍并定义所使用的*数据库文件格式SQLite.

10 数据库文件

在大多数情况下.完整的状态SQLite 数据库数据库中包含一个名为"main 单一文件在磁盘上文件"

在执行事务, 默认行为是存储一些临时信息在第二个名为"rollback 日记"( 当使用替代方法是windows mobile 设备中心-或是用户输入了主机计算机)如果应用程序或崩溃日志回滚, 然后在正在完]]></description><category></category></item><item><title><![CDATA[kill掉android应用的bat]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7332922</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7332922</guid><author>chenghai2011</author><pubDate>Thu, 08 Mar 2012 15:00:52 +0800</pubDate><description><![CDATA[在http://blog.youkuaiyun.com/chenghai2011/article/details/7332579文章里面，我介绍了可以通过adb am start来启动android应用，但android里面并没有提供命令来结束应用。android采用的linux内核，因此可以用kill命令来结束进程，但kill命令只支持用进程pid来干掉进程，因此我写了一个bat来便于结束android应用]]></description><category></category></item><item><title><![CDATA[adb 命令]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7332579</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7332579</guid><author>chenghai2011</author><pubDate>Thu, 08 Mar 2012 13:53:31 +0800</pubDate><description><![CDATA[android的adb采用的是server+client的方式，所以adb是支持多个设备同时连接的。通过adb devices命令可以看到所有连接的android设备，而多个设备都连上adb server，如果你想针对某一个设备执行adb命令，可以在adb命令后面加上-s ,例如adb –s 12345678 push c:/a.txt /data/。adb的设计可以参考http://blog.c]]></description><category></category></item><item><title><![CDATA[android 手动打包]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7330749</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7330749</guid><author>chenghai2011</author><pubDate>Wed, 07 Mar 2012 22:15:03 +0800</pubDate><description><![CDATA[分类： android


ndroid 命令行手动编译打包过程图



【详细步骤】：

 

1使用aapt生成R.java类文件： 
例： 
E:\androidDev\android-sdk-windows2.2\tools>E:\androidDev\android-sdk-windows2.2\platforms\android-3\tools\aapt.ex]]></description><category></category></item><item><title><![CDATA[android 抓包]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7313963</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7313963</guid><author>chenghai2011</author><pubDate>Fri, 02 Mar 2012 22:49:16 +0800</pubDate><description><![CDATA[近两天由于要多android某些程序的数据包进行分析.于是研究了一下基于android 的抓包 众所周知 android 基于linux..所以采用linux的tcpdump来实现了抓包的功能....


需要文件
tcpdump
 附件提供
adb
 这个都有吧 没有的自己想办法解决


将附件解压得到tcpdump
 放在adb的同目录下
以下是cmd
 代码
首先]]></description><category></category></item><item><title><![CDATA[Android 之 内存管理]]></title><link>https://blog.youkuaiyun.com/chenghai2011/article/details/7286460</link><guid>https://blog.youkuaiyun.com/chenghai2011/article/details/7286460</guid><author>chenghai2011</author><pubDate>Thu, 23 Feb 2012 11:44:41 +0800</pubDate><description><![CDATA[概述

在android的开发中，要时刻主要内存的分配和垃圾回收，因为系统为每一个dalvik虚拟机分配的内存是有限的，在google的G1中，分配的最大堆大小只有16M，后来的机器一般都为24M，实在是少的可怜。这样就需要我们在开发过程中要时刻注意。不要因为自己的代码问题而造成OOM错误。

JAVA的内存管理

大家都知道，android应用层是由java开发的，android的d]]></description><category></category></item></channel></rss>