自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 android开机流程

1.Android的层次框架图,如下所示:图片清晰地展示了Android的五层架构,从上到下依次是:应用层、应用框架层、库层、运行时层以及Linux内核层。Android的启动流程是自下向上的,大体上可以分为三个阶段:1、BootLoader引导启动内核;2、启动Linux内核;3、启动Android系统。2.Android的启动流程如下所示:Step 1. Boot Rom当长按电源开机的时候,引导芯片开始从固化在ROM的预设代码开始执行,然后将加载引导程序到RAM中。Step

2020-06-03 15:00:09 84

原创 SELinux用audio2allow生成添加权限的格式

首先我们都知道,添加SELinux方法都是按这种格式来添加的语句格式为:allow scontex tcontex:class action,但是类型比较多,有时间添加到那个文件还是不够清晰啊,能不能有工具来告诉我们 把avc报错生成对应的权限格式添加到对应的文件呢?这里还真有,有了这个工具,我们再遇到AVC报错就不用愁了,废话不多说(一)我们还是先介绍下确定是否是SELinux的原因导致的问题,虽然网上很多,当你怀疑是SELinux原因导致的问题,用userdebug版本或者eng版...

2020-05-20 10:58:05 145

转载 Android开机log和常见异常的分析

Android开机log分析(1) Linux内核的启动Linux内核启动的log都位于dmesg.txt文件中,从log文件开始直到出现下面这条消息则标志着Linux内核已经完成了启动:"Freeing init memory"2) Init程序启动,并启动各个本地服务(如 healthd, debuggerd等)Init程序的log信息也位于dmesg.txt文件中,我们可以通过检索“init”找到该程序的打印消息。通过检索“init starting”,我们可以找到init进程

2020-05-13 14:57:39 77

转载 Android Watchdog机制以及问题分析

1. 概览Watchdog的中文的“看门狗”,有保护的意思。最早引入Watchdog是在单片机系统中,由于单片机的工作环境容易受到外界磁场的干扰,导致程序“跑飞”,造成整个系统无法正常工作,因此,引入了一个“看门狗”,对单片机的运行状态进行实时监测,针对运行故障做一些保护处理,譬如让系统重启。这种Watchdog属于硬件层面,必须有硬件电路的支持。Linux也引入了Watchdog,在Li...

2020-05-08 15:51:36 68

转载 Android7.0 Watchdog机制

对手机系统而言,因为肩负着接听电话和接收短信的“重任”,所以被寄予7x24小 时正常工作的希望。但是作为一个在嵌入式设备上运行的操作系统,Android运行中必须面对各种软硬件干扰,从最简单的代码出现死锁或者被阻塞,到内存越界导致的内存破坏,或者由于硬件问题导致的内存反转,甚至是极端工作环境下出现的CPU电子迁移和存储器消磁。这一切问题都可能导致系统服务发生难以预料的崩溃和死机。想解...

2020-05-08 15:24:44 96

转载 Android常见Crash介绍

Crash问题分析定位:通过Log文件夹下全局搜am_crash,此时会把log文件下下所有的包含am_crash的行显示出来一.导致Android Crash 问题的主要类型JAVA application crash1.ANR(application no response) crash2.JAVA uncaught exception crashSystem crash1.P...

2020-05-06 15:33:12 110

转载 android ANR问题分析

ANR(Application Not Responding )应用无响应的简称,是为了在APP卡死时,用户 可以强制退出APP的选择,从而避免卡机无响应问题,这是Android系统的一种自我保护机制。通过本篇阅读,您将学习到以下内容什么是ANR ANR的类型 ANR 产生的原因 如何分析解决 ANR问题 ANR 问题分析解决建议 MTK 平台 ANR问题分析1. 什么...

2020-04-28 15:32:43 112

转载 Android之利用Thread.setDefaultUncaughtExceptionHandler实现崩溃监测

我们经常会面临这样的情景:应用发布上线后,收到用户反馈说app崩溃了,但自己重现不了。这时候怎么办呢?很多朋友都会想到用友盟等第三方插件实现,但鉴于安全性要求较高的支付系统,是不允许使用未知来源压缩包/有后门的第三方插件。这时候我们可以考虑自己写一个。先来看一段代码,了解UncaughtExceptionHandler的最基本用法:/** * 程序入口 */publ...

