关闭

[置顶] Android 4.0 中由ProGuard引发的一场血案

案件还原:         修改Android 4.0源码中的Setting,添加一项功能之后,在eng模式下编译,一切正常,遂提交代码到服务器。第二天,传来噩耗,Setting上新添加的功能无法使用,一点击则报错。 案件分析:         上传代码之前,已经在本地编译测试过,咋会有错呢??!!管它三七二十一,操起adb logcat抓取log进行分析。不看不知道,一看吓一跳,log中显...
阅读(13302) 评论(20)

Android 5.1 Lollipop Phone工作流程浅析(十三)__InCallActivity启动Performance浅析

Google在2015年3月9日低调发布了Android 5.1,从官方博客的描述来看只是进行了小幅更新,如增加多SIM卡支持,HD Voice支持等。虽然Google对外声称只是稳定性和性能上的微调,但在查看Telephony Phone相关代码后,Android 5.1在这一块的动作还是很大的。...
阅读(6937) 评论(4)

Android 5.0 如何正确启用isLoggable(二)__原理分析

在前一篇文章《Android 5.0 如何正确启用isLoggable(一)__使用详解》中分析了isLoggable的使用方法,本文主要分析isLoggable实现原理以及user版系统root后永久enable isLoggable的原理,并使用脚本自动设置isLoggable相关属性。...
阅读(3588) 评论(0)

Android 5.0 如何正确启用isLoggable(一)__使用详解

在Android源码中,经常可以看到使用isLoggable来控制Log输出的代码,该方法可以非常方便的控制log输出,无论在user/userdebug/eng版本的系统中,isLoggable都能正常激活,便于开发者调试。...
阅读(11971) 评论(0)

Android 4.4 Kitkat Phone工作流程浅析(十二)__4.4小结与5.0概览

在Android 4.4 中,Google 对Telephony_Phone进行了重构,前面也通过一些列文章分析了Android 4.4 中Telephony Phone的工作流程。但在2014年10月15日,Google发布了Android 5.0 预览版,正式版也在一个月之后发布。Android 5.0 变化非常大,无论从UI风格还是功能实现上,Google都进行了大刀阔斧的修改。同时,Telephony_Phone模块的架构也再次进行了调整,调整之后的Telephony_Phone各个模块之间耦合性更...
阅读(13311) 评论(14)

How to check SnapDragon 810 supports DASH

Dynamic Adaptive Streaming over HTTP (DASH), also known as MPEG-DASH, is an adaptive bitrate streaming technique that enables high quality streaming of media content over the Internet delivered from conventional HTTP web servers. Similar to Apple's HTTP Li...
阅读(1823) 评论(0)

How To Make Bootanimation (Base on Android Source Code)

Android boot animation is contained within a an uncompressed zip file called bootanimation.zip that can be found in the media folder of the system partition i.e. /system/media on the internal memory of the device. When device boot up,/system/bin/bootanimat...
阅读(1959) 评论(0)

How to generate unique key on Android platform

Google Android default using testkey, so we can change to our release key...
阅读(1433) 评论(0)

VMware Ubuntu 12.04分区动态调整小记

在WMware中安装Ubuntu 12.04时,分区大小默认使用了20G,安装完成后根目录大小只有12G。因为一开始打算将源码放到单独挂载的分区中,所以觉得12G应该也足够。但在Android源码编译过程中遇到了空间不足的问题,源码编译最后会将相关的img文件压缩成zip包,这个步骤会暂时利用/tmp这个目录。因为根目录只有12G,再加上/home下存放了一点东西,Android源码编译最后打包时,提示根目录空间不足打包操作被终止。本文的目的是,动态调整分区大小,扩大根分区容量,避免Android编译无法打...
阅读(2827) 评论(0)

Android 4.4 Kitkat Phone工作流程浅析(十一)__PSensor工作流程浅析

本文主要分析了在InCallUI中PSensor如何控制屏幕的亮灭及其实现原理。全文分为三大部分,即:ProximitySensor初始化流程,ProximitySensor使用流程和PSensor工作流程。前两部分主要分析了上层应用如何使用PSensor提供的接口,第三部分则详细分析了PSensor如何控制屏幕的关闭/点亮。...
阅读(5857) 评论(6)

Android 4.4 Kitkat Phone工作流程浅析(十)__"通话显示"查询流程

无论是在MT (Mobile Termination Call被叫——来电),还是MO (Mobile Origination Call主叫——去电) 流程中,通话界面上都会显示当前通话的名称( 后文以displayName指代 )。通常情况下,如果是一个陌生号码,则会显示为该陌生号码。如果是已知联系人,则会显示该联系人的名称。当然,在会议电话( Conference Call )的情况下则直接显示"会议电话"。但是,在某些特殊情况下,displayName还会显示诸如"私人号码"、"公用电话"、"未知号码...
阅读(6468) 评论(3)

Android 4.4 KitKat NotificationManagerService使用详解与原理分析(二)__原理分析

在上一篇文章《Android 4.4 KitKat NotificationManagerService使用详解与原理分析(一)__使用详解》中详细介绍了NotificationListenerService的使用方法,以及在使用过程中遇到的问题和规避方案。本文主要分析NotificationListenerService实现原理,以及详细分析在上一篇文章中提到的相关问题和产生的根本原因。...
阅读(10748) 评论(11)

