package com.cfap.cfadevicemanager; import android.annotation.TargetApi; import android.app.Activity; import android.content.Context; import android.media.AudioAttributes; import android.media.AudioManager; import android.media.Ringtone; import android.media.RingtoneManager; import android.net.Uri; import android.os.Build; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.cfap.cfadevicemanager.models.DeviceInfo; /** * Created by Shreya Jagarlamudi on 22/09/15. */ public class DialogActivity extends Activity { private String message; private Button btnOK; private TextView txtMessage; private Uri defaultRingtoneUri; private Ringtone defaultRingtone; private DeviceInfo deviceInfo; private String type; private String TAG = "DialogActivity"; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_alert); btnOK = (Button) findViewById(R.id.btnOK); txtMessage = (TextView) findViewById(R.id.txtMessage); deviceInfo = new DeviceInfo(this); Bundle extras = getIntent().getExtras(); if (extras != null) { if (extras.containsKey("message")) { message = extras.getString("message"); } type = extras.getString("type"); if ("ring".equalsIgnoreCase(type)) { startAlarm(); } } startAlarm(); txtMessage.setText(message); btnOK.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { if ("ring".equalsIgnoreCase(type)) { stopAlarm(); DialogActivity.this.finish(); } else { DialogActivity.this.finish(); } } }); } @TargetApi(21) private void startAlarm() { AudioManager am; am= (AudioManager) getBaseContext().getSystemService(Context.AUDIO_SERVICE); //For Normal mode am.setRingerMode(AudioManager.RINGER_MODE_NORMAL); defaultRingtoneUri = RingtoneManager.getActualDefaultRingtoneUri(this, RingtoneManager.TYPE_RINGTONE); defaultRingtone = RingtoneManager.getRingtone(this, defaultRingtoneUri); if (deviceInfo.getSdkVersion() >= Build.VERSION_CODES.LOLLIPOP) { AudioAttributes attributes = new AudioAttributes.Builder(). setUsage(AudioAttributes.USAGE_NOTIFICATION). setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION). build(); defaultRingtone.setAudioAttributes(attributes); defaultRingtone.play(); } else { defaultRingtone.setStreamType(AudioManager.STREAM_NOTIFICATION); defaultRingtone.play(); } } private void stopAlarm() { if (defaultRingtone != null && defaultRingtone.isPlaying()) { defaultRingtone.stop(); } } }