android系统源码学习
文章平均质量分 89
idaretobe
1.熟悉Android应用开发框架,能独立开发高性能的Android应用;精通Android 开发平台及框架原理,熟悉用户UI开发,网络编程,多线程,性能优化;熟悉OOA/OOD等设计方法;熟悉多线程、http/xml协议,Socket等技术,有扎实的Java语言基础,理解面向对象设计的基本原则,熟悉并能灵活运用常用的设计模式; 2.具有强烈的责任心和团队精神,工作尽职尽责,善于合作,吃苦耐劳,能在高强度的压力下工作; 3.具备良好的分析解决问题能力,独立承担任务和系统进度把控能力; 4.具有较强的自学和创新能力、逻辑分析和统筹规划能力,掌握新知识和新技术的能力。
展开
-
听说你Binder机制学的不错,来面试下这几个问题
听说你Binder机制学的不错,来面试下这几个问题转载 2022-12-12 21:28:59 · 838 阅读 · 0 评论 -
Replugin源码及原理深度剖析--唯一Hook点原理
Replugin源码及原理深度剖析--唯一Hook点原理转载 2022-11-06 22:46:41 · 627 阅读 · 0 评论 -
RePlugin源码及原理深度剖析
RePlugin源码及原理深度剖析转载 2022-11-06 22:07:14 · 1869 阅读 · 1 评论 -
Android Camera数据流分析全程记录(非overlay方式)
http://blog.chinaunix.net/uid-26941022-id-3996501.html花了不少时间在这个数据流的分析上面,自己毕竟没怎么做过android,这里记录一下自己的见解,任何理解错误还望高人指教,以后还需慢慢纠正整个分析过程从app的onCreate开始:packages/apps/OMAPCamera/src/com/ti/omap4/android/ca转载 2014-12-16 11:57:34 · 967 阅读 · 0 评论 -
Android进程间通信(IPC)机制Binder简要介绍和学习计划
在Android系统中,每一个应用程序都是由一些Activity和Service组成的,这些Activity和Service有可能运行在同一个进程中,也有可能运行在不同的进程中。那么,不在同一个进程的Activity或者Service是如何通信的呢?这就是本文中要介绍的Binder进程间通信机制了。 我们知道,Android系统是基于Linux内核的,而Linux内核继承和兼转载 2014-12-28 22:48:18 · 456 阅读 · 0 评论 -
Android进程间通信(IPC)机制Binder简要介绍和学习计划
在Android系统中,每一个应用程序都是由一些Activity和Service组成的,这些Activity和Service有可能运行在同一个进程中,也有可能运行在不同的进程中。那么,不在同一个进程的Activity或者Service是如何通信的呢?这就是本文中要介绍的Binder进程间通信机制了。本博参加博客之星评选,求投票:点击投票 我们知道,Android系统是转载 2015-01-08 20:16:51 · 485 阅读 · 0 评论 -
Android之View.onMeasure方法
View在屏幕上显示出来要先经过measure(计算)和layout(布局).1、什么时候调用onMeasure方法? 当控件的父元素正要放置该控件时调用.父元素会问子控件一个问题,“你想要用多大地方啊?”,然后传入两个参数——widthMeasureSpec和heightMeasureSpec.这两个参数指明控件可获得的空间以及关于这个空间描述的元数据.更好的方法是你传递Vi转载 2014-12-12 19:04:15 · 504 阅读 · 0 评论 -
Android WebView 安全漏洞
Android的SDK中提供了一个WebView组件,用于在应用中嵌入一个浏览器来进行网页浏览。WebView组件中的addJavascriptInterface方法用于实现本地Java和JavaScript的交互。这个方法可以通过js脚本在本地执行任意Java代码,从而以当前用户身份执行任意命令。尽管Android官方已经提醒了此功能在访问不可信网页内容时存在严重安全风险,很多应用开发人转载 2014-09-09 15:19:48 · 1485 阅读 · 0 评论 -
android.hardware.Camera
camera类用来设置图像的配置,启动或者停止预览,抓图,和为图像编码找回帧图。这个camera类是作为camera服务的客户端,是用来控制真实的摄像硬件。 要访问摄像设备,你必须在manifest里面申明camera权限,必须保证包括元素,比如你要使用摄像和自动对焦功能,你的manifest必须包括如下内容: 要通过此类来实现照相功能,你转载 2014-12-05 18:28:27 · 1382 阅读 · 0 评论 -
深入安卓Package Manager和Package Installer
摘要 我们每天都在安装和卸载APK(安卓应用程序包文件),或许一天会有好几次,但是你有想过下面问题吗? 什么是Package Manager(包管理器)和Package Installer(程序安装包)? APK文件保存在Android的哪个地方? APK文件安装过程的细节是怎样的? Package Man来源 http://blog.jobbole.com/67286/我们每转载 2014-12-12 19:17:51 · 722 阅读 · 0 评论 -
Android应用程序组件Content Provider在应用程序之间共享数据的原理分析
在Android系统中,不同的应用程序是不能直接读写对方的数据文件的,如果它们想共享数据的话,只能通过Content Provider组件来实现。那么,Content Provider组件又是如何突破应用程序边界权限控制来实现在不同的应用程序之间共享数据的呢?在前面的文章中,我们已经简要介绍过它是通过Binder进程间通信机制以及匿名共享内存机制来实现的,在本文中,我们将详细分析它的数据共享原理。转载 2015-01-12 19:06:28 · 1319 阅读 · 0 评论 -
Linux Kernel and Android 休眠与唤醒
这是在网上看到的,关于linux电源管理说的比较清楚的还真不多。这篇不错,转过来。正好这几天在研究android电源管理机制。简介国际化版本信息对于休眠(suspend)的简单介绍Linux Suspend 的流程相关的文件:准备, 冻结进程让外设进入休眠ResumeAndroid 休眠(suspend)涉及到转载 2015-04-16 22:20:40 · 691 阅读 · 0 评论 -
Android Launcher分析和修改2——Icon修改、界面布局调整、壁纸设置
上一篇文章说了如何修改Android自带Launcher2的默认界面设置(http://www.cnblogs.com/mythou/p/3153880.html)。 今天主要是说说Launcher里面图标、布局、壁纸等的设置问题。毕竟我们一般修改Launcher,这些都是需要修改的地方,也是比较容易修改的部分。按照效果图(效果图在上一篇文章),分开说明如何修改,以及里面涉及的逻辑分转载 2014-09-03 20:19:56 · 759 阅读 · 0 评论 -
VIEW绘制流程–BASED ON KITKAT
从Acitivty的启动开始,我们就看到setContentView(见从setContentView()谈起)是如何创建和初始化的,但不清楚视图View如何添加到窗口以及绘制到窗口的,那下面我们就一起来看一下视图View是如何绘制的。1. VIEW绘制的触发可能很多人看过一些文章或者书籍,大概都知道ViewRootImpl.performTraversals()是绘制的开始关键方法调转载 2014-10-17 20:52:29 · 637 阅读 · 0 评论 -
下载网络文件HttpURLConnection.getContentLength()大小为 -1
做一个andriod系统,测试的时候是在android 2.2系统上测试的一切正常,等发布的时候发现个小问题,就是当程序有更新时,需要重新下载APK,为了友好,做了个进度条,但是在 2.2以上的系统中进度条不会走动,部分代码如下: HttpURLConnection conn = (HttpURLConnection)url.openConnection(); conn.conne原创 2014-08-20 19:57:44 · 3923 阅读 · 2 评论 -
如何在WebView中让JS与Java安全地相互调用
在现在安卓应用原生开发中,为了追求开发的效率以及移植的便利性,使用WebView作为业务内容展示与交互的主要载体是个不错的折中方案。那么在这种Hybrid(混合式) App中,难免就会遇到页面JS需要与Java相互调用,调用Java方法去做那部分网页JS不能完成的功能。网上的方法可以告诉我们这个时候我们可以使用addjavascriptInterface来注入原生接口到JS中,但是在安卓4转载 2014-09-09 15:20:49 · 1054 阅读 · 0 评论 -
Android冰淇淋三明治ICS(4.0+)JNI局部引用的变化
这篇文章的内容实际是在我发现一个项目bug后寻找解决方案时找到的,当时项目原有target为8(ICS 4.0之前的2.X版本),在4.0+的S3上运行一切正常,而后target升级到14时再在S3上运行时就会出现类似如下的native crash:05-13 14:07:13.139: E/dalvikvm(22265): JNI ERROR (app bug转载 2014-09-22 19:11:53 · 586 阅读 · 0 评论 -
[译]Android冰淇淋三明治ICS(4.0+)JNI局部引用的变化
这篇文章的内容实际是在我发现一个项目bug后寻找解决方案时找到的,当时项目原有target为8(ICS 4.0之前的2.X版本),在4.0+的S3上运行一切正常,而后target升级到14时再在S3上运行时就会出现类似如下的native crash:05-13 14:07:13.139: E/dalvikvm(22265): JNI ERROR (app bug): attem转载 2014-09-22 19:14:15 · 636 阅读 · 0 评论 -
Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
在前文中,我们分析了Android应用程序窗口的运行上下文环境的创建过程。由此可知,每一个Activity组件都有一个关联的ContextImpl对象,同时,它还关联有一个Window对象,用来描述一个具体的应用程序窗口。由此又可知,Activity只不过是一个高度抽象的UI组件,它的具体UI实现其实是由其它的一系列对象来实现的。在本文中,我们就将详细分析Android应用程序窗口对象的创建过程。转载 2014-09-24 14:53:07 · 397 阅读 · 0 评论 -
Android4.2新特性及新增API
Android 4.2 系统,名字仍为 Jelly Bean。以下是 Android 4.2 的新特性汇总。 无线视频Android 4.2 支持 Miracast 影像传输协议。据 The Verge 介绍,这是一种符合业界标准的 Wifi 显示共享协议。这个功能可以让 Nexus 4 等新设备将音频、视频无线传输到电视上去,你可以把它理解为“开放版本的 AirPlay”。转载 2014-09-28 20:04:38 · 644 阅读 · 0 评论 -
Google 披露 Android 5.0 的三大安全特性
一根甜甜的棒棒糖,外加上坚韧的凯夫拉包装。这是 Google介绍 新版 Android 5.0(代号棒棒糖)的新安全功能时用的说辞。本月中旬发布的Android 5.0是 Android 史上最大的一次更新。新版的 Android 有很多引人注目的特性,如 Material Design 设计语言、改进电池能效和运行效率、提供多用户支持等,而且 Google 随后也发布了开发者工具包。 相原创 2014-10-31 19:27:34 · 725 阅读 · 0 评论 -
Android 源码开发调试方法
最近忙修改Launcher,不知道大家都是怎么做开发和调试的,可能遇到最大的问题就是源码太大,打开很慢,修改的时候也很慢。调试更是需要打日志,重新编译,痛苦不堪。最近学到一个方法,不知道是不是自己out了,拿出来和大家分享一下。1.准备首先你应该有如下环境:eclipse,Android任意版本源码一套,jdk(版本满足源码标准即可)2.修改eclipse配置在ec转载 2014-10-17 20:52:28 · 524 阅读 · 0 评论 -
Android控件绘制过程
首先,在activity 类中(activity.java),我们可以看到两个变量,分别是: private Window mWindow; private WindowManager mWindowManager;这两个变量在attach函数中进行赋值, mWindow = PolicyManager.makeNewWin原创 2014-10-17 20:47:09 · 506 阅读 · 0 评论 -
Android中的Handler, Looper, MessageQueue和Thread
前几天,和同事探讨了一下Android中的消息机制,探究了消息的发送和接收过程以及与线程之间的关系。虽然我们经常使用这些基础的东西,但对于其内部原理的了解,能使我们更加容易、合理地架构系统,并避免一些低级错误。对于这部分的内容,将分成4小节来描述:1.职责与关系2.消息循环3.线程与更新4.几点小结--------------------------转载 2014-10-10 19:41:24 · 410 阅读 · 0 评论 -
Android系统adb_shell命令大全!
摘要: SDK的Tools文件夹下包含着Android模拟器操作的重要命令adb,adb的全称为(Android Debug Bridge就是调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序。借助这个工具,我们可以管理设备或手机 ...【技术交流贴】【第一篇】:android的logcat详细用法:【第二篇】:如原创 2014-09-12 20:34:47 · 1220 阅读 · 0 评论 -
android手机几个目录的介绍
看到很多android用户搞不清楚自己手机里这些目录到底是干什么的,索性就一一解释清楚,当然也会涉及到系统软件和用户自己的软件的区分,以及app2sd(软件搬家:从内存搬到SD卡)方面的知识/system 存放的是rom的信息; /system/app 存放rom本身附带的软件即系统软件; /system/data 存放/system/app 中核心原创 2014-09-12 20:38:42 · 617 阅读 · 0 评论 -
Eclipse+CDT+GDB调试android NDK程序
Eclipse+CDT+gdb调试android ndk程序先介绍一下开发环境,在这个环境下,up主保证是没有问题的。ubuntu 11.10eclipse 3.7(indego) for javajdk 6android sdk 2.2andrid ndk r7 当然,在windows环境下通过cygwin等工具也是可以实现gdb调试的,我也确实实现过。但是性能实在太转载 2014-02-09 21:32:46 · 596 阅读 · 0 评论