分类 android 中的文章

Android的墓碑

什么是tombstone tombstone中文称墓碑,顾名思义,墓碑会记录死者的一些生平信息。同样Android中也有个tombstone,它会记录一个进程死亡时的死亡现场,方便开发人员调试bug.那这个tombstone是谁创建的呢,这点要涉及到Android系统监控进程异常退……

阅读全文

Android JNI 介绍

什么是JNI JNI是Java Native Interface的缩写 顾名思义,JNI是Java世界和Native世界的桥梁,这里的Native主要是指C和C++。 为什么要学习JNI 这个问题很好回答,因为Android系统源码中大量的使用了JNI技术.如果你只停留在Java层,那么永远不会真正理……

阅读全文

Android Hdmi-Cec源码解析

基于Android11,文中涉及到公司的名称用company代替 什么是HDMI-CEC HDMI-CEC是高清多媒体接口消费类电子产品控制的简称, 它允许多媒体消费类商品相互通信和交换信息,举个例子:家里的电视和电视盒子两个设备通过HDMI线连接,可以让电视盒子的内容显示在电视上。如……

阅读全文

Android 系统奔溃触发WatchDog分析

前言 作为一个Android开发者,不管是App或者是System开发者,经常会遇到一些分析日志的场景,本文就通过一个场景介绍一下Android 系统触发Watdog重启时的分析思路。Watchdog俗称看门狗,Android如果一些系统服务发生异常,会触发Watchdog,导致系统……

阅读全文

TV开发-Android焦点的一生

基于Android11 概述 Android View的焦点机制对于触摸屏的设备不是那么重要,但是对于TV设备,View的焦点机制至关重要,所以对于Tv开发者这是必备的技能。 这段时间火遍海内外的网红李子柒出了很多“一生系列”,什么南瓜的一生,葡萄的一生,大蒜的一生….. 这篇文章也借鉴……

阅读全文

怎么编译一个Android Studio

Android Studio是基于JetBrain的Idea开发的,如果我们想深层次的定制Android Studio最好是基于它的源码,当然了,直接在它上面开发插件也是一个不错的方式。下面介绍一下AS的编译方式。 AS源码下载 1 2 3 4 mkdir studio-master-dev cd studio-master-dev repo init -u https://android.googlesource.com/platform/manifest -b studio-master-dev repo sync -c -j4 -q 如果翻墙有困难,可以使用清华的源……

阅读全文

Android TV输入框架(TIF)原理介绍

前言 Android TV 输入框架 (TIF) 简化了向 Android TV 传送直播内容的过程。Android TIF 为制造商提供了一个标准 API,供他们创建能够控制 Android TV 的输入模块,并让他们可以通过 TV Input 发布的元数据来搜索和推荐直播电视内容。 概念解释 什么是LiveTv LiveTv是Android TV系统中的一个TV应用,它是一个系统……

阅读全文

Android启动-inIt进程(second stage)

前言 这一篇文章需要介绍在init进程中第二阶段做的工作,其实两个阶段都有关于selinux的相关内容,这一部分相对比较复杂,我们会单独出一篇文章去介绍selinux的相关内容,所以这里就将其略过了。在第二阶段中,init进程所做的工作主要下面几个方面: 初始化属性服务 初始化子进程终……

阅读全文

Android9.0启动-inIt进程(First Stage)

基于9.0源码解析,代码的路径在第一行注释代码。本文为平时笔记的整理,难免有错误,欢迎大家指正,如有错误给您带来困惑和损失,也请见谅。 概述 init进程是Android系统的第一个用户进程,init进程由Linux内核启动,入口为/system/core/init/init.cpp……

阅读全文

Android系统源码编译

前言 AOSP包含了Android系统的整个源码,要想系统的了解Android系统就必须熟悉AOSP。比如Android系统的启动流程,Binder机制,Handler机制等,而熟悉这些知识都需要深入到AOSP中,今天就从AOSP的编译开始,一步步的深入了解。 环境要求 参数 值 系统 Ubuntu16.04 硬……

阅读全文