- 博客(49)
- 收藏
- 关注
转载 Android工程的编译过程
转自:http://blog.csdn.net/andy_android/article/details/7055762 现在很多人想对Android工程的编译和打包进行自动化,比如建立每日构建系统、自动生成发布文件等等。这些都需要我们对Android工程的编译和打包有一个深入的理解,至少要知道它的每一步都做了什么,需要什么环境和工具,输入和输出是什么。那么我们就来挖掘一
2013-11-08 18:03:56
599
转载 Android的Activity启动模式以及各种启动Flag的含义
Android developer 的说明:http://developer.android.com/guide/components/tasks-and-back-stack.html#ManagingTasks 1. FLAG_ACTIVITY_NEW_TASK标识:通常,这个标志会启用一个新的Task。然而,并不是必须是。如果已经存在一个Task与新Activity的affi
2013-08-26 17:15:53
3108
转载 LinearLayout的layout_weight属性详解
总结:layout_weight的作用是将LinearLayout的剩余空间按比例进行划分。水平LinearLayout中,设置了layout_weight的子控件的显示结果还与该子控件设置的layout_width有关。水平LinearLayout中的子控件,如果希望通过指定layout_weight值将水平空间进行按比例划分,需要将子控件的layout_width值设为0dp。(垂直L
2013-02-25 17:17:23
717
原创 svn常用操作
svn log 常用法:查看最近三个版本的log:svn log -v -l3查看某两个版本之间的log: svn log -r 30:31
2013-02-20 17:04:52
494
转载 使用ant编译android程序
转自 http://zero1.iteye.com/blog/655983假设你已经有: (a)java环境 (b)android-sdk环境 [1]设置ant环境 去http://ant.apache.org/bindownload.cgi下载最新版本(当前为apache-ant-1.8.0),二进制的就好!例如:apache-ant-1.8.0-
2013-01-23 12:05:20
773
转载 Android中Touch事件的处理逻辑
转自:http://www.oschina.net/question/163910_27289android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解。 一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN->ACTION_MOVE->ACTION_MOVE->ACTION_MO
2012-09-11 11:38:23
775
转载 ListView连续调用getView方法的分析与解决
简单说就是当ListView的宽或高设成wrap_content了,这种情况下ListView不知道自己有多宽或多高,会多次调用。把宽高设成fill_parent就正常了。参考:http://lisperl.diandian.com/post/2012-06-01/40028510982在使用listview的时候。自定义adapter,发现在getView里打印日
2012-07-25 16:35:28
3589
原创 Linux一些设置
用..来代替“cd ..”以提高效率用alias命令设置指令别名:alias [别名]=[指令名称],比如 alias ..='cd ..'使这一设置对所有终端有效:修改~/.bashrc文件,在其中加入alias ..='cd ..'
2012-07-09 11:17:33
628
转载 Android LayoutInflater的使用
转自:http://lpqsun-126-com.iteye.com/blog/1158070在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如 Bu
2012-06-29 16:37:18
8361
1
转载 android 在源码中编译工程的方法
转自:http://blog.csdn.net/haoanbang/article/details/6736883编译源码: 1、打开终端,进入源码文件夹。例如:/root/android2.2/ 2、输入命令 . build/envsetup.sh(运行脚本文件) 3、输入命令 make -
2012-06-21 11:35:17
725
转载 Android JNI知识简介
转自:http://blog.csdn.net/linweig/article/details/5417319http://www.cnblogs.com/hoys/archive/2010/10/28/1863612.htmlJava Native Interface (JNI)标准是java平台的一部分,它允许Java代码和其他语言写的代码进行交互。JNI
2012-06-20 20:07:17
513
转载 Android JNI开发高级篇
转自:http://www.android123.com.cn/androidkaifa/683.html有关Android JNI开发中比较强大和有用的功能就是从JNI层创建、构造Java的类或执行Java层的方法获取属性等操作。 一、类的相关操作 1. jclass FindClass(JNIEnv *env, const char *name)
2012-06-20 17:31:12
549
转载 Android JNI 使用的数据结构JNINativeMethod详解
转自:http://blog.csdn.net/bigapple88/article/details/6756204Andoird 中使用了一种不同传统Java JNI的方式来定义其native的函数。其中很重要的区别是Andorid使用了一种Java 和 C 函数的映射表数组,并在其中描述了函数的参数和返回值。这个数组的类型是JNINativeMethod,定义如下:
2012-06-20 16:18:18
619
转载 Android的UI主线程和子线程
转自:http://jinguo.iteye.com/blog/660073在一个Android 程序开始运行的时候,会单独启动一个Process。默认的情况下,所有这个程序中的Activity或者Service(Service和 Activity只是Android提供的Components中的两种,除此之外还有Content Provider和Broadcast Receiv
2012-06-11 15:27:48
3386
转载 Android内存优化
转自:http://blog.csdn.net/xuyide54321/article/details/7075967 一、 Android的内存机制 Android的程序由Java语言编写,所以Android的内存管理与Java的内存管理相似。程序员通过new为对象分配内存,所有对象在java堆内分配空间;然而对象的释放是由垃圾回收器来完成的。C/C++中的内存机制是“
2012-06-06 20:01:21
987
转载 AsyncQueryHandler的使用
转自:http://xwangly.iteye.com/blog/1098728每天进步一点点之AsyncQueryHandler学习AsyncQueryHandler:异步的查询操作帮助类,其实它同样可以处理增删改1。AsyncQueryHandler的作用查询其API便可知,它担供:startInsertstartDelete
2012-06-06 19:59:48
7801
转载 Android中的.9图片的制作和使用
转自:http://www.cnblogs.com/dynasty/archive/2011/03/03/1969617.html一、什么是9.png: 可能做过任务栏美化的同学都会知道,我靠,framework-res.apk\res\drawable-hdpi 目录下有非常非常多的XXXXXX.9.png图片。千万不要以为这个9只是png格式图片的命名区分,其实
2012-06-06 19:55:08
796
转载 Notification和NotificationManager的基本使用方法
转自:http://blog.csdn.net/ddna/article/details/51220831. NotificationManager和Notification用来设置通知。 通知的设置等操作相对比较简单,基本的使用方式就是用新建一个Notification对象,然后设置好通知的各项参数,然后使用系统后台运行的NotificationManager服
2012-06-06 19:52:53
601
转载 android设置中常用的PreferenceActivity用法介绍
转自:http://blog.csdn.net/wujiangming/article/details/6216154今天主要研究了一下设置界面中用得比较多的PreferenceActivity,它包含了许多类似控件的东西来表示不同的设置需求如分类设置,选择框设置,下拉列表设置,编辑框设置,铃声设置,而且这些设置不需要我们自己来保存用户设置的数据,它自己会将数据保存在xml文件当中。下
2012-06-06 19:50:45
553
转载 Android手机分辨率基础知识(DPI,DIP计算)
转自:http://blog.csdn.net/moruite/article/details/6028547术语说明备注Screen size(屏幕尺寸)指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸摩托罗拉milestone手机是3.7英寸As
2012-06-06 14:35:58
727
转载 Android相关的一些值得学习的博客
http://www.cnblogs.com/duguguiyu/category/112850.html游戏开发:http://blog.csdn.net/xiaominghimi?viewmode=contents
2012-05-22 17:04:49
362
原创 Android一些问题总结
安装apk时系统做了哪些操作将apk包拷贝到/data/app目录下(系统应用为/system/app目录),不进行解压。这是资源访问的实际地址。把classes.dex文件重命名后放在/data/dalvik-cache目录下。在/data/data下创建应用程序的数据目录,名称为应用程序的包名apk包中的resources.arsc文件包含了资源类文件的链接信息,在加载资源
2012-05-17 16:32:25
483
转载 求序列的全排列算法
转自:http://fengchangjian.com/?p=1063所谓全排列,就是将集合中元素的所有排列情况依次输出。比如{1、2、3}的全排列为:123、132、213、231、312、321,共6种,满足计算公式N!(N为集合中元素个数,不重复)。当元素不重复时,全排列采用递归思想较容易实现,它的递归公式推导步骤类似:1、要求得123的全排列,只需求得:1并
2011-11-07 11:45:53
1007
转载 求一个序列的全排列——算法思想和实现
转自:http://fengchangjian.com/?p=1063所谓全排列,就是将集合中元素的所有排列情况依次输出。比如{1、2、3}的全排列为:123、132、213、231、312、321,共6种,满足计算公式N!(N为集合中元素个数,不重复)。当元素不重复时,全排列采用递归思想较容易实现,它的递归公式推导步骤类似:1、要求得123的全排列,只需求
2011-11-06 23:48:37
840
转载 Android的Binder机制实现
Binder是Android的一种进程间通信机制很多的Service就是通过Binder机制来和Activity通讯交互的Binder机制实际上就是一个类似于C/S的构架:客户端进程要想与服务端进程通信就必须在客户端建立一个服务端进程代理对象,然后将请求发送到代理对象上;代理对象通过Binder驱动将请求转发给服务端进程处理;当处理完成之后,再次通过Binder驱动传回给代理对象,客户端从代理
2011-11-01 10:50:57
288
转载 Java中synchronized关键字用法
转自http://blog.csdn.net/soartju/article/details/2840491这篇文章从网上找到的,作者是谁不详,因为到处都是转帖。看了之后,解开了我对synchronized的一些疑问,同时也验证了我之前的理解是正确的,记录下来。 在java编程思想中对synchronized的一点解释:1、synchronized关键字
2011-10-30 17:24:46
1649
转载 APK安装过程及原理详解
转自:http://mycoding.iteye.com/blog/1075114来自华为内部资料 PackageInstaller 原理简述 应用安装是智能机的主要特点,即用户可以把各种应用(如游戏等)安装到手机上,并可以对其进行卸载等管理操作。APK是Android Package的缩写,即Android安装包。APK是类似Symbian Sis或S
2011-10-26 23:35:03
350
原创 非递归实现二叉树的前序,中序,后序遍历
非递归前序遍历:void PreOrder(BiTree root){ stack bitreeStack; while(root!=NULL || !bitreeStack.empty()) { while(root!=NULL) { coutdata<<endl; bit
2011-10-24 17:28:14
2310
原创 筛选法求N以内的素数
素数筛法是这样的:1.开一个大的bool型数组prime[],大小就是n+1就可以了.先把所有的下标为奇数的标为true,下标为偶数的标为false. 2.然后: for( i=3; i { if(prime[i])
2011-10-15 21:48:16
542
转载 Android中Handler,Looper,MessageQueue和Thread
转自http://www.cnblogs.com/xirihanlin/archive/2011/04/11/2012746.html前几天,和同事探讨了一下Android中的消息机制,探究了消息的发送和接收过程以及与线程之间的关系。虽然我们经常使用这些基础的
2011-10-14 16:59:40
369
原创 对5个数排序最少的比较次数
答案是7次,使用归并插入排序的思想。前四个先两两排成有序的,再对较大者排序,然后第五个元素做插入(二分),第三个元素插入。5 个数最快的排序, H.B.Demuth 于 1956 年在他的博士论文中提出了以下方法:开始时,就像用合并对4个元素排序一样,首先比较a:b,
2011-10-13 21:29:03
2488
1
原创 求a的b次方、a的b次方对m取模
http://zhaoqj518.iteye.com/blog/675210快速计算乘方的算法,求a的b次方如计算2^13,则传统做法需要进行12次乘法,但是可以优化:把2*2的结果保存起来看看,是不是成了:4*4*4*4*4*
2011-09-05 17:33:25
3677
原创 二叉树中两个节点的最近公共父节点
情况一:root未知,但是每个节点都有parent指针这个的问题实际上是另一个我们熟知的问题,有2个相交的单链表,找出它们的相交点!只要把这个二叉树的图片倒过来看,解决方法是求出linkedList A的长度lengthA, linkedList B的长度Length
2011-09-04 22:54:33
1657
转载 扩展堆栈使得O(1)时间求栈的最小值(最大值)
参考:http://blog.csdn.net/jim_wei/article/details/6335388问题描述扩展stack的实现,完成正常的push,pop操作,新增访问最小(或最大)元素的接口Min(),使得push,pop,M
2011-08-31 23:13:11
5258
原创 Java基础问题总结
抽象类和接口的区别从编程的角度来看,抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承关系。但是,一个类却可以实现多个接口。在抽象类的定义中,我们可以赋予方法的默认行为。但是在接口的定义中,方法却不能拥有默认行为。从设计理念层面看,抽象类表示的是"is-a"关系,接口表示的是"like-a"关系各关键字作用域作用域 当前
2011-08-30 18:00:03
339
原创 ListView与Adapter的配合使用以及ListView的优化
参考文章:http://www.cnblogs.com/playing/archive/2011/03/21/1990555.htmlhttp://www.ideasandroid.com/archives/295显示列表三元素:ListVeiw :用来展示列表的View。适配器:用来把数据映射到ListView上的中介。数据:具体的将被映射的字
2011-08-26 17:30:13
331
原创 Eclipse相关设置和快捷键
自动补全设置自动补全修改目标:输入所有字符都可以有自动补全提示,但是按空格或“=”不输出提示结果,只有回车的时候才上屏。因为有的时候新定义个变量Eclipse也会给提示,很烦。第一步:输入所有字符都可以有自动补全提示:对于高版本的eclipse:Windows——>Preferences——>Java-->Editor-->Conte
2011-08-03 11:39:39
822
原创 0-1背包问题(动态规划解)
问题描述有N件物品和一个容量为V的背包。第i件物品的重量是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的重量总和不超过背包容量,且价值总和最大。解决方案该问题的特点是每种物品仅有一件,可以选择放或不放。用f[i][v](一个二维数组)表示前i件物品恰放入一个容量为v(这里不是总容量V)的背包可以获得的最大价值。则其状态转移方程便是:f[i][v]
2011-06-06 16:42:00
406
原创 用KMP算法写strstr函数
prefix数组的含义:prefix[i]=q表示模式(字串)str2中以元素str2[i]结尾,开头q个元素和最后q个元素相同。(注意:个数和数组下标之前相差1)比较过程中主串下标i一直往前走,当遇到不匹配时,调整字串下标j到可能匹配的位置。char* my_strstr(const char *str1,const char *str2){ int lengthT
2011-06-04 21:58:00
899
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人