android BSP开发之二

1.添加 system property

在/device/<vendor>/<project>/system.prop 文件中添加需要的属性。

如在XXX中添加"persist.sys.touch_mode"属性,在system.prop文件中新增一行如下内容:

cpp 复制代码
# Property for touch panel mode
persist.sys.touch_mode=glove

2**.添加Settings system, secure或者Global属性并监听**

下面以XXX为例添加Settings.system.BATTERY_SHIPPING_MODE.

添加BATTERY_SHIPPING_MODE Key

在frameworks/base/core/java/android/provider/Settings.java文件中添加"BATTERY_SHIPPING_MODE" key.

注册监听code

在frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java 文件的SettingsObserver中注册监听:

java 复制代码
class SettingsObserver extends ContentObserver {
        void observe() {
            // Observe all users' changes
            ......
            resolver.registerContentObserver(Settings.System.getUriFor(
                    Settings.System.BATTERY_SHIPPING_MODE),false,this,
                    UserHandle.USER_ALL);
        }

        @Override public void onChange(boolean selfChange) {
            ......
            updateBatteryShippingMode();
            ......
        }
    }

添加功能

java 复制代码
private void updateBatteryShippingMode(){
        int shippingMode = Settings.System.getInt(mContext.getContentResolver(), Settings.System.BATTERY_SHIPPING_MODE, 0);
        if(shippingMode == 1){
            ......
        }
    }

功能测试

测试功能的时候需要添加下面的权限

XML 复制代码
android:sharedUserId="android.uid.system"
    ......
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
 <uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
相关推荐
北京自在科技5 小时前
谷歌 Find Hub 迎来新版本更新
android·安卓
古法安卓11 小时前
Android-休眠唤醒后onLocationChanged没有数据问题排查
android·java·android studio
Htr_14 小时前
Creem 2.0 使用指南:面向 AI 构建时代的资金平台
android·数据库·人工智能·ui·photoshop
wardenlzr15 小时前
车机看门狗(Watchdog)为何会让整机硬重启
android·优化·车机
IT毕设实战小研16 小时前
基于大数据的商场商铺数据分析与可视化的设计与实现
android·java·大数据·django·课程设计
aqi0016 小时前
一文读懂 HarmonyOS 7.0 带来的十大API重要升级
android·华为·harmonyos·鸿蒙·harmony
是店小二呀17 小时前
鸿蒙PC开源移植:CodeLite原生IDE与Remote Agent适配
android·智能手机·远程桌面
终端安全笔记18 小时前
iOS 27 给了租赁一个新工具,但它只认受监督的设备
android·网络·安全·ios
爱笑鱼18 小时前
Android 系统启动机制(八):系统服务怎样从创建走到可用?SystemServiceManager 和 Boot Phase 各管什么?
android