您的位置:首页 > 移动开发 > Android开发

在Android系统中添加一款新铃声

2013-01-10 15:17 155 查看
想在Android系统中添加铃声,可以通过adb push 的方法,但如果要多次修改系统,每次push进去就显得太费劲了,这里有个简单的方法,就是把铃声编译进android 的system.img文件中,在每次刷机的时候,铃声就自动添加了。

 

废话不多说,直接切入主题:

 

1、Android系统中的铃声都放在了frameworks/base/data/sounds/目录下,所以第一步需要先把铃声拷贝到这个路径下。

进入frameworks/base/data/sounds/目录

~/work/android_src$ cd frameworks/base/data/sounds/

2、把需要添加的音频文件test_music.ogg拷贝到这个目录

~/work/android_src/frameworks/base/data/sounds$ ls

Alarm_Beep_01.ogg     Alarm_Rooster_02.ogg  effects              newwavelabs          Ring_Classic_03.ogg  Ring_Digital_04.ogg  Ring_Synth_04.ogg

Alarm_Beep_02.ogg     alert.ogg             F1_MissedCall.ogg    notifications        Ring_Classic_04.ogg  Ring_Digital_05.ogg  Ring_Synth_05.ogg

Alarm_Beep_03.ogg     AudioPackage2.mk      F1_New_MMS.ogg       OriginalAudio.mk     Ring_Classic_05.ogg  ringer.ogg           ringtones

Alarm_Buzzer.ogg      AudioPackage3.mk      F1_New_SMS.ogg       ring3.ogg            Ring_Digital_01.ogg  Ring_Synth_01.ogg    testfiles

Alarm_Classic.ogg     AudioPackage4.mk      F1_NewVoicemail.ogg  Ring_Classic_01.ogg  Ring_Digital_02.ogg  Ring_Synth_02.ogg

Alarm_Rooster_01.ogg  test_music.ogg       Ring_Classic_02.ogg  Ring_Digital_03.ogg  Ring_Synth_03.ogg

3、要在每次编译的时候都把音频文件编译到system.img文件中,还需要找下Android系统管家,也就是*.mk文件。

~/work/android_src/frameworks/base/data/sounds$ lsls -l *.mk

-rwxr-xr-x 1 hyson hyson 7876 2011-01-26 08:16 AudioPackage2.mk

-rwxr-xr-x 1 hyson hyson 7471 2011-01-26 08:16 AudioPackage3.mk

-rwxr-xr-x 1 hyson hyson 7817 2011-01-26 08:16 AudioPackage4.mk

-rwxr-xr-x 1 hyson hyson 3081 2011-01-26 08:16 OriginalAudio.mk

 

4、修改其中的mk文件,把音频文件添加进去。以修改OriginalAudio.mk为例。

~/work/android_src/frameworks/base/data/sounds$  vi OriginalAudio.mk

 

[c-sharp]
view plaincopy

$(LOCAL_PATH)/notifications/AlertSound_sample-08.ogg:system/media/audio/notifications/AlertSound_sample-08.ogg /  
  
$(LOCAL_PATH)/test_music.ogg:system/media/audio/notifications/test_music.ogg/  
  
$(LOCAL_PATH)/Alarm_Buzzer.ogg:system/media/audio/alarms/Alarm_Buzzer.ogg /  

 
$(LOCAL_PATH)/test_music.ogg:system/media/audio/notifications/test_music.ogg/

表示把当前目录的test_music.ogg文件编译到target系统的system/media/audio/notifications/目录下。

 

5、编译系统

~/work/android_src/frameworks/base/data/sounds$ mm snod

mm snod会直接在当前目录下编译,并把编译结果写入system.img文件中。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: