1616
1717package android .media ;
1818
19+ import static android .Manifest .permission .REMOTE_AUDIO_PLAYBACK ;
1920import static android .media .AudioManager .RINGER_MODE_NORMAL ;
2021import static android .media .AudioManager .RINGER_MODE_SILENT ;
2122import static android .media .AudioManager .RINGER_MODE_VIBRATE ;
@@ -360,7 +361,6 @@ public void onError(int error) {
360361 private int mPrevVolDirection = AudioManager .ADJUST_SAME ;
361362 // Keyguard manager proxy
362363 private KeyguardManager mKeyguardManager ;
363-
364364 // mVolumeControlStream is set by VolumePanel to temporarily force the stream type which volume
365365 // is controlled by Vol keys.
366366 private int mVolumeControlStream = -1 ;
@@ -369,6 +369,8 @@ public void onError(int error) {
369369 // server process so in theory it is not necessary to monitor the client death.
370370 // However it is good to be ready for future evolutions.
371371 private ForceControlStreamClient mForceControlStreamClient = null ;
372+ // Used to play ringtones outside system_server
373+ private volatile IRingtonePlayer mRingtonePlayer ;
372374
373375 ///////////////////////////////////////////////////////////////////////////
374376 // Construction
@@ -4230,6 +4232,17 @@ public void remoteControlDisplayUsesBitmapSize(IRemoteControlDisplay rcd, int w,
42304232 }
42314233 }
42324234
4235+ @ Override
4236+ public void setRingtonePlayer (IRingtonePlayer player ) {
4237+ mContext .enforceCallingOrSelfPermission (REMOTE_AUDIO_PLAYBACK , null );
4238+ mRingtonePlayer = player ;
4239+ }
4240+
4241+ @ Override
4242+ public IRingtonePlayer getRingtonePlayer () {
4243+ return mRingtonePlayer ;
4244+ }
4245+
42334246 @ Override
42344247 protected void dump (FileDescriptor fd , PrintWriter pw , String [] args ) {
42354248 mContext .enforceCallingOrSelfPermission (android .Manifest .permission .DUMP , TAG );
@@ -4238,6 +4251,4 @@ protected void dump(FileDescriptor fd, PrintWriter pw, String[] args) {
42384251 dumpFocusStack (pw );
42394252 dumpRCStack (pw );
42404253 }
4241-
4242-
42434254}
0 commit comments