一叶梧桐

随笔分类 -  Framework(MTK)

实现Launcher默认壁纸、选择壁纸定制化功能
摘要:需求功能说明: 该定制需求为在系统中增加一个新的分区如myimage,用以实现存放定制资源。例如在myimage下新建wallpaper文件夹用于存放定制的墙纸图片资源,当Launcher加载默认墙纸或者选择设置墙纸时会优先从该路径下读取资源。第一部分:客制化默认壁纸: Launcher默认的壁纸... 阅读全文

posted @ 2014-11-20 09:44 一叶梧桐 阅读(347) 评论(0) 推荐(0)

Android锁屏或灭屏状态下,快速按两次音量下键实现抓拍功能(1.2Framework层使用startService形式实现)
摘要:如前一篇博文所分析,我们可以使用广播的形式在快速按下两次音量下键的时候发出广播,以方便客户端进行捕捉。既然有两种方式可以实现该Issue那么哪种方式是首选呢? 我个人推荐使用启动服务的方式,这样的话可以避免多次连续按键导致重复发送广播,而使用服务不会重复启动服务。具体实现方式如下:/frame... 阅读全文

posted @ 2014-11-14 16:31 一叶梧桐 阅读(412) 评论(0) 推荐(0)

Android锁屏或灭屏状态下,快速按两次音量下键实现抓拍功能(1.1Framework层使用广播形式实现)
摘要:实现思路: WindowManagerService循环读取下面按键消息并分发给窗口,在消息分发前会在PhoneWindowManager.interceptKeyBeforeQueueing方法中进行消息的过滤。因此该实现方式为在消息分发前的interceptKeyBeforeQueueing方... 阅读全文

posted @ 2014-11-11 11:20 一叶梧桐 阅读(627) 评论(0) 推荐(0)

修改Android系统属性SystemProperties.set("sys.powerctl", "shutdown")关机分析
摘要:简介: 从之前的博文中我们提到过,关机流程中最后是通过修改Android属性进行关机操作(SystemProperties.java通过JNI调用访问系统属性),当然我们也可以通过adb命令修改Android系统属性执行关机操作,例如adb shell setpro sys.powerctl ... 阅读全文

posted @ 2014-10-27 18:44 一叶梧桐 阅读(4167) 评论(0) 推荐(0)

android手动修改density(dpi)的方法
摘要:Android系统中会根据屏幕分辨率范围,制定默认的density,既320(xhdpi),那么我们也可以手动修改density。修改的方式在system.prop中修改ro.sf.lcd_density的值;例如ro.sf.lcd_density=480;我们可以使用adb命令查询该属性:adb ... 阅读全文

posted @ 2014-10-23 17:49 一叶梧桐 阅读(6257) 评论(0) 推荐(0)

解决内部存储空间紧张,不加载桌面壁纸,桌面壁纸显示
摘要:说明:当内部存储空间不足的情况下不加载壁纸,以节省资源。修改方式:在WallpaperManagerService.java中进行修改;思路:首先在加载壁纸之前我们需要判断当前存储空间是否紧张。代码如下:(源码地址)public boolean isStorageLow(){ try{ if(m... 阅读全文

posted @ 2014-10-21 18:05 一叶梧桐 阅读(737) 评论(0) 推荐(0)

Android Framework层Power键关机流程(二,关机流程)
摘要:二,关机流程 从前一篇博文我们知道,当用户长按Power键时会弹出(关机、重启,飞行模式等选项)对话框,我们点击关机,则会弹出关机确认对话框。那么从选项对话框到关机确认对话框又是一个什么流程呢。下面我们在简单分析一下: showGlobalActionsDialog()-->showDialog... 阅读全文

posted @ 2014-10-14 17:05 一叶梧桐 阅读(973) 评论(0) 推荐(0)

Android Framework层Power键关机流程(一,Power长按键操作处理)
摘要:一:Android处理Power按键长按操作 在Framework层中,Android4.x对Power键(KeyEvent.KEYCODE_POWER)的操作,我们从PhoneWindowManager开始分析,在分析前我这里打印了该方法的堆栈调用信息。大家可以参考一下。public long ... 阅读全文

posted @ 2014-09-23 10:01 一叶梧桐 阅读(3131) 评论(0) 推荐(0)

解决低电量自动关机时如果有来电自动关断电话
摘要:1.问题描述: 低电量时,由于系统已经无法继续提供通话服务,为了不影响通话服务质量或其它问题,因此在自动关机时应自动挂断电话2.解决思路: 在低电量自动关机时,如果此时有来电,调用挂断电话的接口,挂断电话。3.实现方式: BatteryService.java private void sh... 阅读全文

posted @ 2014-09-05 16:13 一叶梧桐 阅读(810) 评论(0) 推荐(0)

解决如何监听Activity切换
摘要:本篇博文在我之前的博文中已经提到了,但是监听Activity切换又可以作为一个单独的内容来叙述,因此这里又单独拿了出来进行赘述。 Activity的切换无非有两种,第一种:启动或者创建一个新的Activity;第二种:唤醒后台运行的Activity。因此如果我们能够成功监听到启动或者创建一个A... 阅读全文

posted @ 2014-08-29 15:40 一叶梧桐 阅读(1571) 评论(0) 推荐(0)

监听Android CTS测试项解决方案(二)
摘要:二,监听当前测试项是否是Accelerometer Measurement Test测试项 通过第一种方式介绍的,我们可以得到当前处于活动状态的Activity类似监听CTS测试当前的测试项。但是由于是监听Android系统中所有Activity,因此会大大降低系统的性能,因此这里有一种效率更高的... 阅读全文

posted @ 2014-08-29 15:22 一叶梧桐 阅读(514) 评论(0) 推荐(0)

监听Android CTS测试项解决方案(一)
摘要:前言: 首先这里需要详细叙述一下标题中”监听Android CTS测试项解决方案“的需求。这里的需求是指我们需要精确的监听到当前CTS测试正在测试的测试项。 因为我们知道CTS认证是获得Google推出的 Android 系统中 Android Market 服务的前提。CTS 兼容性测试的主要... 阅读全文

posted @ 2014-08-29 14:34 一叶梧桐 阅读(673) 评论(0) 推荐(0)

解决:在低电量关机的同时自动挂断电话电话
摘要:首先我们通过定位找到低电量自动关机的代码:相关类:service/java/com/android/server/BatteryService.java相关方法:shutdownIfNoPowerLocked()修改后代码(红色部分为关键代码):privatevoidshutdownIfNoPowe... 阅读全文

posted @ 2014-08-22 10:57 一叶梧桐 阅读(575) 评论(0) 推荐(0)