package com.example.alarm;

import java.util.Calendar;

import android.app.Activity;
import android.app.AlarmManager;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.util.Log;

public class AlarmActivity extends Activity {
	private BroadcastReceiver receiver = new BroadcastReceiver() {
		@Override
		public void onReceive(Context context, Intent intent) {
			String keyword1 = intent.getStringExtra("hogeID");
			Log.v("MainActivityID", keyword1);// 理想はこちらでアラーム後の値を拾いたい。
		}
	};

	/** Called when the activity is first created. */
	@Override
	public void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);
		alarmtimeset();

		IntentFilter filter = new IntentFilter();
		filter.addAction("com.example.action.ALARM");
		registerReceiver(receiver, filter);
	}

	@Override
	protected void onDestroy() {
		super.onDestroy();
		unregisterReceiver(receiver);
	}

	public void alarmtimeset() {
		Log.v("TEST", "アラームセット");
		for (int intc = 0; intc < 5; intc++) {
			Intent intent = new Intent(getApplicationContext(), AlarmReceiver.class); // ReceivedActivityを呼び出すインテントを作成
			intent.putExtra("hogeID", "ID" + intc);
			intent.setType("Hoge" + intc);
			PendingIntent sender = PendingIntent.getBroadcast(AlarmActivity.this, 0, intent, 0); // ブロードキャストを投げるPendingIntentの作成

			Calendar calendar = Calendar.getInstance(); // Calendar取得
			calendar.setTimeInMillis(System.currentTimeMillis()); // 現在時刻を取得
			// calendar.set(2013,9,7,10,50,0+intc*10);//時刻を手動で設定
			calendar.add(Calendar.SECOND, 10 * intc);
			AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE); // AlramManager取得
			am.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), sender); // AlramManagerにPendingIntentを登録
		}
	}
}
