Android的开关机铃声是可以控制的,可以在设置里加个开关,控制开关机铃声的播放。因为涉及到c部分,所以systemprop是最好的选择
1.开机铃声的控制
frameworks/base/cmds/bootanimation/bootanimation_main.cpp
在main函数,找到sePaly标志位
char audio[PROPERTY_VALUE_MAX];
property_get("persist.sys.poweronoff_audio", audio, "0");
if (atoi(audio) == 1){
sePaly = true;
}else{
sePaly = false;
}
2.关机铃声的控制
frameworks/base/services/core/java/com/android/server/power/ShutdownThread.java
private static void beginShutdownSequence(Context context) {
找到标志位bPlayaudio
int powerOnoffAudio = android.os.SystemProperties.getInt("persist.sys.poweronoff_audio",0);
bPlayaudio = (powerOnoffAudio == 0)? false:true;
至于剩下的开关,我想就不用说了吧,很简单