ラジオ局を再生するアプリがあり、アラームが鳴ったときにラジオ局を再生するように目覚まし時計を統合したいと考えています。私はアラームマネージャーを調べてきましたが、これが最善の方法のようです。
私のアプリには、ダイアログを呼び出してアラームを設定するアラームボタンがあります。アラームが設定されている場合、指定した時間にアプリを起動する必要があります。ただし、コードのこのセクションに問題があります。
Intent intent = new Intent("some Context", null, null, MainActivity.class);
PendingIntent pendInt = PendingIntent.getBroadcast("some Context", 0, intent, 0);
AlarmManager alarmService = (AlarmManager) getSystemService(Context.ALARM_SERVICE);
alarmService.set(AlarmManager.RTC_WAKEUP, timeToSound, pendInt);
具体的には、何context
が必要かについて混乱しています。多くの例を見てきましたが、実際に詳細に説明しているものはありません。誰かがこの問題に光を当てることができれば幸いです。
役立つかもしれないその他のコード...
@Override
protected Dialog onCreateDialog(int id) {
Dialog d = null;
switch (id) {
case LINEUP_DIALOG_ID:
d = new LineupDialog(this);
d.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);
WindowManager.LayoutParams lp = d.getWindow().getAttributes();
lp.dimAmount = 0.5f;
d.getWindow().setAttributes(lp);
break;
これは私のダイアログを呼び出します^
private View.OnClickListener lineupAction = new View.OnClickListener() {
@Override
public void onClick(View v) {
//showAlarm();
showDialog(LINEUP_DIALOG_ID);
}
};
これらは両方とも私の mainActivity にあります。
次に、レイアウトを保持するxmlファイルがあります(必要に応じて提供できます..ユーザーが時間とチェックボックスを選択して保存できるようにするだけです)
保存ボタンにはonclickListenerがあります--- NavDialogを拡張するLineupDialogクラスにあります、そして私のnavdialogはDialogを拡張するだけです。