![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Android8.0学习
zhangbijun1230
这个作者很懒,什么都没留下…
展开
-
Android 8.0 (35)----Android8.0.0-r4的OTA升级流程
Android8.0.0-r4的OTA升级流程原网址:https://blog.csdn.net/dingfengnupt88/article/details/52875228 Android系统进行升级的时候,有两种途径,一种是通过接口传递升级包路径自动升级(Android系统SD卡升级),升级完之后系统自动重启;另一种是手动进入recovery模式下,选择升级包进行升级,升级完成之后停留在re...转载 2018-07-09 19:11:59 · 908 阅读 · 0 评论 -
Android 8.0学习(25)---系统的应用图标适配
Android 8.0系统的应用图标适配现在已经进入了2018年,Android 8.0系统也逐渐开始普及起来了。三星今年推出的最新旗舰机Galaxy S9已经搭载了Android 8.0系统,紧接着小米、华为、OV等国产手机厂商即将推出的新年旗舰机也会搭载Android 8.0系统。因此,现在已经是时候需要让我们的应用程序对Android 8.0系统进行适配了。其实在去年Android 8.0系...转载 2018-04-26 08:36:29 · 454 阅读 · 0 评论 -
Android 8.0 学习(24)---Android8.0 WiFi热点适配
Android8.0 WiFi热点适配在Android8.0上用以前的方式调试WiFi热点的时候发现无法正常开启热点,于是查了下,发现之前的热点打开接口已经废弃。原先的接口WifiManager.java中setWifiApEnabled方法用来打开WiFi热点已经用不了了。网上查是从Android7.1以后接口开始变化的,但我查Google给的源码时发现7.1.1-7.1.2版本都是没有变动,...转载 2018-04-25 08:53:45 · 4258 阅读 · 2 评论 -
Android 8.0学习(18)--- Android8.0运行时权限策略变化和适配方案
Android8.0运行时权限策略变化和适配方案 在 Android O 之前,如果应用在运行时请求权限并且被授予该权限,系统会错误地将属于同一权限组并且在清单中注册的其他权限也一起授予应用。对于针对Android O的应用,此行为已被纠正。系统只会授予应用明确请求的权限。然而一旦用户为应用授予某个权限,则所有后续对该权限组中权限的请求都将被自动批准。例如,假设某个应用在其清单中列出READ_...转载 2018-04-20 08:55:05 · 1728 阅读 · 0 评论 -
Android 8.0 学习(23)---recovery 流程分析
Android 8.0 recovery 流程分析这里主要分析non A/B模式下的recovery流程 A/B模式下的recovery在boot中 后续会不断补充,如果有疏漏或者错误的地方,请指出,共同学习,谢谢!一、流程分析首先列出recovery流程的几个重要点,接着会详细分析加载recovery.fstab分区表解析传入的参数recovery界面相关的设置执行命令如果没有命令,等待用户输...转载 2018-04-24 09:01:36 · 1966 阅读 · 0 评论 -
Android 8.0学习(28)--- 解决OkHttp问题
Android 8.0 解决OkHttp问题:A connection to xxx was leaked. Did you forget to close a response body?2535Android中,我们访问网络时,最简单的方式类似与:HttpURLConnection connection = null;try { //xxxxx为具体的网络地址 URL url...转载 2018-04-27 08:43:51 · 12391 阅读 · 0 评论 -
Android8.0(34)----Android 8.0 Settings流程分析与变动
Android 8.0 Settings流程分析与变动2018年03月12日 18:38:18阅读数:1102开! 场! 白! 好! 难! 写!一,相比Android Settings 7.0 如下图,在7.0的基础上,去掉了7.0新加的侧滑菜单(可能是觉得有点鸡肋吧)。多加了一级页面,把原来类别标题变成的第一级菜单的子项。在代码架构也稍加变动,并引入架构组件之LifeCycle(生命周期...转载 2018-06-27 09:13:37 · 3571 阅读 · 0 评论 -
Android8. 0 学习(33)--- msensor移植
7.android 8.1 msensor移植2018年03月27日 09:39:07阅读数:1531.驱动移植A update/alps/kernel-4.4/drivers/misc/mediatek/sensors-1.0/magnetometer/KconfigA update/alps/kernel-4.4/drivers/misc/mediatek/sensors-...转载 2018-06-22 08:38:36 · 1246 阅读 · 0 评论 -
Android 8.0(30)--- 应用快捷方式(ShortcutManager)的使用
Android 8.0 应用快捷方式(ShortcutManager)的使用在Android 7.1(API 25)之后添加的新功能,应用快捷方式。ShortcutManager管理一个应用程序的快捷方式。只要长按APP图标支持快捷方式,通过快捷键,用户可以快速访问任意一个Activity。简单地理解:在长按应用图标的情况下,在应用图标上显示的快捷方式,该快捷方式可以点击进入Activity,长按...转载 2018-05-30 17:27:05 · 1109 阅读 · 0 评论 -
Android 8.0学习(32)---Android 8.0源码目录结构详解
Android 8.0.0源码目录结构详解android的移植按如下流程: (1)android linux 内核的普通驱动移植,让内核可以在目标平台上运行起来。 (2)正确挂载文件系统,确保内核启动参数和 android 源代码 system/core/rootdir 目录下的 init.rc 中的文件系统挂载正确。 (3)调试控制台,让内核启动参数中的 console 参数以...转载 2018-06-21 08:37:28 · 5424 阅读 · 0 评论 -
Android 8.0(29)---Android 8.0 获取当前的activity
Android 7.0 &&7.1:adb shell dumpsys activity activities | findstr mFocusedActivityAndroid 8.0 : adb shell dumpsys activity activities | findstr mResumedActivity原创 2018-05-29 15:57:43 · 2882 阅读 · 0 评论 -
Android 8.0学习(31)---Android 8.0 中的 ART 功能改进
Android 8.0 中的 ART 功能改进在 Android 8.0 版本中,Android Runtime (ART) 有了极大改进。下面的列表总结了设备制造商可以在 ART 中获得的增强功能。并发压缩式垃圾回收器正如 Google 在 Google I/O 大会上所宣布的那样,ART 在 Android 8.0 中提供了新的并发压缩式垃圾回收器 (GC)。该回收器会在每次执行 GC 时以及...翻译 2018-06-04 09:07:45 · 3909 阅读 · 1 评论 -
Android O (28)---8.0 新特性介绍
Android O (8.0) 新特性介绍Android O 功能和 API(文章内容均来Google开发者官网,有需要可自行翻墙查看更多资料)Android O 为用户和开发者引入多种新功能。本文重点介绍面向开发者的新功能。请务必查阅 Android O 行为变更以了解平台变更可能影响您的应用的领域。通知在 Android O 中,我们已重新设计通知,以便为管理通知行为和设置提供更轻松和更统一的...转载 2018-05-22 17:58:04 · 6550 阅读 · 1 评论 -
Android 8.0学习(27)--- SystemUI(二)启动流程和初始化
Android 8.0 SystemUI(二):启动流程和初始化这篇的话,将对SystemUI的启动和大体的初始化作描述。篇幅应该比上篇多了些。哈哈。老样子,先上目录,简洁明了。概述由于需要实时反馈系统状态,如蓝牙开关、wifi开关、时间及相应用户导航栏操作,SystemUI从系统一启动就被带起来了(SystemUI:我也不想啊!老累了!)。正常使用过程中的SystemUI,大多数功能模块都是出于...转载 2018-04-28 08:34:44 · 1212 阅读 · 1 评论 -
Android 8.0 学习(26)---Android 8.0 SystemUI(一)
Android 8.0 SystemUI(一):图文并茂的介绍 :文章已同步更新至微信公众号:猿湿Xoong我擅长什么?当我想到这个这个问题的时候,脑子里是一片空白的:哎呀,我什么都知道点,可是说擅长的,还真没拿的出手的,这怎么行!于是就有了SystemUI系列的文章。—— 猿湿Xoong一、本文结构二、什么是SystemUI?作为Android系统核心应用,SystemUI负责反馈系统及应用状态...转载 2018-04-28 08:30:14 · 1366 阅读 · 0 评论 -
Android 8.0 学习(21)---Oreo的画中画模式学习
Android 8.0 Oreo的画中画模式学习本文主要是对谷歌开发者官方微信公众号发布的Android 8.0 Oreo 画中画模式一文的学习记录。 画中画模式Picture-in-picture(PIP)简介在Android 8.0(API Level 26)中,Activity可以启动画中画 Picture-in-picture(PIP)模式。PIP 是一种特殊类型的多窗口模式,常见于视频...转载 2018-04-24 09:03:27 · 585 阅读 · 0 评论 -
Android 8.0学习(8)---内核文件系统优化
在内核级别优化 SquashFSSquashFS 是 Linux 的只读压缩文件系统。该文件系统设计为只读,因此适合在系统分区上使用。很多 Android 设备都可以通过对其系统分区使用此文件系统来获益;例如,以下设备:存储容量小的设备,例如 Android Watch。闪存缓慢的设备(压缩可减少块 I/O 的数量)。遗憾的是,SquashFS 的性能落后于 ext4。优化为提高 SquashFS...转载 2018-04-18 20:59:23 · 1922 阅读 · 0 评论 -
Android 8.0系统学习(7)---内核加固
内核加固Android 8.0 增添了内核加固功能,以帮助减少内核漏洞并发现内核驱动程序中的错误。这些功能位于分支 android-3.18、android-4.4 和 android-4.9 的 kernel/common 中。实现要获得这些功能,设备制造商和 SOC 应该将来自 kernel/common 的所有加固补丁程序合并到其内核树并启用以下内核配置选项:加固后的用户复制功能:CONFI...转载 2018-04-16 17:12:19 · 1381 阅读 · 0 评论 -
Android 8.0 系统学习(6)---Linux内核接口要求
接口要求本页介绍了 Android 正常运行所需的一系列 Linux 内核接口。供应商测试套件 (VTS) 会测试这些接口是否存在以及是否正确无误。这些接口的数量将随时间的推移不断增加,包含越来越多的 Android 内核接口。系统调用系统调用提供的签名和语义应与上游 Linux 内核中的签名和语义相同。根据 bionic/libc/SYSCALLS.txt,Bionic 所需的 ARM64 系统...转载 2018-04-16 17:09:48 · 2574 阅读 · 0 评论 -
Android 8.0学习(5)---模块化内核
模块化内核要求在 Android 8.0 中,设备内核分为系统芯片 (SoC)、设备和板专属组件。基于这种分层结构的内核和 Android 使得原始设计制造商 (ODM) 和原始设备制造商 (OEM) 可以在独立的板专属树中使用板专属功能、驱动程序等,使他们可以替换通用的内核配置、以内核模块的形式添加新的驱动程序等。本页详细介绍了以下方面的要求:对于独立的 SoC 和 OEM/ODM 内核开发的平...转载 2018-04-16 09:50:47 · 4725 阅读 · 0 评论 -
Android 8.0 学习(4)---Android通用内核
内核Linux 内核是几乎所有的 Android 设备上极其重要的软件组成部分。本部分介绍了 Linux 内核开发和版本模型(如下)、稳定的长期支持 (LTS) 内核(包括所有 Android 设备都应使用稳定版本而非择优挑选补丁程序的原因)、内核配置和加固、接口和模块化内核要求(在 Android O 中推出)、内核调试和网络测试以及 SquashFS。Linux 内核开发Linux 内核是迄今...转载 2018-04-16 09:41:09 · 11119 阅读 · 1 评论 -
Android 8.0 学习(3)---Android Treble
TrebleAndroid 8.0 版本的一项新元素是 Project Treble。这是 Android 操作系统框架在架构方面的一项重大改变,旨在让制造商以更低的成本更轻松、更快速地将设备更新到新版 Android 系统。Project Treble 适用于搭载 Android 8.0 及后续版本的所有新设备(这种新的架构已经在 Pixel 手机的开发者预览版中投入使用)。关于 Android...转载 2018-04-16 09:23:49 · 976 阅读 · 0 评论 -
Android 8.0学习 (2)---Android HAL
硬件抽象层 (HAL)HAL 可定义一个标准接口以供硬件供应商实现,这可让 Android 忽略较低级别的驱动程序实现。借助 HAL,您可以顺利实现相关功能,而不会影响或更改更高级别的系统。HAL 实现会被封装成模块,并由 Android 系统适时地加载。 图 1. HAL 组件 您必须为您的产品...转载 2018-04-16 09:13:07 · 4579 阅读 · 0 评论 -
Android8.0学习(1)---Android 架构
Android 架构(8.0以前)Android 系统架构包含以下组件:图 1. Android 系统架构应用框架应用框架最常被应用开发者使用。如果您是硬件开发者,则应该了解开发者 API,因为很多此类 API 都会直接映射到底层 HAL 接口,并可提供与实现驱动程序相关的实用信息。Binder IPCBinder 进程间通信 (IPC) 机制允许应用框架跨越进程边界并调用 Android 系统服...翻译 2018-04-16 09:06:24 · 2234 阅读 · 0 评论 -
Android 8.0 学习(3)---Android 8.0系统的应用图标适配
其实在去年Android 8.0系统刚推出的时候,我就仔细翻阅过Google官方的功能变更文档。变更项着实不少,但是真正需要我们去进行功能适配的地方却并不多。总结了一下,最主要需要进行适配的地方有两处:应用图标和通知栏。那么我们就分为上下两篇来分别对这两处功能适配进行讲解,先从应用图标开始。为什么要进行应用图标适配?可能有些朋友觉得困惑,应用图标这种东西从Android远古时代就已经有了,而且功能...转载 2018-03-28 09:17:48 · 922 阅读 · 0 评论 -
Android 8.0 学习(12)---init.rc语法及解析过程总结
Android 8.0 init.rc语法及解析过程总结 Android O高通默认使用QMMI取代了fastmmi,但是由于QMMI是一个APK,属于Android应用层面,所以必须等到开机完成后,才能测试各个功能模块,这样就会导致开机时间过长,尤其在msm8909平台上,最快也要30s左右,很难满足产线生产要求,所以应公司要求,尝试将fastmmi移植到Android O,期间一直...转载 2018-04-17 14:51:27 · 2684 阅读 · 0 评论 -
android系统知识(8.0)---Android O 开关机动画流程
Android O 开关机动画流程开机动画 bootanim的启动开机动画是在进程bootanim ,先看一下bootanim.rc中文件:android_o/frameworks/base/cmds/bootanimation/bootanim.rcservice bootanim /system/bin/bootanimation class core animation ...转载 2018-03-29 15:27:22 · 10126 阅读 · 4 评论 -
Android8.0 学习 (17)Android国际化(多语言)实现,支持8.0
Android国际化(多语言)实现,支持8.0前言最近因为项目中使用了国际化,所以正好研究了下实现方法; 首先说下项目需求:可以随着系统切换语言而切换语言,不支持的语言显示默认用户可以选择语言,且不会随着系统切换语言或者应用重启而还原虽然需求还是很简单的,但是实现起来还是遇到了不少的麻烦,首先看下效果图:老规矩项目源码实现思路在application 的 attachBaseContext设置当前...转载 2018-04-24 08:50:04 · 1222 阅读 · 0 评论 -
Android 8.0 学习(17)---Android8.0中对指纹的新要求
Android8.0中对指纹的新要求784我们先来看一张指纹在Android6.0版本上的架构层次图:指纹应用层,也就是手机上的指纹设置,这是Android系统层定义的指纹管理入口。 1,system/core/rootdir/init.rc中启动system/core/Fingerprintd指纹的守护进程。fingerprintd的代码实现如下目录:Fingerprintd把IFingerpr...转载 2018-05-01 10:09:57 · 1604 阅读 · 2 评论 -
Android 8.0系统学习(19)--- SystemUI启动流程
Android 8.0系统学习(19)--- SystemUI启动流程 systemui属于系统级应用,在开机过程中就会启动。具体来讲是在SystemServer进程中startOtherService()方法来启动的。startOtherService(){...startSystemUi(context,windowManagerf);...}startSystemUi()方法中就是做...转载 2018-05-01 10:10:30 · 945 阅读 · 0 评论 -
Android 8.0学习(16)---8.0 的Doze模式白名单路径
Android O 的Doze模式白名单路径Doze 模式列表上述备注规则如下if(powerWhitelist.isSysWhitelisted(pkg)) { // Summary of app which doesn't have a battery optimization setting show:Battery optimization not available} ...转载 2018-04-17 21:45:35 · 2540 阅读 · 0 评论 -
Android8.0 学习(15)---适配Android 8.0
Android O 迁移(适配Android 8.0)现在我们介绍下 Android O新的改动:通知在 Android 8.0 中,我们已重新设计通知,以便为管理通知行为和设置提供更轻松和更统一的方式。这些变更包括:Android 8.0 中的通知长按菜单。 通知渠道:Android 8.0 引入了通知渠道,其允许您为要显示的每种通知类型创建用户可自定义的渠道。用户界面将通知渠道称之为通知类别。...转载 2018-04-17 21:43:09 · 1007 阅读 · 0 评论 -
Android 8.0 学习(14)---Android8.0适配分析
公司项目Android8.0适配分析1. 官方推荐的兼容测试方式 2. Android8.0行为变更说明 Android 8.0 行为变更包括两个部分:针对所有 API 级别的应用和针对 Android 8.0 的应用(8.0专属部分大部分用不到,所以没专门列出),当然,全局API级改变在项目中的使用场景也很少。针对所有 API 级别的应用api修改相应的说明是否需要适配后台执行限制项目注册了一...转载 2018-04-17 21:40:43 · 873 阅读 · 0 评论 -
Android 8.0 学习(13)---开发者 FAQ
Android 8.0 开发者 FAQQ: 这些新特性是否提供向下兼容,如果提供,兼容到哪个版本?A: 针对所有 API 级别的应用:网络连接和 HTTP(S) 连接集合的处理记录未捕获的异常输入和导航安全性后台执行限制隐私性针对 Android O 的应用:内容变更通知视图焦点权限集合的处理媒体类加载行为Q: 关于 Android Oreo 有个问题想问一下:在该版本中,除了特定的系统隐式广播接...转载 2018-04-17 21:39:18 · 376 阅读 · 0 评论 -
android8.0学习(1)---Android Treble 概述
1 Android TrebleAndroid 8.0 版本的一项新元素是 Project Treble。这是 Android 操作系统框架在架构方面的一项重大改变,旨在让制造商以更低的成本更轻松、更快速地将设备更新到新版 Android 系统。Project Treble 适用于搭载 Android 8.0 及后续版本的所有新设备(这种新的架构已经在 Pixel 手机的开发者预览版中投入使用)。...翻译 2018-03-28 09:12:47 · 1473 阅读 · 0 评论