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

androidN_高通平台—计时器结束无铃声问题修改

2017-07-04 17:02 507 查看
androidN_高通平台—计时器结束无铃声问题修改

文件1:packages/apps/DeskClock / src/com/android/deskclock/data/SettingsModel.java

:Uri getDefaultTimerRingtoneUri() {

        if (mDefaultTimerRingtoneUri == null) {

           /* final String packageName = mContext.getPackageName();

            final int resId = R.raw.timer_expire;

            final String uriString = String.format("android.resource://%s/%d", packageName, resId);

            mDefaultTimerRingtoneUri = Uri.parse(uriString);*/
            //add this

            mDefaultTimerRingtoneUri = Uri.parse("content://settings/system/alarm_alert");//Alarm.NO_RINGTONE_URI;

           //end this

        }

        return mDefaultTimerRingtoneUri;

    }

    Uri getTimerRingtoneUri() {

        return SettingsDAO.getTimerRingtoneUri(mContext, getDefaultTimerRingtoneUri());

    }

    Uri getDefaultAlarmRingtoneUri() {

文件2:packages/apps/DeskClock / src/com/android/deskclock/data/TimerModel.java
   //add 

           /* if (isTimerRingtoneSilent()) {

                // Special case: no ringtone has a title of "Silent".

                mTimerRingtoneTitle = mContext.getString(R.string.silent_timer_ringtone_title);

            } else {

                final Uri defaultUri = getDefaultTimerRingtoneUri();

                final Uri uri = getTimerRingtoneUri();

                /*if (defaultUri.equals(uri)) {

                    // Special case: default ringtone has a title of "Timer Expired".

                    //modify by niuxiaoyan 20170119 Ringtone dispaly is wrong begin:

                  // mTimerRingtoneTitle = mContext.getString(R.string.default_timer_ringtone_title); 

                   // mTimerRingtoneTitle = mContext.getString(R.string.silent_timer_ringtone_title);  

                    //modify by niuxiaoyan 20170119 Ringtone dispaly is wrong end.

                    //modify by sunguoqing 2017/3/30 add method(use Alarm_title to set timer_title) begin ;

              //  }else 

               */ 

   //end 

             if("content://settings/system/alarm_alert".equals(uri.toString())){

                    mTimerRingtoneTitle = mAlarm_title;                                                

                    //modify by sunguoqing 2017/3/30 add method(use Alarm_title to set timer_title) end ;

                } else {

                    final Ringtone ringtone = RingtoneManager.getRingtone(mContext, uri);

                    mTimerRingtoneTitle = ringtone.getTitle(mContext);

                }

            }

        return mTimerRingtoneTitle;

    }

文件3:packages/apps/DeskClock / src/com/android/deskclock/settings/TimerRingtonePreference.java

    @Override

    protected void onPrepareRingtonePickerIntent(@NonNull Intent ringtonePickerIntent) {

        super.onPrepareRingtonePickerIntent(ringtonePickerIntent);

        // Replace the default ringtone uri with the beeping ringtone for timers.

        ringtonePickerIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_DEFAULT_URI,

                DataModel.getDataModel().getDefaultTimerRingtoneUri());
        //add 

        ringtonePickerIntent.putExtra(RingtoneManager.EXTRA_RINGTONE_EXISTING_URI,

                DataModel.getDataModel().isTimerRingtoneSilent() ? null : DataModel.getDataModel().getTimerRingtoneUri());

       //end 

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息