電話がロックされていてもメッセージを受信するとアラームを鳴らすプログラムを作成しました。電話が鳴ると、アラームを停止するための却下ボタンが表示されますが、私のコードは却下ボタンを表示するだけですぐに消え、アラームを停止する方法のオプションがありません。このコードを手伝ってください。事前に助けてくれてありがとう
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.receiverinterface);
unlockScreen();
alertDialogBuilder = new AlertDialog.Builder(
context);
alertDialogBuilder.setTitle("Alarm");
alertDialogBuilder
.setMessage("Stop Alarm")
.setCancelable(false)
.setPositiveButton("Dismiss", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,int id) {
Ringtone r = EAlarmReceiver.r;
r.stop();
Toast.makeText(context.getApplicationContext(), "Alarm Stopped", Toast.LENGTH_LONG).show();
if(EAlarmReceiver.sms.length() > 10)
{
Intent openInterface = new Intent("proj.receiver.VIEWMESSAGE");
openInterface.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(openInterface);
}
else
{
Intent openInterface = new Intent("proj.receiver.RECEIVERINTERFACE");
openInterface.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(openInterface);
}
}
});
// create alert dialog
AlertDialog alertDialog = alertDialogBuilder.create();
// show it
alertDialog.show();
}// end oncreate()
@Override
protected void onPause() {
// TODO Auto-generated method stub
super.onPause();
finish();
}
//unlock screen
public void unlockScreen() {
//make the activity show even the screen is locked.
Window window = getWindow();
window.addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON
+ WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
+ WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON
+ WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD);
}