2020-03-23 15:21:14 67

原创 Android用python抓systrace方法

1.先说使用方法,参考的这篇文章https://www.cnblogs.com/1996swg/archive/2018/11/23/10007602.html这其中的抓systrace方法进入Android/Sdk/platform-tools/systrace目录下python systrace.py -b8000 -t 5 -o systrace.html需要你安装了sdk...

2020-03-04 19:59:32 204

转载 Android输入事件从读取到分发五:事件分发前的拦截过程

在前面的文章:Android输入事件从读取到分发三:InputDispatcherThread线程分发事件的过程 一文中已经提过事件在分发前要做拦截的事情,只不过当时没有展开来分析,因此这篇文章的主要目的就是分析事件在分发前的拦截过程。(注:Android源码版本为6.0)在Android输入事件从读取到分发三:InputDispatcherThread线程分发事件的过程 一文中我们分析到In...

2020-03-03 14:16:12 51

原创 Android修改屏幕自动旋转的角度临界值

windowOrientationListener.java中有个全局变量定义了gap区的大小,ADJACENT_ORIENTATION_ANGLE_GAP,默认值是45,通过函数isOrientationAngleAcceptable来控制gap区的作用;所以真正的默认旋转角度临界值是45 + GAP/2 = 45 + 45/2 = 67.5度【修改默认角度临界值的例子】1....

2020-02-27 20:31:34 70

转载 android SharedPreferences的一般用法(存取清删)

之前做应用时碰到这样一个问题:在“A” Activity 要与 “B” Activity的Fragment进行通信传值,但是忽然发现无法拿到B中Fragment的Handler,又不能发送广播,短暂的思考之后想到了SharedPreferences这个轻型的数据存储方式。  SharedPreferences的本质是基于XML文件存储key-value键值对数据,通常用来存储一些简单的配置信...

2020-01-08 20:14:09 39

原创 Android动态注册广播接受apk安装卸载

