平台信息:
內核:Linux version 3.10.0
系統:android/android6.0
平台:rk3288
作者:庄澤彬(歡迎轉載,請注明作者)
郵箱:2760715357@qq.com
本文是基於Android6.0的代碼,在做定制的時候發現在觸摸屏幕的時候,喇叭沒有聲音。下面就講解一下自己是怎么解決的。
一、修改代碼提高系統的音量。
代碼路徑:base/services/core/java/com/android/server/audio/AudioService.java
private static int[] MAX_STREAM_VOLUME = new int[] { 5, // STREAM_VOICE_CALL 7, // STREAM_SYSTEM 7, // STREAM_RING 15, // STREAM_MUSIC 7, // STREAM_ALARM 7, // STREAM_NOTIFICATION 15, // STREAM_BLUETOOTH_SCO 7, // STREAM_SYSTEM_ENFORCED 15, // STREAM_DTMF 15 // STREAM_TTS };
代碼中的這個數組用於設置系統音量的大小 STREAM_SYSTEM 提高這個值為15.愛實際的操作過程中改變這個值的大小影響不到。
二、直接替換觸摸時播放的ogg文件。
pax_adb push Effect_Tick.ogg /system/media/audio/ui/
這些音頻文件都放在frameworks/base/data/sounds/effects/選擇一個合適的Effect_Tick.ogg文件,之前之所以出現觸摸的時候沒有聲音的原因應該就是使用的ogg文件拷貝錯誤導致的。