- 博客(201)
- 资源 (15)
- 收藏
- 关注
转载 android 进程优先级
android中的进程默认情况下, 同一个application中的所有component运行在同一个linux进程下. 启动一个component A时, 如果已存在处于运行状态中的component B, 且A和B属于同一个application, 那么component A将在component B所在的进程下运行. 否则将为A创建一个新的linux进程. 开发者也可以为ap
2012-06-25 13:42:16 1823
原创 android中 代码实现截图功能(静态+动态视频)
分享下静态截图的功能代码:public class ScreenShot { // 获取指定Activity的截屏,保存到png文件 static Bitmap takeScreenShot(Activity activity) { Log.i("TAG","tackScreenShot"); // View是你须要截图的View
2012-05-28 11:05:53 15851 12
原创 在命令行下过滤adb logcat的输出
开发当中经常看到 log 如洪水般瞬间刷满了屏幕,对自己有用的信息都被淹没了,影响心情也影响效率。下面是几个我所知道的过滤方法。1. 只显示需要的输出,白名单最方便的当然是通过管道使用 grep 过滤了,这样可以使用 grep 强大的正则表达式匹配。简单的匹配一行当中的某个字符串,例如 MyApp:adb logcat | grep MyAppadb logcat | gre
2012-04-28 10:24:28 48265 1
转载 OpenGL ES常用API
OPenGL ES常用API: glClearColor( 0.f, 0.f, 0.f, 1.f ); // 设置模式窗口的背景颜色,颜色采用的是RGBA值 glViewport( 0, 0, iScreenWidth, iScreenHeight );//设置视口的大小以及位置,视口:也就是图形最终显示到屏幕的区域,前两个参数是视口的位置,后两个参数是
2012-04-10 10:32:29 1547
转载 超详细的vim+cscope 的使用规则
写在前面 Linux下编程一直被诟病的一点是: 没有一个好用的IDE, 但是听说Linux牛人, 黑客之类的也都不用IDE.但是对我等从Windows平台转移过来的Coder来说, 一个好用的IDE是何等的重要啊, 估计很多人就是卡在这个门槛上了,"工欲善其事, 必先利其器"嘛, 我想如果有一个很好用的IDE, 那些Linux牛人也会欢迎的. 这都是劳动人民的美好愿望罢了,我今天教
2012-04-05 16:03:49 7403
转载 vim+ctags+cscope 打造Android源码阅读工具
1. 在Android源码顶层目录下运行ctags -R 生成tags文件2. 在Android源码顶层目录运行cscope -Rbq,生成cscope.out文件3.修改~/.vimrc使之可以自动加载tags和cscope.out文件,注意要使用ctags和cscope数据库,必须在android源码顶层运行vim程序我的.vimrc如下:"开关tag窗口nnore
2012-04-01 16:19:21 3300
转载 Android中实现应用程序的多语言版本
http://www.360doc.com/content/11/0404/20/4818519_107199610.shtml
2012-03-30 14:24:03 1365
转载 AndroidManifest.xml解析(三)
7、第三层【1】service与activity同级,与activity不同的是,它不能自己启动的,运行在后台的程序,如果我们退出应用时,Service进程并没有结束,它仍然在后台运行。比如听音乐,网络下载数据等,都是由service运行的 【2】service生命周期:Service只继承了onCreate(),onStart(),onDestroy()三个方法,第一次启
2012-03-30 13:52:19 1075
转载 AndroidManifest.xml解析(二)
3、第三层():属性android:allowTaskReparenting=["true" | "false"] android:alwaysRetainTaskState=["true" | "false"] android:clearTaskOnLaunch=["true" | "false"] android:con
2012-03-30 13:51:31 1281
转载 AndroidManifest.xml解析(一)
一、关于AndroidManifest.xmlAndroidManifest.xml 是每个android程序中必须的文件。它位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。 除了能声明程序中的Activities, ContentProviders, Services, 和
2012-03-30 13:50:39 1339
转载 Android Intent Action 大全
StringADD_SHORTCUT_ACTION动作:在系统中添加一个快捷方式。."android.intent.action.ADD_SHORTCUT"StringALL_APPS_ACTION动作:列举所有可用的应用。输入:无。"android.intent.action.ALL_APPS"String
2012-03-30 13:41:03 3940
原创 Android4.0 中 隐藏底部的statusBar
StatusBarManager sbm = (StatusBarManager) this .getSystemService("statusbar"); sbm.disable(sbm.DISABLE_MASK);
2012-03-30 13:37:50 6210 16
转载 Java中的Locale解析
在项目中经常要用到将字符串解析成Locale,但是没有一个比较好用的类。java本身提供了3个构造函数,但是实际使用过程中,需要自己解析,比较繁琐。 Locale(langugae)locale(language,country) Locale(String language, String country, String variant)
2012-03-29 14:18:36 5381
转载 Android中帐户服务部+位置服务
Android账户、位置服务设置 Android系统的Settings里面为用户提供了账户注册以及位置服务许可,我们要做的就是通过自己的Activity去调用系统资源来进行账户注册以及选择位置服务许可解决:1.Android账户设置:首先推荐一个Android SDK包下的工具Hierarchy Viewer(可视化调试工具,可以很方便地在开发者设计,调试和调整界面时,提高用户
2012-03-28 14:12:21 1762
原创 让自己的程序在桌面显示前运行,且仅在第一次运行模拟器的时候运行一次
如题,第一,如果想让自己的程序在开机时运行,并且在home桌面显示前运行,可以在manifest文件中加入以下内容:第二,如果想让这个程序只在第一次启动机器的时候运行一次,后面再启动机器就不会再运行 PackageManager pm = getPackageManager(); ComponentName name = new ComponentName("包名",
2012-03-23 16:45:37 1597
原创 Android中给Button加上selector——点击按钮后变成不一样的图片
如题,发难如下:在drawable目录下新建一个btnselector.xml文件: 切记切记:文件开头一定一定不能加下面这个语句然后在布局文件的Button标签下加上如下代码:android:focusable="true"android:background="@drawable/btnselector"
2012-03-19 16:48:54 19175 5
转载 Android模拟器快捷键
Home键(小房子键)在键盘上映射的就是home键,这倒是很好记。Menu键用于打开菜单的按键,在键盘上映射的是F2键 ,PgUp键 同样可以。另外,看英文原文的意思,貌似这个键在某些机型上会被设计为左软件(left softkey)Start键这个键在模拟器和G1真机上我都没有找到到底是哪个键。映射的是Shift+F2或PgDn,某些机型会被设计为右软键(
2012-03-16 17:54:15 1586
原创 在单独编译android源码中的应用时出错make: *** [out/target/common/obj/APPS/TabPro_intermediates/src/R.stamp] 错误 1
如果出现如题所述的错误,更细致一点说是出现如下所述的错误:packages/apps/TabPro/res/layout/tab1.xml:7: error: Error: This attribute must be localized. (at 'text' with value 'tab1').packages/apps/TabPro/res/layout/tab2.xml:7: e
2012-03-16 10:17:47 18657 5
原创 在android源码中单独编译新添加的应用报错:user tags are only supported on legacy modules
如题,if you 遇到里这样的情况,可能是因为你所添加的应用根目录中的Android.mk文件中的编译条件的语句写的有问题(LOCAL_MODULE_TAGS),先给大家做如下一点点的介绍哈~官方文档有如下说明:user: 指该模块只在user版本下才编译eng: 指该模块只在eng版本下才编译tests: 指该模块只在tests版本下才编译optional:指该模
2012-03-16 09:58:34 2541
原创 Just note
1、Android源码编译完成后,如果因为某些原因导致ramdisk.img丢失(如使用make snod命令之后丢失ramdisk.img),可以重新make,由于make时增量编译,所以不会像第一次完整编译过程那么漫长哈~2、修改Android系统自带的app后,不应该使用adb install进行安装,也不需要make snod。可以直接adb push进去~3、当运行adb log
2012-03-15 19:02:00 1413
转载 新使用Eclipse开发Android源码
说明:这篇文章是介绍如何开发Android源码,包括各平台的源码而非仅仅Google释放的源码,我采用的是MSM7267. 前提不需要SDK,不需要ADT,通过整个工程的编译都可以生成。为了在Eclipse中调试源码如Phone、MMS、Contact…… 由于以前都没接触过Java、Eclipse、ADT... 这些,在网上看了N多的文章,就这篇详细,
2012-03-15 18:54:50 1273 2
转载 HTTP协议详解
引言 HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP/1.0的第六版,HTTP/1.1的规范化工作正在进行之中,而且HTTP-NG(Next Generation of
2012-02-21 10:55:18 858
转载 Android中Service与Thread的区别
很多时候,你可能会问,为什么要用 Service,而不用 Thread 呢,因为用 Thread 是很方便的,比起 Service 也方便多了,下面我详细的来解释一下。 1). Thread:Thread 是程序执行的最小单元,它是分配CPU的基本单位。可以用 Thread 来执行一些异步的操作。2). Service:Service 是android的一种机制,当它运行的
2012-02-21 09:56:45 6005 2
转载 java的synchronized详解
Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。 一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问object的一个synch
2012-02-08 10:19:18 897
转载 Android之Service与IntentService的比较
不知道大家有没有和我一样,以前做项目或者练习的时候一直都是用Service来处理后台耗时操作,却很少注意到还有个IntentService,前段时间准备面试的时候看到了一篇关于IntentService的解释,发现了它相对于Service来说有很多更加方便之处,今天在这里稍微来总结下我的心得。 首先IntentService是继承自Service的,那我们先看看Service的官方介
2012-02-07 14:28:21 1605
转载 Android面试一
1. 请描述下Activity的生命周期。2. 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?3. 如何将一个Activity设置成窗口的样式。(Edited by Sodino)4. 如何退出Activity?如何安全退出已调用多个Activity的Application?5. 请介绍下Android中常用的五种
2012-02-06 15:04:35 818
原创 Android中的数据存储
作为一个完成的应用程序,数据存储操作是必不可少的。因此,Android系统一共提供了四种数据存储方式。分别是:SharePreference、SQLite、Content Provider和File。由于Android系统中,数据基本都是私有的的,都是存放于“data/data/程序包名”目录下,所以要实现数据共享,正确方式是使用Content Provider。 SQLite: SQL
2012-02-02 16:00:41 1447 1
转载 Android中屏蔽有新短信时通知栏里的通知
其实,要达到如题所述的效果很简单,只要注册一个广播,并设置该广播的intent-filter,同时把该intent-filter的优先级设置高于系统优先级final String SMS_RECEIVED = "android.provider.Telephony.SMS_RECEIVED";IntentFilter SMSfilter = new IntentFilter(SMS_R
2012-01-30 13:18:39 5878 2
转载 AIDL进程间传递自定义类型参数
Aidl默认支持的类型包话java基本类型(int、long、boolean等)和(String、List、Map、CharSequence),如果要传递自定义的类型该如何实现呢? 要传递自定义类型,首先要让自定义类型支持parcelable协议,实现步骤如下: 1>自定义类型必须实现Parcelable接口,并且实现Parcelable接口的public void writeToParc
2012-01-29 11:38:08 7548 1
原创 解决more than one device and emulator问题
1.查找所有设备adb devices2.选择你要使用的设备adb -s 设备名称 shell
2012-01-20 10:44:22 1114
原创 将格林威治时间转换为北京时间
Date nowTime = new Date(); // 要转换的时间 Calendar cal = Calendar.getInstance(); cal.setTimeInMillis(nowTime.getTime()); Log.i("OTH","北京时间:" + cal.getTime().toString().subs
2012-01-19 13:22:30 7267
原创 获取view的高度和宽度(在onCreate方法中)
大家都知道在onCreate方法中一般没办法直接调用view.getHeight方法来获取到控件的高度以及其他一些信息,那我们如何取得控件的高度值呢?大家可以采用以下的方法哈~ int w = View.MeasureSpec.makeMeasureSpec(0,View.MeasureSpec.UNSPECIFIED); int h = View.MeasureSpec.mak
2012-01-19 09:15:35 8948 2
原创 Android中 出现Excessive JNI global references错误的解决方案
今天调试一个小工程,工程运行一段时间后就自动关闭或者重启,严重的时候直接就是模拟器关闭或者重启了。很是无奈哇……把Log调出来看了下,发现报出了Excessive JNI global references的错误。在网上找解决办法,可是网上对这个问题的讨论并不多,最多的就是有人问了,BUT,没有人来答呀……后来重复运行那个工程好几次,发现Log中会一直追踪打印如下信息:GREF h
2012-01-18 11:30:52 5687 1
原创 接受指定号码的短信,并且不让系统截取到通知用户
//就直接上代码了吧public class ScreenTest extends Activity { class SmsContent extends ContentObserver{ private Cursor cursor = null; public SmsContent(Handler
2012-01-18 09:32:42 3881
原创 显示scrollview时对滚动条进行任意位置的定位
在android开发中很多时候会遇到一屏显示不下所有内容的现象,那大家也知道这个时候肯定会想到用scrollview来进行滚屏显示。这个时候由于某些需求,会要求在最开始显示scrollview的时候就定位到某一处,这篇博文就是来讲这个的哈~首先,scrollView.scrollTo( x, y );这个方法是能对滚动条进行定位的,这个大家都知道。But,貌似很多时候这个方法的调用没有
2012-01-11 13:48:33 37085 3
原创 ScrollView滑动到最底端或者最顶端再加载数据
要实现一个功能:当Scrollview滑动到最底端的时候需要触发事件加载其他数据。很多人都以为ScrollView可以像ListViev那样setOnScrollListener,其实沒那么简单,因为ScrollView压根就没有该接口,在baidu上兜了一圈没有找到合适的答案,没办法只能google去了,居然一下子解决了这个问题,还是老外比较牛,呵呵,这是我访问的网址: http://sta
2012-01-11 09:29:34 10159 15
原创 Android ListView拖动时背景颜色会变成黑色 的解决办法
我们看看API 文档是怎么说通过查找API 文档找到这个函数public void setCacheColorHint (int color)Since: API Level 1When set to a non-zero value, the cache color hint indicates that this list is alwa
2012-01-09 10:35:45 1444
转载 android 中管理短信
为了看代码方便,一边在网上google资料,一边看Android java 源代码。偶然发现了一个类MmsSmsDatabaseHelper.java,原来android将所有的短信信息都存入了mmssms.db中。公开的SDK中没有这个类,不能直接使用。于是自己写了一个SQLiteOpenHelper,但是查询的时候发生SQL异常。看来不能为所欲为了,不过据网上资料介绍可
2012-01-06 15:21:57 1032
原创 Android中ListView,SQLite,BaseAdapter的结合
大家应该都有过一个想法,就是用listview结合自定义的Adapter来写一个结合SQLite数据库的工程~现在就写下了的哈~~~第一步:编写关于数据库的类和方法 DBHelper.java 代码如下:package com.jftt.db;import android.content.Context;import android.database.Cursor;i
2012-01-06 11:26:13 6811 1
原创 Android中 在显示ImageView时图片上面和下面都出现一段空白区间的解决办法
开始的时候是在ScrollView中显示ImageView的时候出现这样的问题,以为是要对ScrollView进行设置的,后来发现单独显示一个ImageView的时候也会出现这样的问题,由此才知道是应该对ImageView进行设置啦~解决办法如下喽~1、在XML文件中设置: android:adjustViewBounds="true"2、在Java代码中进行设置:
2012-01-05 13:55:59 6094 3
Handler+Service+Broadcast+ListView的综合使用
2011-11-05
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人