Android8.1 源码修改
文章平均质量分 74
cczhengv
android ROM 定制开发
展开
-
Android8.1 MTK平台 WLAN热点定制
默认启用 WLAN 热点核心方法打开关闭 WLAN 热点从 SystemUI 中的 qsTile 快捷开关中提取既然要默认启用这里选择加到 KeyguardUpdateMonitor.java 中,监听开机广播vendor/mediatek/proprietary/packages/apps/SystemUI/src/com/android/keyguard/KeyguardUpdateMonitor.java+import com.android.systemui.Dependency;+im原创 2021-08-30 13:48:47 · 805 阅读 · 1 评论 -
Android 录屏原来可以这么优雅
都 2020 年了,听说 Android 还没有自带录屏功能,当项目经理把你一顿吊打的时候问你为啥 IOS 本身就自带这个功能,你竟然无言以对,你说再等等,最近看到 android11 预览版已经发布,看介绍说明之前砍掉的录屏功能将在此版本正式回归,就自带了。经理说现在大多用的还是android8、9的版本,不能再等了,现在就开始盘它。好嘛,既然要求搞,那就要弄得优雅些,想到优雅,那必须...原创 2020-03-11 13:38:33 · 5629 阅读 · 8 评论 -
Android8.1 MTK 短信 bug 修改
bug 如图发送短信后,实际发送一条,界面显示发送两条,问题本质是发件箱数据中确实写入了两条。2020-01-03 15:41:01.532 6736-6736/? D/cczSettingPreference: sms:: inbox2020-01-03 15:41:01.547 6736-6736/? D/cczSettingPreference: threadId:: 1 resu...原创 2020-01-06 15:18:53 · 770 阅读 · 1 评论 -
Android 8.1 允许安装未知来源权限/允许来自此来源的应用
之前 6.0 的未知来源权限是一个总的权限,现在单独分开了具体到 app 对应的权限了。具体可见截图安装未知来源权限其实就是这货 Manifest.permission.REQUEST_INSTALL_PACKAGES,具体的修改代码方案已经在上篇 Android9.0/8.1/6.0 默认给系统 app 授予所有权限中提供了。这篇只是分析解题思路。核心方法如下 if (checkInst...原创 2020-01-03 09:30:22 · 9321 阅读 · 5 评论 -
Android8.1 出厂前默认开启USB调试且自动授权,恢复出厂关闭USB调试方案
前言设备出厂前需要进行全检,需要用到 USB 调试,为了提高效率需修改系统为插入 USB 默认可直接调试,不弹出授权框。发到客户手里则需要手动连续点击版本号才可开启调试且需要授权框。修改方案1、预装 UsbNova app,恢复出厂可卸载,用于区分是否出厂标志2、在 Provision 中根据出厂标志是否开启 USB 调试3、在 SystemUI 中根据出厂标志是否默认 USB 授权...原创 2019-12-11 15:22:40 · 3844 阅读 · 1 评论 -
Android MTK平台 客制化系统来电界面(屏蔽 InCallUI 提供接口给客户自行展示来电去电页面)
OS: Android 8.1需求分析1、禁止系统来电铃声,提供接口给客户自己播放铃声2、禁止系统拉起来去电页面(InCallActivity),消息通知客户拉起自己的来去电页面3、禁止来电消息 Notification 显示(包括未接来电),点击跳转至 InCallActivity(未接来电消息可通知客户或者将 PendingIntent 改成客户的)上代码1、系统来电铃声播放在 T...原创 2019-12-05 16:48:02 · 1266 阅读 · 0 评论 -
MTK Recovery 模式横屏修改(适用于6.0 + 8.1+9.0)
修改前修改后6.0 Recovery 模式横屏修改方法修改相关文件bootable\recovery\minui\Android.mkbootable\recovery\minui\mt_graphic_rotate.cppbootable\recovery\minui\mt_graphic_rotate.hbootable\recovery\minui\graphics_fbd...原创 2019-09-16 16:44:41 · 3367 阅读 · 2 评论 -
Android8.1 MTK平台 增加定时开关机功能
前言定时开机需要底层 RTC 时钟支持,本文只针对 MTK 平台,其它平台不一定能适用请慎重参考文末链接定时开关机的原理其实和闹钟是一样的,只不过是个特殊的闹钟而已,由于之前 MTK 6.0 的系统中自带就有定时开关机的功能(在设置中嵌入菜单),8.1 中我们也将在设置界面中嵌入此功能。代码直接 copy 6.0 中的 SchedulePowerOnOff 源码,如果你没有可下载我提供的...原创 2019-09-03 18:04:34 · 5384 阅读 · 19 评论 -
Android8.1 MTK平台 增加三指截屏(仿IOS左下角显示缩略图点击放大显示)
效果图修改后动画如下系统原动画如下三指截屏PhoneWindowManager 同级目录下的 SystemGesturesPointerEventListener.java 主要负责处理界面的手势监听public class SystemGesturesPointerEventListener implements PointerEventListener { public vo...原创 2019-08-16 19:04:45 · 1181 阅读 · 0 评论 -
解决 Android8.1 MTK 平台 屏幕锁定设置加密后,重启开机动画走两次需输入两次密码的问题
看了设置中走的界面 CryptKeeper,重启需要输入密码的界面就是刚刚的 activityprivate static final String DECRYPT_STATE = "trigger_restart_framework";@Override public void onCreate(Bundle savedInstanceState) { super....原创 2019-08-12 17:12:35 · 1870 阅读 · 0 评论 -
Android8.1 MTK平台 系统需求定制
1、清空短信记录接口vendor\mediatek\proprietary\packages\apps\Mms\src\com\android\mms\transaction\NoneService.javapublic class NoneService extends Service { private static final String TAG = "NoneService"...原创 2019-08-23 18:35:22 · 2517 阅读 · 0 评论 -
Android 8.1 MTK平台 强制第三方 APP 横屏(微信、今日头条等)
前言我们都知道 activity 的横竖屏是通过 AndroidManifest.xml 中 android:screenOrientation 属性来配置的,或者在 java 代码中配置方向。but 没有 app 源码这就无能为力了,尤其像微信这种流量级的 app,官网已经没有横屏版本,对于手机厂商来说,做默认横屏的设备时就会遇到困难,网上的一些改横屏方法或多或少都存在些问题。我假设你的系统已...原创 2019-08-19 18:50:14 · 4514 阅读 · 0 评论 -
Android8.1 MTK平台 截屏功能分析
前言涉及到的源码有frameworks\base\services\core\java\com\android\server\policy\PhoneWindowManager.javavendor\mediatek\proprietary\packages\apps\SystemUI\src\com\android\systemui\screenshot\TakeScreenshotSer...原创 2019-08-09 18:23:35 · 963 阅读 · 0 评论 -
Android8.1 源码修改之插入SIM卡默认启用Volte功能
前言公用电话产品,插入SIM卡后要求自动打开Volte功能,即插即用,用完拔卡就走实现第一步 开关对应的代码通过打印日志和全局查找,源码位置 vendor/mediatek/proprietary/packages/services/Telephony/src/com/android/phone/MobileNetworkSettings.java04-15 08:15:29.238 1...原创 2019-04-22 18:47:24 · 1789 阅读 · 0 评论 -
Android8.1 源码修改之通过黑名单屏蔽系统短信功能和来电功能
前言之前写过一篇Android6.0 的屏蔽系统短信功能和来电功能,具体看这里同样的最近有个新需求,需要将8.1 设备的来电功能和短信功能都屏蔽掉,特殊产品就是特殊定制,那就开始吧。屏蔽短信功能还可沿用之前的6.0 处理方法, 在 SmsReceiverService.java 中 handleSmsReceived()中进行拦截分发但是想了想这次准备搞点不一样的,我发现通讯录和之前6....原创 2019-04-20 14:43:22 · 1263 阅读 · 0 评论 -
Android8.1 MTK平台 修改 Volte 视频通话我方视角为矩形
效果图修改位置vendor\mediatek\proprietary\packages\apps\Dialer\java\com\android\incallui\video\impl\VideoCallFragment.java直接注释掉 onCreateView() 中的 previewTextureView.setClipToOutline(true);这行代码,没错就是这么的简单粗...原创 2019-05-06 13:46:59 · 1276 阅读 · 0 评论 -
Android8.1 MTK平台 Dialer修改(通话常亮、按钮接听)
通话保持常亮在网上搜索的 Android保持屏幕常亮的方法,一种是 getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);另一种是通过 wakeLock, 经过测试发现在 InCallActivity.java 中 onCreate()使用第一种并不生效,看网上说的要放到 setContentView()之前...原创 2019-05-08 19:33:53 · 1600 阅读 · 0 评论 -
Android8.1 MTK平台 Dialer修改(来电全屏、归属地显示)
来电默认全屏默认情况下,来电android是以通知窗口的形式显示,只在屏幕的顶部显示,现在改为全屏显示修改位置alps\vendor\mediatek\proprietary\packages\apps\Dialer\java\com\android\incallui\InCallPresenter.javaprivate boolean startUi(InCallState inCal...原创 2019-05-10 18:49:43 · 1546 阅读 · 0 评论 -
Android8.1 MTK平台 修改系统默认语言和默认输入法
一、默认语言方法一路径 \device\公司名字\项目名字\full_项目名字.mk公司名字 看你的平台 mtk、rk项目名字 看你的out/target/product/ 文件夹名称PRODUCT_LOCALES := en_US zh_CN zh_TW es_ES pt_BR ru_RU fr_FR de_DE tr_TR vi_VN ms_MY in_ID th_TH it_...原创 2019-06-01 14:29:04 · 5121 阅读 · 2 评论 -
Android8.1 源码添加黑名单拦截电话和短信记录
知识储备1、 8.1 原生黑名单功能之前写过的 8.1 黑名单相关分析可看这篇 Android8.1 源码修改之通过黑名单屏蔽系统短信功能和来电功能2、 ContentProvider 的相关定义和使用不太懂的可看这篇 Android:关于ContentProvider的知识都在这里了!开始修改1、黑名单的增、删、查7.0 开始系统提供了 BlockedNumberCon...原创 2019-07-08 18:10:04 · 2932 阅读 · 0 评论 -
Android8.1 默认给第三方 app 授予所有权限
前言说下大体修改思路,app 安装成功、卸载、升级分别对应 Intent.ACTION_PACKAGE_ADDED、Intent.ACTION_PACKAGE_REMOVED、Intent.ACTION_PACKAGE_REPLACED 广播这样可以在收到安装成功的广播时给 app 授权,在 8.1 中收不到静态注册的广播,所以需要动态注册监听 ACTION_PACKAGE_ADDED。之前看...原创 2019-07-26 18:10:37 · 7148 阅读 · 4 评论 -
Android8.1 MTK平台 修改蓝牙默认名称
8.1 的默认蓝牙名称为 Android Bluedroid通过搜索你会找到如下文件 device/generic/common/bluetooth/bdroid_buildcfg.h#ifndef _BDROID_BUILDCFG_H#define _BDROID_BUILDCFG_H#define BTM_DEF_LOCAL_NAME "Android Bluedroid"#...原创 2019-08-01 17:53:36 · 1529 阅读 · 0 评论 -
Android8.1 开关VOLTE流程分析
前言最近有需求需要实现插卡默认打开Volte功能,顺带研究了下Volte的流程,在此做个记录开始从Settings设置界面入手,网络和互联网–>移动网络–>VoLTE高清通话(电信卡)/增强型4G LTE模式(移动卡)找到网络和互联网加载对应的Fragment为NetworkDashboardFragment,源码位置 vendor\mediatek\proprietary...原创 2019-04-22 18:44:50 · 3115 阅读 · 0 评论