Android 4.4 KitKat NotificationManagerService使用详解与原理分析(一)__使用详解

NotificationListenerService是Android 4.3 之后新增的接口服务,用于获取系统Notification信息,这在之前的Android版本是无法直接办到的。在Android 4.4中,增加了Notification.extra变量,使得获取Notification相关信息更加丰富,这些接口的开放更加利于三方应用的使用,但同时也会带来一些隐私问题。本文对NotificationListenerService的使用进行了分析,如果觉得不错请推荐一下吧 :)...
阅读(26776) 评论(18)

Android中对闹钟Alarm的事件处理

本文主要描述了如何控制Android闹钟,简介清晰...
阅读(11184) 评论(0)

Android 4.4 Kitkat Phone工作流程浅析(九)__状态通知流程分析

当手机Modem状态改变后会将状态变化信息通知到上层,通过《Android 4.4 Kitkat Phone工作流程浅析(八)__Phone状态分析》和《Android 4.4 Kitkat Phone工作流程浅析(六)__InCallActivity显示更新流程》的分析,我们知道了Phone状态的类型,以及这些状态的上报流程,而本文主要分析Phone状态改变之后是如何通知到三方应用的。...
阅读(13113) 评论(2)

Android 4.4 Kitkat Phone工作流程浅析(八)__Phone状态分析

Call的状态分为6种:ACTIVE、HOLDING、DIALING、ALERTING、INCOMING、WAITING。这里的依据是什么呢?在Google AOSP代码中,我们可以看到google使用的是AT+CLCC的方式来获取当前通话信息的,CLCC的状态描述总共有6种,也就是:active(0)、held(1)、dialing(2)、alterting(3)、incoming(4)、waiting(5),括号里为状态对应的数值,关于AT+CLCC的指令描述,请大家参考相关AT文档。这些状态值由Mod...
阅读(12189) 评论(4)

Android 4.4 Kitkat Phone工作流程浅析(七)__来电(MT)响铃流程

本系列文章以MT/MO为主线流程,并对其中的细枝末节进行补充说明,比如来电响铃流程。在MT流程的分析中已经涵盖了流程的发起与终止,本文所描述的响铃流程始于MT流程的发起,如对MT流程不熟悉的童鞋请查看文章《Android 4.4 Kitkat Phone工作流程浅析(五)__MT(来电)流程分析》以及《Android 4.4 Kitkat Phone工作流程浅析(六)__InCallActivity显示更新流程》。...
阅读(10927) 评论(3)

Android 4.4 Kitkat Phone工作流程浅析(六)__InCallActivity显示更新流程

在整个MO/MT流程的分析过程中,遗漏了很多细枝末节,在弄清楚整个MO/MT的始末之后,便发现有一些疑问疑问,因此打算陆陆续续分析一些遗漏的细节。本篇文章的发起缘由很简单,就是想知道InCallActivity是如何显示和更新的,通过分析后发现,现在Android 4.4 的界面更新也是从Modem状态改变发起,并不像以前那样直接更新显示界面。...
阅读(14967) 评论(6)

Android 4.4 Kitkat Phone工作流程浅析(五)__MT(来电)流程分析

上一篇文章简单分析了RILJ的工作流程,实际上MTK对于RILJ的改动还是较大的,添加了很多request和respone类型。对于MT(来电)来讲,首先还是会由Modem接收到信息,然后发给RILC,RILC再发送给RILJ,并在RILJ的RILReceiver中接收到并进行处理。MTK对于Modem侧的AT指令进行一些定制,这和AOSP原生使用CLCC方式后去来电信息不同,MTK这里使用了自己添加的AT指令ECPI来反馈通话状态改变的信息。后面会针对MTK的log进行一个简单的分析,根据log来分析 M...
阅读(17118) 评论(8)

Android 4.4 Kitkat Phone工作流程浅析(四)__RILJ工作流程简析

本文来自http://blog.csdn.net/yihongyuelan 转载请务必注明出处        本文代码以MTK平台Android 4.4为分析对象,与Google原生AOSP有些许差异,请读者知悉。 前置文章: 《Android 4.4 Kitkat Phone工作流程浅析(一)__概要和学习计划》 《Android 4.4 Kitkat Phone工作流程浅析(二)_...
阅读(13645) 评论(1)

Android 4.4 Kitkat Phone工作流程浅析(三)__MO(去电)流程分析

本文以MTK Android 4.4 源码为模板,分析了Android 4.4 拨号流程。 MTK在Android的原生的基础上添加了很多功能,比如VideoCall, 来电/去电归属地等等,这些功能是Android原生所不具有。MTK在加入这些功能的同时,为了方便后续移植使用了一套自己的架构即pluginManager ( Phone中使用ExtensionManager从PluginManager中获取实例,Contacts也使用同样的方式 )。 什么是PluginManager呢?...
阅读(23358) 评论(11)
64条 共4页1 2 3 4 下一页 尾页
    个人资料
    • 访问:782950次
    • 积分:7837
    • 等级:
    • 排名:第2653名
    • 原创:60篇
    • 转载:0篇
    • 译文:4篇
    • 评论:433条
    文章分类
    最新评论