1.先定义广播接收器 private class PackageRemovedBroadcastReceiver extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(Int...

2020-01-08 20:09:40 160

原创 android 点击5次打开开发者模式

(一)Q之前的版本,关于开发这模式是否显示默认user版本不显示开发者选项这一栏,需要通过连续点击版本号7次来显示.packages\apps\Settings\src\com\android\settings\DeviceInfoSettings.javastatic final int TAPS_TO_BE_A_DEVELOPER = 7;public void onResume(...

2020-01-06 16:08:45 190

转载 Android O 后台startService限制简析

Android O 推出出了Background Execution Limits,减少后台应用内存使用及耗电,一个很明显的应用就是不准后台应用通过startService启动服务,这里有两个问题需要弄清楚,第一:什么状态下startService的属于后台启动service;第二:如果想要在后台startService,如何兼容,因此分如下几个问题分析下后台startService的场景 ...

2019-12-18 19:45:09 54

原创 Android添加一个按键流程及SELinux权限问题

最近做高通平台P版本遇到一个添加按键问题,驱动在底层添加了节点,后面就不管了,刚好借此机会搞一下添加案件的整个流程下面写下流程,以做笔记1.驱动添加节点:节点就是驱动添加的文件 ,sys/class/ant_class/ant_hb_statesys/class/ant_class/ant_mb_state在kernel\msm-4.4\include\uapi\linux\input-...

2019-11-29 21:29:15 78

转载 p-sensor相关(打电话遮挡手机)亮屏慢,不亮屏,不灭屏解决方法

高通P版本一、现象说明手机去电,遮挡sensor,手机灭屏,移开遮挡后手机依旧屏灭状态.或者挡住手机后,手机依旧亮屏状态。二、解决方案这类问题,先排除是否p-sensor的影响,如果p-sensor报的距离没问题,还有此类问题发生,一般是因为下面的原因。因为DisplayManagerService处理量灭屏的逻辑需要时间,如果p-sensor报的快,就会导致最后处...

2019-11-29 21:29:04 88

转载 为 Android 8.0 强制开启全局圆形图标规范

原文地址:https://sspai.com/post/41011看到标题,很多人也许会问:引入了自适应图标规范后,在 Android 8.0 上我们已经可以通过一些第三方 Launcher(比如 Lawnchair、Nova 等等)来修改图标形状。为什么还要多此一举?因为通过 Launcher 修改图标形状的效果并不完美。仔细观察,无论我们在哪个 Launcher 中修改图标遮罩...

2019-11-18 15:20:21 130

原创 win10 adb环境变量配置

1,先安装adk ,找到路径C:\Users\wangdonghai\AppData\Local\Android\Sdk\platform-tools2.环境变量设置android_adb 路径是adb安装的路径下面adb 值是上面android_adb 左右加个%3.path里面添加adb安装路径...

2019-10-01 11:12:54 2885

转载 Android系统修改默认铃声

Andriod手机的铃声默认保存在system/media/audio/下面,有四个文件夹,分别是alarms,notifications,ringtones,ui。对应闹钟、通知、铃声、UI音效。root的手机可以直接替换修改相应目录下的文件来修改铃声。那这些声音是从哪里来的呢。由于需要修改默认的铃声,就读了一下源码,这里进行记录一下。在源码中,这些文件保存在frameworks\base\...

2019-07-04 10:50:08 626

转载 Android系统中默认值的意义列表 SettingsProviders-res-values-defaults

<!--是否自动关屏,默认true --> <bool name="def_dim_screen">true</bool> <!-- 无操作多少秒后灭屏 --> <integer name="def_screen_off_timeout">60000</integer> <!-- 无操...

2019-06-25 10:56:42 120

转载 修改安全音量默认等级(插耳机 音乐播放时增加音量超过 中等音量之后提示警告)

通过提示语,我们可以查出,只要的逻辑代码是在framework/base/packages/SystemUI/src/com/android/systemui/SafetyWarningDialog.java查看代码可知,在这个类的构造函数中,首先初始化了一个dialogpublic SafetyWarningDialog(Context context, AudioManager aud...

2019-06-15 14:23:35 481

转载 Android Launcher 3 简单分析

最近在学习Android Launcher的相关知识,在github上找到可以在Android studio上编译的Launcher 3代码,地址:https://github.com/rydanliu/Launcher3Launcher 3的界面主要由SearchDropTargetBar、Workspace、CellLayout、PageIndicator、Hotseat组成。如下图...

2019-06-14 19:31:09 152

转载 SELinux简介

一、概述1.1 SELinux由来SEAndroid是Google在Android 4.4上正式推出的一套以SELinux为基础于核心的系统安全机制。而SELinux则是由美国NSA(国家安全局)和一些公司(如 RedHat)设计的一个针对Linux的安全加强系统。NSA最初设计的安全模型叫FLASK(Flux Advanced Security Kernel),最初这套模型针对DTO...

2019-06-04 17:05:45 58

转载 Android 7.0 Settings分析

最近参加了settings的开发,由于代码还比较新,Android7.0 对Settings进行了重构,相比5.0,6.0而言,7.0的Settings有很大的不同,所以将开过程中的一些点点滴滴记录下来.此篇文章主要给大家介绍Settings相关的基础知识:代码路径,手机中相关数据库、文件的路径,等。代码相关的路径:android\frameworks\base\packages\Set...

2019-05-31 14:40:57 50

转载 uiautomatorviewer不能获取android8.0手机屏幕信息

本身可以用sdk——>tools里自带的uiautomatorviewer截取如果截取不了,采用以下方法:方法一:直接在cmd命令行敲adb shell uiautomator dump /sdcard/app.uixadb pull /sdcard/app.uix E:/app.uix#存到E盘的app.uix文件中,在E盘新建一个文本文档改成app.uix(后缀也要改)a...

2019-05-25 16:57:16 715

原创 方案笔记二

1.关闭数据流量,状态栏SIM卡显示xvendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/systemui/statusbar/policy/MobileSignalController.java boolean dataDisabled = mCurrentStat...

2019-05-22 18:32:46 148

转载 Android P 隐藏Settings一级菜单某个选项

比如:去掉Settings一级菜单中的“Storage”选项方法1:直接在AndroidManifest.xml屏蔽掉即可vendor\mediatek\proprietary\packages\apps\MtkSettings\AndroidManifest.xml <!-- <activity android:name=".Settings$...

2019-05-10 16:52:30 669

原创 方案笔记一

1.修改手机插入电脑显示内存,文件路径frameworks/av/media/mtp/MtpStorage.cppuint64_t MtpStorage::getMaxCapacity() { if (mMaxCapacity == 0) { struct statfs stat; if (statfs(getPath(), &stat))...

2019-03-16 10:37:30 82

原创 android8.1单编Systemui不过

修改SystemUI/test里面的Android.mk名字 Android.mk_  即不用这个mk即可

2019-02-18 17:44:34 324

转载 error: insufficient permissions for device

adb root一直报如下错误:error: insufficient permissions for device: user in plugdev group; are your udev rules wrong?See [http://developer.android.com/tools/device.html] for more information首先在终端查看usb的...

2019-01-07 15:42:19 607

转载 adb remount 系统提示只读文件系统Read-only file system,解决用adb disable-verity

在Android6.0 (Android M)userdebug版本上(eng版本不存在该问题),发现使用adb remount 系统之后,还是不能对system分区进行操作,提示没有写权限,为只读文件系统Read-only file system解决方法如下 .执行如下命令 1. adb root 2. adb disable-verity (最新的adb 工具包才支持adb d...

2019-01-04 20:34:48 601

原创 mtk修改开机动画 logo 铃声 添加壁纸 修改默认壁纸

首先看你项目的分辨率多少,开机logo要新建对应的文件夹,查看不同分辨率对应的文件夹名称:alps\vendor\mediatek\proprietary\bootable\bootloader\lk\dev\logo比如480x854文件夹是fwvga目前android开机画面由三个部分(阶段)组成,第一部分在bootloader启动时显示(静态),第二部分在启动kernel时显示(静态...

2019-01-02 14:30:07 352

原创 system.prop添加自己的字段 SystemProperties.get权限问题

要添加的字段的文件device/mediateksample/g1860ph_v2_c_yg_q6203_o/system.prop先说adb查看  adb shell getprop |grep coolpad  查看自己就添加的字段在使用SystemProperties.get的时候提示get不了,权限问题 1、在AndroidManifest.xml中,在manifest加入...

2018-12-29 15:31:47 2893

原创 MTK平台小知识点笔记

1,内置GMS在device/mediatesample/项目名/ProjectConfig.mk下,BUILD_GMS=yes (yes内置 no去掉)2.编译内存不足,修改device/mediateksample/t939w_v2_aq_tyc_gm50p20_go/BoardConfig.mk,然后删除out/target/product/g1860ph_v2_c_yg_q6...

2018-12-24 14:05:59 73

原创 android8.1单编framework push开机验证无效问题

1,在D/mtk_project/mtk6580_O1_mp2_tk_test/alps/build/core/dex_preopt.mk# The default value for LOCAL_DEX_PREOPTDEX_PREOPT_DEFAULT ?= false此处true改成false2,GLOBAL_DEXPREOPT_FLAGS :=WITH_DEXPREOPT :=...

2018-12-01 16:11:22 578

转载 Android 操作系统中的内存回收,避免杀掉指定应用

原文:https://blog.csdn.net/anlike/article/details/77749833 Android 系统中内存回收的触发点大致可分为三种情况:第一种情况:用户程序调用 StartActivity(), 使当前活动的 Activity 被覆盖第二种情况:按下Back键,会调用finishActivityLocked,然后把Activity的finishing...

2018-11-23 19:53:19 230

原创 android控制第三方音乐播放器暂停 继续

private boolean isPauseMusic = false;//全局变量//控制的地方AudioManager audioManager= (AudioManager) mContext.getSystemService(Context.AUDIO_SERVICE);//如果是播放状态,抢焦点,音乐播放就会暂停if(audioManager.isMusicActive...

2018-09-25 17:39:50 2827 1

转载 接听电话流程分析

转自:https://www.aliyun.com/jiaocheng/7560.html阿里云  >  教程中心   >  android教程  >  接听电话流程分析   接听电话流程分析 发布时间:2018-01-18 来源:网络 上传者:用户 关键字: 接听 流程 电话 分析 发表文章 摘要:2,接听电话流程分析2.1InCallUI当有来电时,在来电...

2018-09-04 17:54:04 370

转载 Android6.0找不到settings.db数据库问题

文章地址:https://blog.csdn.net/w690333243/article/details/51331410请查看下面的链接修改:https://github.com/android/platform_frameworks_base/commit/683914bfb13908bf380a25258cd45bcf43f13dc9android6.0之后在data/data/...

2018-08-09 18:54:25 112

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