![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android系统学
文章平均质量分 58
Frank_de_Boer
Android Camera开发工程师
展开
-
Android笔记---Binder
Binder是Android中使用最广泛的IPC机制,用于进程间通讯。通过计算机网络,可以将Binder机制的各个元素进行一下映射: - Binder 驱动—路由器 - Service Manager—DNS - Binder Client—客户端 - Binder Server—服务器Binder的原理可以概述为,进程1(客户端)希望与进程2(服务器)互相访问,但是由于跨进程(跨网原创 2017-03-01 11:24:40 · 384 阅读 · 0 评论 -
Android广播知识详细解释
广播是Android四大组件之一(Activity、Service、BroadcastReceiver、ContentProvider),在开发中应用广泛,下面是开发过程中对广播相关知识的总结。1、广播的原理2、广播的注册3、广播的分类1、广播的原理广播接收器有两个端,一个是发送端,一个是接受端,整个框架是订阅模式。当调用接口发送广播消息后,AMS会将该消息转发...原创 2018-05-07 10:22:56 · 496 阅读 · 0 评论 -
Android Camera previewFrame 提高 fps
在做Camera预览的时候,通过PreviewFrame()方法获取数据,但是发现fps很低,一直在10~12fps徘徊。 当然,有人推荐使用setPreviewCallbackWithBuffer。试了一下,fps没有明显的提升。虽然没有提升,但还是加上吧,避免camera频繁的创建/销毁内存,引起gc。 在stack上搜索,发现一个4.0以后的方法(应该可以了,谁还在开发4.0原创 2018-02-07 11:04:39 · 4087 阅读 · 0 评论 -
Android 开机动画客制化
Android开机动画总共有三个过程。第一个开机动画是在Kenel启动时显示的,第二个开机动画是在init进程启动时显示的,这两个都是静态图片。第三个动画是在系统服务启动过程中显示的,他是一个动态图片,也是我们关注比较多的动画。 关于动画的播放,主要涉及frame buffer的知识,可以参考老罗的分析http://blog.csdn.net/luoshengyang/article/deta原创 2017-05-03 14:22:06 · 2088 阅读 · 0 评论 -
Android 耳机事件传递流程
在项目中,遇到问题:插入不带麦耳机,状态栏显示仍然是带麦图标。 解决此问题涉及到耳机的拔插事件传递流程,在此分析一下Android系统,耳机拔插流程源码分析。Android系统的耳机目前可以实现拍照、暂停/播放、打电话等功能,这一切的基础是耳机拔插成功,结合InputManagerService的相关知识,主要从framework层面分析耳机插拔事件的传递。一、驱动层的事件上传使用adb 命令可以原创 2017-06-25 21:26:21 · 2588 阅读 · 1 评论 -
Androd6.0 CameraService服务启动流程
以CameraService这个系统服务为例,在Android 6.0以前,CameraService启动是在frameworks\base\media\mediaserver\Main_MediaServer.cpp下有个main函数,可以用来注册媒体服务。没错就是在这里,CameraService完成了服务的注册。int main(int argc, char** argv){ sp<原创 2017-04-14 16:17:49 · 1703 阅读 · 0 评论 -
Android Service不被杀死---守护进程
简介相信做Android的兄弟们经常会提出这样的要求,我们能不能让我们的程序在后台运行且不停的采集数据,我们给我的答案是能——-service可以做到这样的事,那我们能不能让我们后台运行的程序不要轻易被系统回收呢?———-这个有点难:下面我就正对如何不被系统回收提高service优先级来聊一聊。方案方案一:将service设置为前台service,这样的做会在前端弹出一个notification切是转载 2017-04-06 14:11:43 · 1697 阅读 · 0 评论 -
编程经验
1、遇到的问题如果在stackoverflow上面有,那基本就有戏了。原创 2017-04-06 14:16:17 · 301 阅读 · 0 评论 -
Android 基础知识---Activity生命周期
一、Activity生命周期图 **onCreate():**activity第一次被创建时调用。在这里你应该完成所有常见的静态设置工作——创建view、绑定list数据等等。 本方法传入一个包含了该activity前一个状态的Bundle对象(如果之前已捕获了状态的话,详见后面的保存Activity状态)。 **onRestart():**activity被停止后、又再次被启动之前调用。 *原创 2017-04-06 10:13:38 · 377 阅读 · 0 评论 -
ActivityManager 分析
一、ActivityManagerService启动阶段 AMS是在系统启动的init2阶段,由SystemServer启动的Java服务之一。 // Activity manager runs the show. //第一阶段:启动ActivityManagerService mActivityManagerService = mSystemServiceManager.startS原创 2017-04-13 18:11:58 · 677 阅读 · 0 评论 -
Android基于HLS和RTMP协议的第三方SDK选择
转: Android基于HLS和RTMP协议的第三方SDK选择转自: http://isunxu.xyz/android/between-rtmp-and-hls-third-party-choice/协议的详解网上资料都太多了,我就不赘述了。Android上3.0开始支持hls,但在4.0以后就支持的不太好了。而对rtmp来说,Android是默认不支持的。网上有一些第三方库支持这两种协议,下面就转载 2017-04-05 17:00:21 · 684 阅读 · 0 评论 -
Android 基础知识
一、Android的Activity什么时候会调用onCreate()而不调用onStart()?原创 2017-04-05 16:59:48 · 388 阅读 · 0 评论 -
Android7.0 系统启动流程---system_server
今天主要分析Android启动流程,重点是system_server相关知识。一、Android系统启动流程Android正常启动流程如下: Step1 系统加电,执行bootloader。Bootloader负责初始化软件运行所需要的最小硬件环境,最后加载内核到内存。 Step2 内核加载进内存后,将首先进入内核引导阶段,在内核引导阶段的最后,调用start_kenel进入内核启动阶段。s原创 2017-04-16 18:36:15 · 4190 阅读 · 0 评论 -
Android Binder 全解析(3) -- AIDL原理剖析
Android Binder 全解析(3) -- AIDL原理剖析摘要本文是 Android 系统学习系列文章中的第二章节,在前面一些细节概念的铺垫下,大体上知道 Binder Framework 是怎么运作的,在这边文章中,将详细说明下 Binder Framework 的具体实现,这一套机制如何盘活整个 Android 系统。对此系列感兴趣的同学,可以收藏这个链接 An转载 2017-04-11 11:13:36 · 686 阅读 · 0 评论 -
Android Binder 全解析(1) -- 概述
Android Binder 全解析(1) -- 概述摘要如果各位玩过《炉石传说》,那么可能对法师的职业卡「不稳定的传送门」很有印象,特别是没有欧洲玩家,经常能够拿到其他职业的强力单卡。Android 也提供了传送门,让我们可以像使用本地方法一样,调用其他进程的方法,他有一个响亮的名字,Binder! Binder 在 Android 是如此的重要,承当起整个Android转载 2017-04-11 11:12:02 · 345 阅读 · 0 评论 -
Android Binder 全解析(2) -- 设计详解
Android Binder 全解析(2) -- 设计详解摘要在上一篇文章中介绍了什么是Binder? 为什么我们需要它?在这一篇文章中,将通过类比的思路来介绍 Binder 的设计原理,作为上一篇文章的补充。这篇文章只是从设计的概念出发进行理解,不设计太多的代码细节,如果想对具体实现感兴趣,可以参考老罗的文章。希望通过这篇文章,能够帮助大家理解整个 Binder 运作机制转载 2017-04-11 11:11:02 · 519 阅读 · 0 评论 -
Android fragment 通信
fragment的生命周期在 activity 的 onCreate 和onDestory 之间,其他不受控制,所以尽量fragment从 activity取数据,而不是activity强制扔给fragment原创 2017-04-10 14:58:24 · 369 阅读 · 0 评论 -
Android 事件处理机制分析
智能手机的操作都是通过各种事件来进行处理的,了解Android的事件处理机制,对日常的应用开发具有很多的好处。本篇文章将围绕事件处理机制进行展开,进行尽可能详实地分析,说明事件是如何在多个View层级之间进行传递的。一、基础假定由于篇幅的限定,我们只关注最基本的几种事件:Down、Move、Up和Cancel。一个Android定义的操作手势Gestures 往往是由用户点击屏幕触发Down事件,用转载 2017-03-01 15:29:22 · 374 阅读 · 0 评论 -
Ubuntu下配置jdk1.6
Ubuntu下编译Android源码,经常需要更改jdk设置,这里记录一下配置方法。 1.下载JDK1.6。 你可以到官网去下载,下载时请看清自己的系统版本,记得一定要下载相应的版本。 http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.ht...原创 2018-07-19 16:41:36 · 615 阅读 · 0 评论