blob: b637b04639880e722228f5dad7cf1391369c8cb2 [file] [log] [blame]
Alexandre Lision6d867b92013-10-25 15:36:28 -04001package org.sflphone.utils;
2
3import org.sflphone.service.SipService;
4
Alexandre Lision63870a72013-10-28 16:33:47 -04005import android.content.Context;
6import android.media.AudioManager;
Alexandre Lision6e9c7e52013-10-29 15:54:11 -04007import android.media.AudioManager.OnAudioFocusChangeListener;
Alexandre Lision6d867b92013-10-25 15:36:28 -04008import android.os.Handler;
9import android.util.Log;
10
Alexandre Lision6e9c7e52013-10-29 15:54:11 -040011public class MediaManager implements OnAudioFocusChangeListener{
Alexandre Lision6d867b92013-10-25 15:36:28 -040012
13 private static final String TAG = MediaManager.class.getSimpleName();
14 private SipService mService;
15 private SettingsContentObserver mSettingsContentObserver;
Alexandre Lision63870a72013-10-28 16:33:47 -040016 AudioManager mAudioManager;
Alexandre Lision6d867b92013-10-25 15:36:28 -040017
18 public MediaManager(SipService aService) {
19 mService = aService;
20 mSettingsContentObserver = new SettingsContentObserver(mService, new Handler());
Alexandre Lision63870a72013-10-28 16:33:47 -040021 mAudioManager = (AudioManager) aService.getSystemService(Context.AUDIO_SERVICE);
Alexandre Lision6d867b92013-10-25 15:36:28 -040022 }
23
24 public void startService() {
25 mService.getApplicationContext().getContentResolver()
26 .registerContentObserver(android.provider.Settings.System.CONTENT_URI, true, mSettingsContentObserver);
27 }
28
29 public void stopService() {
30 Log.i(TAG, "Remove media manager....");
31 mService.getApplicationContext().getContentResolver().unregisterContentObserver(mSettingsContentObserver);
32 }
33
Alexandre Lision63870a72013-10-28 16:33:47 -040034 public AudioManager getAudioManager() {
35 return mAudioManager;
36 }
37
Alexandre Lision6e9c7e52013-10-29 15:54:11 -040038 public void obtainAudioFocus() {
39 mAudioManager.requestAudioFocus(this, Compatibility.getInCallStream(false), AudioManager.AUDIOFOCUS_GAIN_TRANSIENT);
40 }
41
42 @Override
43 public void onAudioFocusChange(int arg0) {
44 // TODO Stub de la méthode généré automatiquement
45
46 }
47
Alexandre Lision6d867b92013-10-25 15:36:28 -040048}