在我們編寫代碼的時候如果想在自己設定的某一天給出提醒功能,按照鬧鐘提醒方式就不能夠解決這個問題了(只能設置時、分)。對於這個問題,比較簡單(或者偷懶)的做法就是調用系統的日曆,讓系統自帶的日曆來給提醒。
在監聽事件中添加以下幾行代碼就可以了。
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.android.calendar", "com.android.calendar.LaunchActivity"));
startActivity(intent);
另外,值得注意的是:如果SDK版本小於8的,應該把com.android.calendar改爲com.google.android.calendar
在一個網友的blog中發現一段比較好的寫法:http://hi.baidu.com/sibylslove/item/5c0b03344d4ac75780f1a756 在此對他表示感謝!
try {
Intent i = new Intent();
ComponentName cn = null;
if (Integer.parseInt(Build.VERSION.SDK) >= 8) {
cn = new ComponentName("com.android.calendar",
"com.android.calendar.LaunchActivity");
} else {
cn = new ComponentName("com.google.android.calendar",
"com.android.calendar.LaunchActivity");
}
i.setComponent(cn);
startActivity(i);
} catch (ActivityNotFoundException e) {
// TODO: handle exception
Log.e("ActivityNotFoundException", e.toString());
}