日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > Android >内容正文

Android

android 设置默认铃声,Android系统修改默认铃声

發布時間:2024/9/30 Android 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 android 设置默认铃声,Android系统修改默认铃声 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Andriod手機的鈴聲默認保存在system/media/audio/下面,有四個文件夾,分別是alarms,notifications,ringtones,ui。對應鬧鐘、通知、鈴聲、UI音效。root的手機可以直接替換修改相應目錄下的文件來修改鈴聲。那這些聲音是從哪里來的呢。由于需要修改默認的鈴聲,就讀了一下源碼,這里進行記錄一下。

在源碼中,這些文件保存在frameworks\base\data\sounds目錄下面,通過修改相應的mk文件把這些聲音文件放到手機的相應目錄。手機啟動后會調用媒體庫對手機內外存儲上的多媒體文件進行掃描,保存其URI到媒體庫的數據庫中。當設置鈴聲時,會調用媒體庫的(mediaProvider)RingtonePickerActivity進行設置。這里鈴聲Uri保存在數據庫中,通過媒體庫掃描出來顯示個列表供選擇。默認鈴聲的URI保存在設置(Settings)的數據庫中,在表system里面。

修改默認鈴聲

修改mk文件,ro.config.ringtone對應手機默認鈴聲,ro.config.alarm_alert對應鬧鐘默認鬧鈴,ro.config.notification_sound設置通知默認響鈴。我這里修改的是/build/target/product/full_base.mk,編譯的時候這些值會被編到? build.prop內。

PRODUCT_PROPERTY_OVERRIDES := \

ro.config.ringtone=yami_style1.ogg \

ro.config.alarm_alert=Alarm_Rooster_02.ogg \

ro.config.notification_sound=yami_notification.ogg

在MediaScanner.java中讀取并保存配置到設置里面。

private static final String DEFAULT_RINGTONE_PROPERTY_PREFIX ="ro.config.";

private void setDefaultRingtoneFileNames() {

mDefaultRingtoneFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX

+ Settings.System.RINGTONE);

mDefaultNotificationFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX

+ Settings.System.NOTIFICATION_SOUND);

mDefaultAlarmAlertFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX

+ Settings.System.ALARM_ALERT);

}

...

if (TextUtils.isEmpty(mDefaultRingtoneFilename) ||

doesPathHaveFilename(entry.mPath, mDefaultRingtoneFilename)) {

needToSetSettings = true;

}

...

if(needToSetSettings) {

if (notifications) {

setSettingIfNotSet(Settings.System.NOTIFICATION_SOUND, tableUri, rowId);

mDefaultNotificationSet = true;

} else if (ringtones) {

setSettingIfNotSet(Settings.System.RINGTONE, tableUri, rowId);

if (MSimTelephonyManager.getDefault().isMultiSimEnabled()) {

// Set the setting to the given URI for RINGTONE_2

setSettingIfNotSet(Settings.System.RINGTONE_2, tableUri, rowId);

}

mDefaultRingtoneSet = true;

} else if (alarms) {

setSettingIfNotSet(Settings.System.ALARM_ALERT, tableUri, rowId);

mDefaultAlarmSet = true;

}

}

這里看到寫入了數據庫中。

總結

以上是生活随笔為你收集整理的android 设置默认铃声,Android系统修改默认铃声的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。