Android來電鈴聲預設設定的實現方法與如何設定語音來電的預設鈴聲

來源:互聯網
上載者:User
Android來電鈴聲預設設定的實現方法與如何設定語音來電的預設鈴聲

一、Android來電鈴聲預設設定的實現方法Andoird預設來電鈴聲的設定方法為修改build/target/product/core.mk的ro.config.ringtone的值如ro.config.ringtone=Backroad.ogg,該音樂檔案必須於framework/base/data/sounds/Android.mk中加入音樂檔案。framework/base/media/java/android/media/MediaScanner.java中類的初始化時會設定預設鈴聲的檔案名稱的變數mDefaultRingtoneFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX + Setting.System.RINGTONE);MediaScanner該類會搜尋音樂檔案必插入資料庫中,搜尋過程中檢查是否與設定的預設鈴聲相同,如果相同則設為預設鈴聲。} else if (ringtones && mWasEmptyPriorToScan && !mDefaultRingtoneSet) {
                if (TextUtils.isEmpty(mDefaultRingtoneFilename) ||
                        doesPathHaveFilename(entry.mPath, mDefaultRingtoneFilename)) {
                    setSettingIfNotSet(Settings.System.RINGTONE, tableUri, rowId);
                    setProfileSettings(AudioProfileManager.TYPE_RINGTONE, tableUri, rowId);
                    mDefaultRingtoneSet = true;
                }
            }二、如何設定語音來電的預設鈴聲首先在core.mk中新增ro.config.videocall=BentleyDubs.ogg。在framework/base/media/java/android/media/MediaScanner.java類中新加兩個成員變數

private boolean mDefaultVideoCallSet;

private String mDefaultVideoCallFilename;在setDefaultRingtoneFileNames()方法中加入以下代碼初始化預設鈴聲的檔案名稱

        mDefaultVideoCallFilename = SystemProperties.get(DEFAULT_RINGTONE_PROPERTY_PREFIX
                + Settings.System.VIDEO_CALL);

在endFile()方法中加入以下代碼設定語音來電的預設鈴聲            } else if (ringtones && mWasEmptyPriorToScan && !mDefaultVideoCallSet) {
                if (TextUtils.isEmpty(mDefaultVideoCallFilename) ||
                        doesPathHaveFilename(entry.mPath, mDefaultVideoCallFilename)) {
                    setSettingIfNotSet(Settings.System.VIDEO_CALL, tableUri, rowId);
                    setProfileSettings(AudioProfileManager.TYPE_VIDEO_CALL, tableUri, rowId);
                    mDefaultVideoCallSet = true;
                }
            } 
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.