自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(74)
  • 收藏
  • 关注

转载 Android 8.0.0-r4源码目录结构详解

Android的移植按如下流程:(1)android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来。(2)正确挂载文件系统,确保内核启动参数和 android 源代码 system/core/rootdir 目录下的 init.rc 中的文件系统挂载正确。(3)调试控制台,让内核启动参数中的 console 参数以及 android 源代...

2019-06-29 17:31:52 2963 1

转载 高通平台的手机录像拍照同时

public interface VideoController extends OnShutterButtonListener, OnPauseButtonListener { public void onReviewDoneClicked(View view); public void onReviewCancelClicked(View viwe); public...

2019-06-29 11:00:33 275

转载 同时录像拍照

边录像边拍照 ,Android怎样实现录制视频时拍照(或连续取录制的实时这一帧),就是同时录像时可以连续保存图片到本地,录像也同时保存/*** @author: Jeff <15899859876@qq.com>* @date: 2018-03-05 15:08* @description: PLRecordStateListener注册录制状态监听器 , PLVideo...

2019-06-29 10:55:58 1024

转载 android8.1 添加物理按键流程

一,添加android已有的功能按键当新增的按键功能是android系统默认自带的,需要在frameworks/base/data/keyboards/Generic.kl 中找到你需要的按键键值然后在对应的dts中添加对应的按键映射就可以了。二,自定义按键按如下步骤添加,具体可以参考某个已有的按键,在同一位置添加自定义按键通过命令cat /proc/bus/input/...

2019-06-29 08:28:11 1047

转载 Android输入系统(三)InputReader的加工类型和InputDispatcher的分发过程

解析WMS系列深入理解JNI系列输入系统系列前言在上一篇文章中,我们学习了输入事件的处理,输入事件会交由InputDispatcher进行分发,那么InputDispatcher是如何进行分发的?这篇文章会给你答案。1.InputReader的加工类型在Android输入系统(二)IMS的启动过程和输入事件的处理这篇文章中,我们知道InputReader会对原始输入事件进行加工,如...

2019-06-28 17:46:00 366

转载 Android输入系统(二)IMS的启动过程和输入事件的处理

解析WMS系列深入理解JNI系列输入系统系列基于Android 8.1前言在上一篇文章中,我们学习了IMS的诞生(创建),IMS创建后还会进行启动,这篇文章我们来学习IMS的启动过程和输入事件的处理。1.IMS的启动过程IMS的创建在SystemServer的startOtherServices方法中,不了解请查看Android输入系统(一)输入事件传递流程和InputMana...

2019-06-28 17:36:21 327

转载 Android输入系统(一)输入事件传递流程和InputManagerService的诞生

解析WMS系列View体系系列前言很多同学可能会认为输入系统是不是和View的事件分发有些关联,确实是有些关联,只不过View事件分发只能算是输入系统事件传递的一部分。这个系列讲的输入系统主要是我们不常接触的,但还是需要去了解的那部分。1. 输入事件传递流程的组成部分输入系统是外界与Android设备交互的基础,仅凭输入系统是无法完成输入事件传递的,因此需要输入系统和Android...

2019-06-28 17:26:41 267

转载 Android 8.1 MTK6739修改文档

1. 信息-设置-通知-重要程度-中(不发出提示音),非锁屏界面下无提示通知框弹出vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.javamethod:shouldPeek@@ -7578,8 +7578,8 @@ priva...

2019-06-28 16:45:28 910

转载 MTK 平台(MTK6573)马达驱动

Android 振动器系统架构(在根目录下面四个文件)驱动层 硬件抽象层 JNI框架层 Java应用层 一、驱动层Android修改、新增Linux内核文件alps/kernel/drivers/staging/android/timed_output.h/kernel/drivers/staging/android/timed_output.ctimed_...

2019-06-28 16:22:21 1967

转载 Android振动器调试

一: 振动器系统结构和移植内容振动器负责控制引动电话的振动功能,Android中的振动器系统是一个专供这方面功能的小系统,提供根据时间振动的功能。振动器系统包含了驱动程序、硬件抽象层、JNI部分、Java框架类等几个部分,也向Java应用程序层提供了简单的API作为平台接口。Android振动器系统的基本层次结构如图23-1所示。图23-1 Android振动器系统的基本层...

2019-06-28 15:52:48 611

转载 C语言-接口与实现

1. 模块化编程面向对象编程是一种思想,和语言无关。学过C++、java等面向对象编程语言的同学,应该都知道面向对象的三大特性是封装、继承和多态。而C语言一直被蒙上了面向过程编程的面纱。工作后从事的是嵌入式软件开发,在开发过程中运用最多的还是C语言,所以在程序的设计过程中,一直想使用C语言达到面向对象编程的效果,这里将讲解使用C语言来模拟面向对象编程的实现。在项目...

2019-06-28 14:44:36 2632

转载 Android SDK -PDK- NDK

三个词应该是在软件开发领域通用的,它们的全称分别为SDK(Software Development Kit)PDK(PlatformDevelopment Kit)NDK(Native Development Kit),我们可以从它们的用途以及针对的人群来理解一下。1.SDK 软件开发套件一般平台都会发布自己的SDK,SDK包含该平台为应用程序开发人员提供的开发工具,主要是...

2019-06-28 14:00:40 472

转载 android驱动框架介绍

android驱动框架介绍了解android驱动框架:1.方法1——jni调用底层驱动在android框架中写入c/c++直接调用底层linux驱动,并向上提供jni接口给应用程序:优点:简单易行;缺点:主要在于驱动程序,由于在linux中需要遵循GPL协议,需要开源,而许多厂商的一些代码不希望开源。2.方法2——增加硬件抽象层将驱动程序一分为二,一部分...

2019-06-28 11:42:46 4333

转载 安卓系统的制作

要制作安卓系统,首先需要拿到移植好的,开发板可以用的安卓源代码,这个源代码一般是在开发板光盘里面解压之后就变成了这样第一步是设置我们运行环境变量的脚本在我们源代码当中是setenv这个脚本启动我们脚本然后运行lunch lunch就是一个配置的过程这里有这么多平台类型来选择但是我们这里用的是工程版本选择你对应的工程版本选完之后会看到配置信息 如下图...

2019-06-28 09:22:06 892 2

转载 安卓源代码核心结构

第一层是我们的APP层,在这个层次中有我们熟悉的应用程序,也是我安卓系统自带的一些应用程序,比如说我们的通讯录,比如说我们的电话本,比如说我们短信,这都是我们系统自带的一些运用程序,但是除此之外还可以自己开发一些运用程序放到这个层次当中。第二层是我们框架层,在这个层次中包括了10最主要的部分。包括我们的活动管理层,窗口管理器,内容提供者,试图子系统,通知管理器,包管理器,电话管理器,资源管...

2019-06-27 21:26:39 1612

转载 Android驱动开发流程 及 系统分层模型

【Android系统分层模型】【驱动开发流程】1、下载 Android 源码;2、下载 Linux Kernel 源码,将其放置于 Android 源码根目录的 kernel/ 文件夹下;3、编写设备驱动源码。按照惯例是在 Linux kernel 源码根目录下的 driver/ 路径新建与设备同名的 xxx 文件夹,并添加驱动源码文件(h文件、c文件...

2019-06-27 20:36:36 450

转载 安卓学习日记(二)四大组件

Android系统四大组件分别是活动、服务、广播接受器、内容提供器。其中活动是所有Abdroid应用程序的门面凡是在应用中你看得到的都是放在活动中的,服务是无法看到的但是它会一直在后台默默的运行即使用户退出了应用服务仍然可以继续运行,广播接受器允许你的应用接受来自各处的广播消息,当然你的应用同样也可以向外发出广播消息,内容提供器则为应用程序之间共享数据提供了可能。经过了上面的简单了解,现在对每一...

2019-06-27 19:12:46 226

转载 安卓学习

首先为了理解安卓系统是怎么工作的,就先来看一下android的系统架构,其架构大至可以分为四层:linux内核层、系统运行库层、应用框架层和应用层,那就先说说这几层。1.linux内核层:Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动(如显示,音频,照相机,蓝牙,WI-FI,电源管理等等),那么Android为什么会选择采用linux呢?原因...

2019-06-27 16:52:06 321

转载 MTK ram console

什么是ram console? 请参考:MediaTek On-Line>Quick Start>Deep in MTK Turnkey Solution Logging Tools系统重启时关键信息 ram console除了保持last kmsg外,还有重要的系统信息,这些非常有助于我们调试。这些信息保存在ram console的头部ram_conso...

2019-06-27 15:59:25 935

转载 android 设备驱动

驱动概述 说到 android 驱动是离不开 Linux 驱动的。Android 内核采用的是 Linux2.6 内核 (最近Linux 3.3 已经包含了一些 Android 代码)。但 Android 并没有完全照搬 Linux 系统内核,除了对Linux 进行部分修正,还增加了不少内容。android 驱动 主要分两种类型:1. Android 专用驱动 2. ...

2019-06-25 16:59:39 2125

转载 Android 8.0.0-r4源码目录结构

Android 是一种基于 Linux 的开放源代码软件栈,主要应用于ARM平台,但不仅限于ARM,通过编译控制,在X86等体系结构的机器上同样可以运行。与其他操作系统一样,Android也采用分层的架构设计,从高到低分别是系统1. 应用层(System Apps)2. Java API 框架层(Java API Framework)3. Android系统运行层(包括Androi...

2019-06-25 16:08:16 1116

转载 用SourceInsight4.0 查看android系统源码

准备工作:下载SourceInsight4.0,如果有,就略过。如果没有,下载地址:https://download.csdn.net/download/shoneworn/10407312下载android系统源码,如果你不知道在哪里找得到,或者不知道系统源码是什么,我告诉你:你只要开发环境搭建好了,就有。就在android SDK里。路径:D:\Android\sdk\sources\a...

2019-06-25 11:42:08 3930

转载 Android8.1源码结构分析

1、Android8.1源码的根目录根目录描述artbionic 基础C库源代码bootable 引导加载器build 系统编译规则和配置所需要的脚本和工具cts Android CTS兼容性规范测试用例dalvik JAVA虚拟机develop...

2019-06-25 11:16:44 407

转载 Android 8.1 启动时间优化--耗时分析

之前分析各个部分耗时,都是通过分析log,在SecureCRT中设置时间戳,打印出如下log[ 22.266201] c1 [saudio] saudio_wait_monitor_cmd error -5[ 22.266205] c1 sblock_receive:sblock-5-13 not ready![ 22.266209] c1 [saudio] Error: sb...

2019-06-25 10:17:20 1086

转载 MTK客制化修改8.1系统

客制化修改基于6580平台的修改:1 修改开机动画:首先添加开机动画包加入以下路径alps\device\mediateksample\tb8321p2_bsp\device.mk 然后在此mk文件中添加一句:1PRODUCT_COPY_FILES += device/mediateksample/tb8321p2_bsp/bootanimation.zip:$(TARGE...

2019-06-25 10:04:13 942

转载 MTK驱动之modem编译及配置

主要介绍modem的编译和3G、4G手机modem的配置方法。首先编译modem版本,大家了解到modem的编译指令,主要是把做好的配置文件导入到源代码中,之后两个命令就可以完成modem的编译。第一:./make.sh"MAGC6580_WE_L_HSPA.mak" new//运行bianyimodem版本的mak文件,...

2019-06-25 10:00:16 2026

转载 手机modem开发(5)---LTE基本架构

主要介绍LTE的最基础的架构,包括LTE网络的构成,每一个网络实体的作用以及LTE网络协议栈,最后还包括对一个LTE数据流的模型的说明。LTE网络参考模型这是一张非常有名的LTE架构图,从图中可以看出,整个网络构架被分为了四个部分,包括由中间两个框框起来的E-UTRAN部分和EPC部分,还有位于两边的UE和PDN两部分。在日常生活中,UE就可以看作是我们的手机终端,而PDN可以看作是...

2019-06-25 09:47:00 995

转载 手机modem开发(1)---MTK modem开发

手机软件分2部分, AP部分和BP部分, AP部分就是基于Linux的这一套, BP部分就是modem部分. modem部分主要负责打电话,数据链接等这些工作.AP需要打电话或者数据上网,就会跟BP进行通信.一般是通过串口. SIM卡的管理之类也是由BP部分来做.我们编译一套完整的软件, 首先要由射频组给出射频文件,然后在modem代码里面进行配置, 配置完之后编译出 modem 部分的二进制文件...

2019-06-25 09:42:03 2402

转载 MTK 驱动开发(36)---低功耗基础知识

1、sleep /suspendsuspend确切的说是MCU(ARM )的suspend,也就是cpu进入Wait for interrupt状态(WFI);因为对整个系统来说,CPU进WFI是整个系统睡眠的先决条件,debug也是从CPU是否进入WFI开始.从Linux的角度来说,CPU进入suspend就是SW完全不跑了,停在suspend workqueue里面从灭屏到CPU进...

2019-06-25 09:27:53 2025

转载 Android8.0 Camera系统架构(一)

随着Android系统的不断升级,相机子系统框架也在不断进化,由最初的API1和HAL1到现在的API2和HAL3,由最初简单的拍照,录制到现在的连拍,AI人像;可以说是架构上变动最大最频繁的子系统。很多设备仍然依赖相机 HAL1,因此 Android 7.0 继续支持该模块。此外,Android 相机服务还支持同时实现两种 HAL(1 和 3),如果您希望通过相机 HAL1 支持性能略低的...

2019-06-24 20:26:25 905

转载 MTK 驱动开发(26)---背光灯

1、light系统框架2、驱动相关的文件1)Hal/vendor/mediatek/proprietary/hardware/liblights/lights.c2)Kernel/kernel-3.18/drivers/leds/led-class.c/kernel-3.18/drivers/leds/led-core.c...

2019-06-24 20:04:03 983

原创 MTK平台camera驱动架构分析

MTK6580 AndroidO(android8.1)版本camera 驱动分析首先说说2点:1、Camera 的成像原理:景物通过镜头(LENS)生成的光学图像投射到图像传感器(Sensor)表面上,然后转为模拟的电信号,经过 A/D(模数转换)转换后变为数字图像信号,再送到数字信号处理芯片(DSP)中加工处理,再通过 IO 接口传输到 CPU 中处理,通过 LCD 就可以看到图像了。...

2019-06-24 19:57:08 3461

转载 MTK 驱动开发(17)---LCD MIPI

1、LCD MIPI DSI协议MIPI-DSI是一种应用于显示技术的串行接口,兼容DPI(显示像素接口,Display Pixel Interface)、DBI(显示总线接口,Display Bus Interface)和DCS(显示命令集,Display Command Set),以串行的方式发送像素信息或指令给外围,而且从外围中读取状态信息或像素信息,而且在传输的过程中享有自己独立的通信...

2019-06-24 19:50:50 1778

转载 MTK 驱动开发(32)---Sensor 移植及调试(2)

3. Sensor Driver 的客制化主要涉及三个方面:1)配置 codegen.dws---I2C 地址、eint、gpio2)配置驱动参数3)选择sensor P/N3.1配置 codegen.dwsvendor\mediatek\proprietary\scripts\dct\drvgen.exevendor\mediatek\proprietary\boot...

2019-06-24 19:21:59 2358

转载 MTK 驱动开发(31)---Sensor 移植及调试(1)

1、Android sensor 框架描述1.1、Android 支持的sensor 类型1.2、Android sensor 系统架构1.3、HAL 和Driver的工作流程1.4 sensor 相关的代码2、sensor 客制化2.1 HAL 客制化在alps\device\mediatek\$(proj)\ProjectConfig.mk中配...

2019-06-24 19:03:33 761

转载 MTK 驱动开发(29)---TP 驱动移植

MTK TP驱动移植对于MTK TP驱动移植一般分为六部分:1、硬件IO口配置;2、TP驱动移植;3、I2C通信;4、中断触发;5、数据上报;6、虚拟按键;硬件电路:1、GPIO配置打开 vendor\mediatek\proprietary\scripts\DrvGen.exe选择 vendor\mediatek\proprietary\b...

2019-06-24 18:53:13 1317

转载 MTK 驱动开发(15)---I2C

1. I2C框架vendor\mediatek\proprietary\scripts\dct\drvgen.exevendor\mediatek\proprietary\bootable\bootloader\lk\target\ivvi6797_6m_n\dct\dct\codegen.dwsvendor\mediatek\proprietary\bootable\bootload...

2019-06-24 17:25:47 977

转载 MTK 驱动开发(41)---MTK 调试工具

MTK发布的Android software Tools工具包,里面包含了很多的MTK工具,如下是简要说明及学习文档MTK Android software Tools工具的说明如下:工具 说明 文档 ATE 用于产线进行校准及终测 DCC: ATE_Tool_User_Manual eCourse: ATE User Manual Video...

2019-06-24 17:18:41 1947

转载 MTK 驱动开发(30)---Memory 移植

一、MTK 平台和高通平台在器件选型时都要求选择已经验证过的器件,第一步需要QVL验证1) 根据硬件原理图和EMMC 和DDR厂家的芯片资料, 确定EMMC 和DDR64+4,型号如下:EMMC:SamsungKLMCG4JETD_B041DDR:H9CKNNNDATMUPR_NUH2)、到MTK 网站https://onlinesso.mediatek....

2019-06-24 17:08:08 857

转载 Android8.0 Camera系统架构(二)

上一篇我们从最新的Camera架构来分析Camera子系统,今天我们将从全局的视角从旧版本到新版本架构整体通览一遍,从Framework层的API(1和2)到硬件抽象层的HAL(1和3)。废话少说一起来看一下整体架构:从整体架构图来看,上层API相互独立,中间Camera库耦合度低,HAL层构建合理;APIv1对应HAL1和HAL2。前后两套API耦合度低,APIv2几乎是重写了整个结构。...

2019-06-23 11:24:55 497

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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