[android][马达]冗余服务的去除

我们以马达服务为例,其他服务可参考去除相应的服务。

有时候,某个产品的开发初期,可能会直接将其它成熟产品的基线移植过来,里边可能会有多个马达服务进程,但是我们只需要其中一个,这时候就需要去除冗余的马达服务了。

有时候,某个产品需要对android系统进行升级,可能原本有多个马达服务,我们disable掉了它,但是在升级之后disable失效,造成多个马达服务进程抢占,可能引发一系列问题,比如:开机init阶段start service启动了并不需要的一个马达服务,而需要的马达服务却没有起来,这时候不适配的马达服务可能会自己关闭,然后system对它又再次调起,服务又再次关了,system又调起,如此反复,马达无法工作的同时,造成了系统资源的浪费(该服务反复重启时一直申请空间),这时候我们需要去除冗余的马达服务,也让真正需要工作的马达服务进程可以起来。

android 11及以下

prebuilt/qcom/odm/bengal/projectname/syscfg/etc/init/init.odm.rc

service vibrator-1-0 /vendor/bin/hw/vendor.hardware.vibrator@1.0-service
    class hal
    user system
    group system readproc
    disabled

添加disable来禁用该服务即可

android 12及以上

android 12及以上的版本,disable不生效,需要使用override来忽略服务,参考如下:
prebuilt/qcom/odm/bengal/projectname/syscfg/etc/init/init.odm.rc

service vibrator-1-0 /vendor/bin/hw/vendor.hardware.vibrator@1.0-service
    override
    class hal
    user system
    group system readproc
    disabled
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Android设备的马达开机振动可以通过调用系统的Vibrator类来实现。首先,我们需要获取Vibrator实例,然后使用vibrate()方法设置振动时间,使用cancel()方法关闭振动。另外,可以使用hasVibrator()方法来判断设备是否具有振动器硬件。\[1\] 在Android的框架中,默认开启振动的核心类是VibratorService.java。该类位于framework/base/services/core/java/com/android/server/目录下。在该类中,可以找到开启和关闭振动的相关实现。\[1\] 在内核中,振动功能的实现位于kernel-4.9/drivers/misc/mediatek/vibrator/mtxxxx/vibrator.c文件中。可以通过调用vibr_Enable_HW()和vibr_Disable_HW()函数来开启和关闭马达。\[2\] 在Android 10.0系统中的VibratorService.java中的hasVibrator()方法中,可以通过doVibratorExists()函数来判断是否有振动模式。可以通过设置系统属性persist.sys.support.vibration的值来控制是否开启振动模式。\[3\] 因此,如果你想在Android设备开机时进行振动,你可以在开机时调用Vibrator类的相关方法来实现。 #### 引用[.reference_title] - *1* *3* [Android 10.0 framework 默认开启振动](https://blog.csdn.net/baidu_41666295/article/details/124330727)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Android 内核实现开机振动效果](https://blog.csdn.net/weixin_45023644/article/details/115314960)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

霁之鸢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值