摘要: 在使用library自定义属性时,命名空间URI需要使用http://schemas.android.com/apk/res-auto,在编译时,URI会自动替换为当前app的package名。下面是使用support lib 的属性的例子 阅读全文
posted @ 2015-09-18 17:03 tonyhan 阅读(322) 评论(0) 推荐(0) 编辑
摘要: Gradle是以Groovy语言为基础,基于DSL语法的构建工具,它通过插件的方式定制工程构建过程。Google开发了Android Gradle插件,使用Gradle构建Android工程。Gradle构建Android工程,我们可以在Android studio中使用,也可以在命令行中使用,也可... 阅读全文
posted @ 2015-09-18 17:02 tonyhan 阅读(651) 评论(0) 推荐(1) 编辑
摘要: 使用SHFileOperation函数进行操作需要注意的地方:1、pFrom, pTo字符串必须是以两个\0结尾2、FOF_NOCONFIRMATION | FOF_NOCONFIRMMKDIR | FOF_NOERRORUI | FOF_SILENT标志位用户实现静默拷贝,拷贝过程不弹出任何对话框 1 int CopyFileToFolder(const string &filePath, const string &toPath) 2 { 3 SHFILEOPSTRUCT FileOp; 4 ZeroMemory((void*)&FileOp, sizeof(SHF 阅读全文
posted @ 2012-08-29 20:52 tonyhan 阅读(650) 评论(0) 推荐(0) 编辑
摘要: ServiceService是Android应用程序的基本组件之一。跟Activity不同,Service一般没有提供用户界面,在后台运行。在实际的开发过程中,我们可以将一些任务(例如:从网络上下载文件、播放音乐等)封装到Service中,这样有几个好处:1)减少模块之间的耦合度;2)Service可以被外部应用程序调用,实现进程间通信。Service启动后运行在宿主进程的主线程,Service不会创建自己的线程或者进程(除非你特别声明)。如果Service执行的任务耗时较长,阻塞到主线程,你需要在Service中创建一个线程,在新创建的线程中执行这些任务。阻塞主线程会造成用户界面僵死,影响用 阅读全文
posted @ 2012-03-25 16:44 tonyhan 阅读(565) 评论(0) 推荐(0) 编辑
摘要: ActivityActivity是Android应用程序的基本组件之一,提供显示界面并处理与用户的交互。应用程序的各种空间(如EditText等)是放置在Activity之上的。Activity启动后通常占据整个显示屏幕,将用户的触摸屏事件或者按键事件分发给相应的控件进行处理。一个应用程序通常会有多个Activity,应用程序的界面切换就是Activity的切换。切换到新的Activity后,新的Activity在屏幕上显示出来,前一个Activity隐藏起来并停止运行,系统将这个Activity的相关信息保存在Activity栈中。当用户点击Back按键时,当前的Activity被销毁,栈顶 阅读全文
posted @ 2012-03-17 11:33 tonyhan 阅读(886) 评论(0) 推荐(0) 编辑
摘要: 1. 背景C++没有像Java那样的内建的对象自动回收机制,new创建的对象没有delete,会一直存在于内存中。对象已经不再使用,但是如果忘记delete,会造成内存资源的泄露。在实际开发过程中,分析内存泄露是一件很棘手的事情。本文基于Android2.2系统源码,对Android的C++对象自动回收机制进行分析。2. 引用计数和智能指针Android上C++对象实现自动释放的机制是使用引用计数+智能指针。对象的生命周期通过引用计数来管理,当引用计数>0时,对象不会被释放;当引用计数=0时,释放该对象。使用对象的方式是通过智能指针引用该对象,智能指针也是C++对象,利用C++的构造析构 阅读全文
posted @ 2011-12-26 21:59 tonyhan 阅读(2582) 评论(1) 推荐(2) 编辑
摘要: 下载msysgit,安装官方下载:http://code.google.com/p/msysgit/downloads/list,打开Git Bash,执行命令cd D:git clone https://android.googlesource.com/platform/manifest.git输入命令,切换到manifest目录cd manifestgit tag 列出android各个分支版本git tag下载android-2.2系统源码,输入下面命令,如果要下载其他版本源码,checkout git tag列出的版本号即可git checkout android-2.2_r1chec 阅读全文
posted @ 2011-12-25 14:37 tonyhan 阅读(1814) 评论(0) 推荐(0) 编辑