omnispace的博客

专注AI,物联网,区块链,安卓以及相关安全技术

Android源码分析--MediaServer源码分析(二)

在上一篇博客中Android源码分析–MediaServer源码分析(一),我们知道了ProcessState和defaultServiceManager,在分析源码的过程中,我们被Android的Binder通信机制中的各种复杂的类关系搞的眼花缭乱,接下来我们就以MediaPlayerServi...

2016-10-28 14:29:04

阅读数 499

评论数 0

Android源码分析--MediaServer源码分析(一)

MediaServer中包括了系统中的许多重要的Server: AudioFlinger:音频系统中的核心服务AudioPolicyService:音频系统中关于音频策略的重要服务MediaPlayerService:多媒体系统中的重要服务CameraService:有关照相和摄像的重要服务...

2016-10-28 14:27:21

阅读数 1706

评论数 0

Android mediaRecorder框架简述(二)

这里有个setupVideiEncoder,看来这里应该是对视频编码的地方 根据不同的编码类型来设置不同的参数,这个方法代码有些多直截取部分代码: 来看看关键的一句,这里创建了OMXCodec 然后把创建了的编码器赋值给MediaSource,这里的MediaSource可以看作是O...

2016-10-28 14:24:07

阅读数 307

评论数 0

Android mediaRecorder框架简述(一)

下面是框架简图: 首先调用mediaRecorder.java中的方法比如start方法,会调用jni: 也就是调用android_media_recorder.cpp的start方法:  接着到mediaRec...

2016-10-28 14:21:53

阅读数 393

评论数 0

AudioRecorder 录音相关的处理流程

一.AudioRecord录音的初始化设置 AudioRecord::set  -> AudioSystem::getInput  -> 调用IAudioPolicyService.cpp文件中的 BpAudioPolicyService的getInput函数     r...

2016-10-28 14:15:21

阅读数 2249

评论数 0

Android MediaRecorder架构详解

1. 简介 在android中录制音频有两种方式,MediaRecorder和AudioRecord。两者的区别如下: (1) MediaRecorder 简单方便,不需要理会中间录制过程,结束录制后可以直接得到音频文件进行播放;录制的音频文件是经过压缩的,需要设置编码器;录制的音频文件可以...

2016-10-28 13:35:35

阅读数 1517

评论数 0

Android 4.4 MediaRecorder系统结构

前面有分析过Camera的实现,现在来看看MediaRecorder的实现,这里我不会太去关注它的分层结构,我更关注它的逻辑! APP层/path/to/aosp/frameworks/base/media/java/android/media/MediaRecorder.java JNI层/p...

2016-10-28 13:35:06

阅读数 1070

评论数 0

Deep Learning Blogs

http://karpathy.github.io/ https://www.youtube.com/watch?v=b99UVkWzYTQ https://blog.acolyer.org/ https://www.youtube.com/watch?v=uXt8qF2Zzfo

2016-10-27 16:24:23

阅读数 587

评论数 0

Android Full-Disk Encryption

原文地址:https://source.android.com/security/encryption/full-disk.html Full-disk encryption is the process of encoding all user data on an Android dev...

2016-10-19 08:21:10

阅读数 1755

评论数 0

Changes in Android 7 Nougat

http://android-developers.blogspot.com/2016/05/hardening-media-stack.html http://android-developers.blogspot.com/2016/09/security-enhancements-i...

2016-10-06 17:06:08

阅读数 434

评论数 0

为什么Android要采用Binder作为IPC机制?

作者:Gityuan 链接:https://www.zhihu.com/question/39440766/answer/89210950 来源:知乎 著作权归作者所有,转载请联系作者获得授权。 在开始回答 前,先简单概括性地说说Linux现有的所有进程间IPC方式: 1. 管道...

2016-10-06 16:51:46

阅读数 492

评论数 0

跟我一起写 Makefile(一)

跟我一起写 Makefile  陈皓 概述 —— 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多...

2016-10-06 16:46:57

阅读数 572

评论数 0

OpenSSL X509 Certificate反序列化漏洞(CVE-2015-3825)成因分析

一、序 序列化 (Serialization),是将对象的状态信息转换为可以存储或传输的形式的过程。在序列化期间,对象将其当前状态写入到临时或持久性存储区。使用者可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。Android也有许多场景使用序列化进行数据传递,如App间/内的对象传递...

2016-10-05 15:39:02

阅读数 1411

评论数 0

CVE-2014-7911 Android本地提权漏洞分析与利用

概述 前面我们了解了Android Binder机制的基本原理,当然仅仅了解是不够的,我们要做到:Know it and hack it。这篇文章我们就来分析一个和Binder相关的漏洞:CVE-2014-7911。这是由Jann Horn发现的一个Android本地提权漏洞,能够使普通应用...

2016-10-05 15:36:16

阅读数 4198

评论数 0

Android So简单加固

Android下的dex加固技术从最初爱加密实现的dex整体内存加载,到目前各大厂商都在研究的代码虚拟化技术,整体技术已经很成熟了。但是因为Android系统开源的特性,这种加固方法的安全性并不高,只要修改源码中dex加载的部分,就可以dump出隐藏的dex,根据这一原理目前也已经有多个Andro...

2016-10-05 15:33:58

阅读数 3219

评论数 0

C语言结构体里的成员数组和指针

单看这文章的标题,你可能会觉得好像没什么意思。你先别下这个结论,相信这篇文章会对你理解C语言有帮助。这篇文章产生的背景是在微博上,看到@Laruence同学出了一个关于C语言的题,微博链接。微博截图如下。我觉得好多人对这段代码的理解还不够深入,所以写下了这篇文章。 为了方便你把代码c...

2016-10-05 00:28:27

阅读数 891

评论数 0

以Binder视角来看Service启动

一. 概述 在前面的文章startService流程分析,从系统framework层详细介绍Service启动流程,见下图: Service启动过程中,首先在发起方进程调用startService,经过binder驱动,最终进入system_server进程的binder线程来...

2016-10-04 07:19:26

阅读数 615

评论数 0

Binder子系统之调试分析(三)

一. binder调试信息 1.1 binder_thread 调用方法:print_binder_thread thread 8980: l 12 //tid=8980,looper=12 关于looper状态值: BINDER_LOOPER_STATE_RE...

2016-10-04 07:18:03

阅读数 801

评论数 0

Binder子系统之调试分析(二)

一. 概述 上一篇文章已经介绍了binder子系统调试的一些手段,这篇文章再来挑选系统几个核心服务进程来进行分析. 1.1 创建debugfs 首先debugfs文件系统默认挂载在节点/sys/kernel/debug,binder驱动初始化的过程会在该节点下先创建/binder...

2016-10-04 07:16:48

阅读数 1450

评论数 0

Binder子系统之调试分析(一)

一. 概述 在博客以前有写过关于binder系列,大概写了10篇关于binder的文章,从binder驱动,到native层,再到framework,一路写到app层的使用。有兴趣的可以看看 Binder系列—开篇。 二.Binder驱动调试 看过Binder系列文章的同学,会发...

2016-10-04 07:15:13

阅读数 2060

评论数 0

提示
确定要删除当前文章?
取消 删除