1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > [高通MSM8909][Android7.1]移除电池显示选项

[高通MSM8909][Android7.1]移除电池显示选项

时间:2023-07-14 02:05:13

相关推荐

[高通MSM8909][Android7.1]移除电池显示选项

文章目录

开发平台基本信息问题描述解决方法1. 系统设置屏蔽电池选项2.隐藏状态栏电池图标3.隐藏低电量系统弹框4.隐藏下拉菜单电池图标

开发平台基本信息

芯片:高通MSM8909

版本:Android 7.1

kernel:msm-3.18

问题描述

Android系统自带电池选项,如果设备没有电池功能,那么就要将系统中电池的选项移除掉,包括系统设置、状态栏、下拉菜单以及低电量报警弹框。

解决方法

1. 系统设置屏蔽电池选项

diff --git a/packages/apps/Settings/src/com/android/settings/SettingsActivity.java b/packages/apps/Settings/src/com/android/settings/SettingsActivity.javaindex 9047db9..b7fe5a9 100755--- a/packages/apps/Settings/src/com/android/settings/SettingsActivity.java+++ b/packages/apps/Settings/src/com/android/settings/SettingsActivity.java@@ -783,7 +783,7 @@ public class SettingsActivity extends SettingsDrawerActivity implements Preferen};mDevelopmentPreferences.registerOnSharedPreferenceChangeListener(mDevelopmentPreferencesListener);- registerReceiver(mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));+ //registerReceiver(mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));registerReceiver(mUserAddRemoveReceiver, new IntentFilter(Intent.ACTION_USER_ADDED));registerReceiver(mUserAddRemoveReceiver, new IntentFilter(Intent.ACTION_USER_REMOVED));@@ -798,7 +798,7 @@ public class SettingsActivity extends SettingsDrawerActivity implements Preferen@Overrideprotected void onStop() {super.onStop();- unregisterReceiver(mBatteryInfoReceiver);+ //unregisterReceiver(mBatteryInfoReceiver);unregisterReceiver(mUserAddRemoveReceiver);mDynamicIndexableContentMonitor.unregister();}@@ -1162,7 +1162,7 @@ public class SettingsActivity extends SettingsDrawerActivity implements Preferen}setTileEnabled(new ComponentName(packageName, Settings.PowerUsageSummaryActivity.class.getName()),-mBatteryPresent, isAdmin, pm);+false, isAdmin, pm);setTileEnabled(new ComponentName(packageName, Settings.UserSettingsActivity.class.getName()),UserHandle.MU_ENABLED && UserManager.supportsMultipleUsers() && !Utils.isMonkeyRunning(), isAdmin, pm);

2.隐藏状态栏电池图标

diff --git a/frameworks/base/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java b/frameworks/base/packages/SystemUI/src/com/android/systemui/BatteryMeterView.javaindex d8b95cc..e50cdc9 100644--- a/frameworks/base/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java+++ b/frameworks/base/packages/SystemUI/src/com/android/systemui/BatteryMeterView.java@@ -66,7 +66,7 @@ public class BatteryMeterView extends ImageView implementspublic void onTuningChanged(String key, String newValue) {if (StatusBarIconController.ICON_BLACKLIST.equals(key)) {ArraySet<String> icons = StatusBarIconController.getIconBlacklist(newValue);- setVisibility(icons.contains(mSlotBattery) ? View.GONE : View.VISIBLE);+ setVisibility(icons.contains(mSlotBattery) ? View.GONE : View.GONE);}}

3.隐藏低电量系统弹框

diff --git a/frameworks/base/packages/SystemUI/src/com/android/systemui/power/PowerUI.java b/frameworks/base/packages/SystemUI/src/com/android/systemui/power/PowerUI.javaindex 13b8bd6..4113a66 100644--- a/frameworks/base/packages/SystemUI/src/com/android/systemui/power/PowerUI.java+++ b/frameworks/base/packages/SystemUI/src/com/android/systemui/power/PowerUI.java@@ -208,7 +208,7 @@ public class PowerUI extends SystemUI {&& bucket < 0) {// only play SFX when the dialog comes up or the bucket changesfinal boolean playSound = bucket != oldBucket || oldPlugged;-mWarnings.showLowBatteryWarning(playSound);+//mWarnings.showLowBatteryWarning(playSound);} else if (isPowerSaver || plugged || (bucket > oldBucket && bucket > 0)) {mWarnings.dismissLowBatteryWarning();} else {

4.隐藏下拉菜单电池图标

diff --git a/frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.java b/frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.javaold mode 100644new mode 100755index 985bc9f..af115ac--- a/frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.java+++ b/frameworks/base/packages/SystemUI/src/com/android/systemui/qs/tiles/BatteryTile.java@@ -72,6 +72,11 @@ public class BatteryTile extends QSTile<QSTile.State> implements BatteryControll}@Override+ public boolean isAvailable() {+ return false;+ }++ @Overridepublic int getMetricsCategory() {return MetricsEvent.QS_BATTERY_TILE;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。