バックグラウンドでのアクティビティなしで、実際のアラームアプリが正確な時間にダイアログボックスをポップアップする方法を知りたいです。私が探している正確な解決策については、この投稿を参照してください。ただし、この質問への回答は大歓迎です。
ポップアップのコード
public void onCreate(Bundle savedinstance)
{
super.onCreate(savedinstance);
//alarmsound = MediaPlayer.create(this, R.raw.wewillrock);
alarmsound = new MediaPlayer();
try {
if(db.getAlarmCount()!=0)
{
Cursor alarmcursor = db.getAlarmdetails(this);
if(alarmcursor!=null)
{
alarmcursor.moveToFirst();
String alarmTonepath = alarmcursor.getString(alarmcursor.getColumnIndex(GinoClockDatabase.AL_RINGTONEPATH));
alarmsound.setDataSource(alarmTonepath);
alarmsound.prepare();
}
db.close();
}
db.close();
} catch (IllegalArgumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block0
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
alarmsound.start();
((Activity)Global.context).finish();
setContentView(R.layout.reminderpopupmessage);
settingViews();
}
private void settingViews() {
yes = (Button) findViewById(R.id.btnReminderyes);
no = (Button) findViewById(R.id.btnReminderno);
}
@Override
public void onClick(View v) {
switch(v.getId())
{
case R.id.btnReminderyes:
alarmsound.stop();
Intent splashscreen = new Intent(ReminderPopupMessage.this,SplashScreen.class);
startActivity(splashscreen);
ReminderPopupMessage.this.finish();
break;
case R.id.btnReminderno:
alarmsound.stop();
ReminderPopupMessage.this.finish();
break;
}
}
この解決策を 1 か月以上探していますが、解決策が見つかりませんでした。このアラーム機能について 5 つ以上の質問をしたと思います。私は今答えを得ることを願っています。
助けてくれてありがとう。