- 博客(25)
- 资源 (1)
- 收藏
- 关注
instanceof 运算符详解
instanceof是运算符只被用于对象引用变量,检查左边的被测试对象是不是右边类或接口的实例化。这里有两个方面进行解释:1.语法:针对声明的类声明被测试对象的类必须与右边类,要么是继承关系,要么是接口关系,否则会报错。如下: [code="java"] public void TA(Cloneable e){ if(e instanceof S...
2011-07-25 23:30:32
297
原创 Bitmap 详解(1)- 提高Bitmap解析速度( Resources , BitmapFactory , AssetManager ,主题定制 )
图片是应用里面最常用的资源,在canvas里面使用需要将其解析成Bitmap的方式(例如倒影效果)。这里给出几个可能会有的场景,探讨一下如何使用:应用主题转化:当某个应用希望换掉整个生命周期中的一些背景图片,例如从卡通主题转化到草原主题,这样会涉及到Button、Tab、Layout等各式各样图片的替换。动画播放:例如关机动画、闹铃提醒(当然简单的动作除外) 转载请注明http://ishelf.iteye.com/blog/1032563 场景一中,可以通过apk升级来实现
2011-05-05 23:50:00
805
Bitmap 详解(1)- 提高Bitmap解析速度( Resources , BitmapFactory , AssetManager ,主题定制 )...
图片是应用里面最常用的资源,在canvas里面使用需要将其解析成Bitmap的方式(例如倒影效果)。这里给出几个可能会有的场景,探讨一下如何使用:应用主题转化:当某个应用希望换掉整个生命周期中的一些背景图片,例如从卡通主题转化到草原主题,这样会涉及到Button、Tab、Layout等各式各样图片的替换。动画播放:例如关机动画、闹铃提醒(当然简单的动作除外) ...
2011-05-05 23:43:46
299
SystemServer Serivce 启动 与 获取 (addService ,checkService )
在系统启动的时候,会做一系列初始化的工作包括service的创建。所以要了解系统中有多少种类的服务,每一类的服务都是如何实现的,这是一个最好的入口。这就直接从代码入手进行解析: 转载请注明(http://ishelf.iteye.com/blog/1027886) 首先在SystemServer的run方法中,有如下代码 tr...
2011-05-04 00:04:23
514
Email 源码解析-- MailTransport ( socket , SocketAddress )
在Email的登录界面,需要配置各种的邮箱。其通信是使用的socket方式进行,具体代码可以参考MailTransport的open方法。 转载请注明http://ishelf.iteye.com/blog/1022652 /** * Attempts to open a connection using the Uri supplied for c...
2011-04-28 23:26:55
866
ShutdownThread - 关机音乐 (.ogg , SystemProperties)
关机时候有两种方式可以播放音乐,它们各有优劣,这里给出这两个方法并进行简单的分析: 1.使用系统提供的命令进行播放,代码如下 SystemProperties.set("ctl.start", "haltsound"); 此方法类似于开机动画一样,可以通过adb shell中的命令进行调用。命令序列如下adb shell adb shell #se...
2011-04-21 23:09:46
187
ShutdownThread - 动画 & 音乐
在android原生的关机流程里面是没有声音和 自定义动画的借口,因此为了实现这两个功能需要找到相应的地方并采用合适的方式进行处理。 在关机的ShutdownThread类里面有两个很重要的方法,一个是beginShutdownSequence,解析如下: private static void beginShutdownSequence(Conte...
2011-04-20 23:05:32
433
这里准备一下吧
好几个月都没有更新blog了, 公司上不了网, 电脑也最近才弄好, 做了那么多事也需要记录一下了。 尤其这几天去面试, 不缺乏3年4年的人, 居然被我问住了, 心里太郁闷了。 都说人不好招,现在是深有体会, 只做不想的人太多了去了,自己做过的都能被别人问住,神啊! 从今天起我这还是继续写blog了...
2011-04-19 22:44:14
97
Launcher 桌面的3D转屏效果实现(2)- Camera rotate
上篇主要是通过人工方式给出所要变形的matrix,而这篇则借助于camera进行变换得到matrix直接应用到cellLayout中去,不多说了直接代码带解释 转载请注明http://ishelf.iteye.com/admin/blogs/836955 @Override public void dispatchDraw(Canvas canvas...
2010-12-08 18:45:30
136
Launcher 桌面的3D转屏效果实现(1)-matrix setPolyToPoly
从现有方法来讲为了实现桌面的3D转屏效果主要是通过Launcher中的workspace实现(现有的有源码的方法),具体实现见: http://www.eoeandroid.com/viewthread.php?tid=27079&extra=&page=1 (写这篇文章也是为了“报答”该作者开源的贡献,共同学习) 不过该方法存在以下几个问题:不...
2010-12-08 18:12:20
441
源码修改中出现的BadTokenException & Dialog的修改和继承 & 2.2源码中分辨率hdpi设置...
一般来说修改Dialog界面的颜色、背景之类的元素主要涉及的是资源文件修改,不存在源码修改。这里需要提及若是增加或者替换了图片,这里使用make -j2是识别不出来的,为了让其进行最小的编译可以有选择删除下面路径的文件 out\target\common\obj\APP\framework-res_intermediates 以上没有涉及Dialog布局方面...
2010-11-11 17:56:40
144
public.xml current.xml 使用心得(frameworks\base\core\res\res\values)
在public.xml中资源数据的定义会影响到current.xml文件,它们分别在frameworks\base\core\res\res\values和frameworks\base\api\current.xml中 当进行内核文件修改时,需要特别注意public.xml文件的同步,该文档定义了资源文件的二进制兼容性。因此需要小心对待该文件,否则可能会破坏该版本的向后兼容性...
2010-11-03 17:12:11
456
原创 android frameworks 文件夹(修改心得1)
1..怎么添加一个新的应用和修改原有的应用 这里查看http://www.cnblogs.com/zhangweia/archive/2010/08/19/1803445.html,有详细介绍。需要主要以下几点: 输入命令的顺序,每当修改添加或修改一个文件时,需要重新编译一次,不过当级联的错误过多时就需要级联到别的目录去执行mm命令。我比较懒直接采用网上说的另一种方法,删...
2010-11-02 17:55:39
714
music player:二(SeekBar,drawable/thumb,drawable/seekbar_style)---样式
这里实现了如下所示的进度条进度条如线状显示,带有少许发散效果拖拽按钮用圆显示,采用发散效果。(类似太阳的效果) 这个效果主要有这样几个难点:进度条的高度会随着seekbar的宽度变化,然而seekbar宽度过小又会遮罩住部分拖拽按钮;拖拽按钮使用shape方式生产,而非图像。网上给的这部分介绍基本采用了一个版本,具体介绍见http://bashenmail.ite...
2010-08-19 17:46:38
162
music player:一(歌词显示,LyricView,Canvas)---自动滚动
网上androi播放器虽然挺多,感觉提供的歌词显示功能比较死板,要么搜索给的条件死死的,要么放置sdcard内部的歌词格式需要统一,应该提供类似文件夹浏览的功能。^_^,不过在这之前先搞定歌词的现实界面: 转载请注明http://ishelf.iteye.com/admin/blogs/740402 播放器的歌词界面实现以下几个功能...
2010-08-18 17:54:45
515
原创 android播放器(music player)源码分析5(在线播放功能)
根据上一篇文章中对百度MP3页面的解析,生成如下格式的xml文档。<?xml version="1.0" encoding="UTF-8" standalone="no" ?> - <Result>- <Catagory cID="0"> 歌手排行 <SubCatagory Rank="1&quo
2010-08-12 17:53:54
133
android播放器(music player)源码分析4(StreamStarter,URLEncoder)
上一篇完成了百度MP3大类和小类的解析抽取,进一步需要进行歌曲资源抽取。例如抽取某个歌手的所有热歌,这里需要注意一点:url中如果包含有中文字符或者其他的一些特殊字符,例如空格,需要进行处理否则无法连接到网页(使用URLConnection)。比如http://mp3.baidu.com/singerlist/周杰伦.html。这里使用了一下代码进行处理: try { mOnl...
2010-08-11 18:16:04
217
android播放器(music player)源码分析3(页面解析,ArrayListCursor)
一。首先介绍ArrayListCursor的使用,该类的可以将ArrayList包装为cursor,从而实现的游标适配器。这里重载了ArrayListCursor,生成一个可以包装自定义数据结构的游标。 public ArrayListCursor(String[] columnNames, ArrayList<ArrayList<Object>> rows,Str...
2010-08-10 17:39:28
131
原创 辞典-源码分析(成语词典)
汉语辞典项目中主要设计到几个方面技术的研究 拼音和汉字索引 文件读写一).拼音索引 成语数量在1300的数量级上,其仅仅通过sqlite进行查询耗时较多,没有索引的数据库进行查询时做遍历操作。然而在数据库的基础上建立的索引虽然可以提高效率,然而该索引过于通用。因此这里给简拼和汉字建立独立的索引,实现词典的实时检索跟进。 在简拼和汉字索引使用的是两级索引结...
2010-08-05 21:30:37
572
原创 汉语词典开发-assets,raw的InputStream数据流操作(文件分割合并)
文件移动一.在应用中由于种种原因需要将一些外部文件放在assets或者raw文件夹内,以便进一步使用。这两个文件夹有以下的区别和联系:都是以数据流的形式进行读取,从而导致Java中其他的一些读取方式不能很好的作用在这些文件上面,例如RandomAccessFile、FileReader等之类的类。如果由于需要需要使用基于文件...
2010-07-29 17:38:34
177
原创 android播放器(music player)源码分析2(BaseExpandableListAdapter, SimpleCursorTreeAdapter
1)SimpleExpandableListAdapter和BaseExpandableListAdapter 其构造函数接受八个参数this(context, groupData, expandedGroupLayout, collapsedGroupLayout, groupFrom, groupTo, childData, childLayout, l...
2010-07-26 18:03:31
114
原创 android播放器(music player)源码分析1-Service,Binder,ServiceConnection
Android SDK提供了两种类型的Service,用于类似*nix守护进程或者windows的服务1. 本地服务Local Service :用于应用程序内部2. 远程服务Remote Service :用于android系统内部的应用程序之间前者用于实现应用程序自己的一些耗时任务,比如查...
2010-07-21 16:19:33
164
原创 (转)android manifest.xml中元素含义
转自http://blog.youkuaiyun.com/wbw1985/archive/2009/11/24/4862319.aspx 是否允许activity更换从属的任务,比如从短信息任务 切换到浏览器任务。 -------------------------------------------------------------------------------------- androi...
2010-07-20 14:48:47
156
原创 android-sdcard文件 删除
adb remountadb shellcd sdcardls(将列出所有文件夹)rm -r (文件夹名称)这样就行了!比较简明,但是已经足够了!
2010-07-19 17:40:13
220
原创 文件读写--(汉语词典开发)
在android系统中,外部文件有两种存储方式:内置于asset和raw文件夹内。然而系统只提供了InputStream的读接口。java中常用的RandomFileAccess和FileReader等不能不能直接实现InputStream接口。经过查阅网上提供了以下两种折中的方法用来实现以上接口:方法一: InputStream转FileReader(http://st...
2010-07-19 16:38:59
132
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人