@ -34,6 +34,9 @@ import net.micode.notes.data.Notes.NoteColumns;
public class AlarmInitReceiver extends BroadcastReceiver {
public class AlarmInitReceiver extends BroadcastReceiver {
// 数据格式封包
// 数据格式封包
/ * *
* 对 数 据 库 的 操 作 , 调 用 标 签 ID 和 闹 钟 时 间
* /
private static final String [ ] PROJECTION = new String [ ] {
private static final String [ ] PROJECTION = new String [ ] {
NoteColumns . ID ,
NoteColumns . ID ,
NoteColumns . ALERTED_DATE
NoteColumns . ALERTED_DATE
@ -46,11 +49,21 @@ public class AlarmInitReceiver extends BroadcastReceiver {
@Override
@Override
public void onReceive ( Context context , Intent intent ) {
public void onReceive ( Context context , Intent intent ) {
long currentDate = System . currentTimeMillis ( ) ;
long currentDate = System . currentTimeMillis ( ) ;
/ * *
* System . currentTimeMillis ( ) 产 生 一 个 当 前 的 毫 秒
* 这 个 毫 秒 其 实 就 是 自 1970 年 1 月 1 日 0 时 起 的 毫 秒 数
* /
Cursor c = context . getContentResolver ( ) . query ( Notes . CONTENT_NOTE_URI ,
Cursor c = context . getContentResolver ( ) . query ( Notes . CONTENT_NOTE_URI ,
PROJECTION ,
PROJECTION ,
NoteColumns . ALERTED_DATE + ">? AND " + NoteColumns . TYPE + "=" + Notes . TYPE_NOTE ,
NoteColumns . ALERTED_DATE + ">? AND " + NoteColumns . TYPE + "=" + Notes . TYPE_NOTE ,
new String [ ] { String . valueOf ( currentDate ) } ,
new String [ ] { String . valueOf ( currentDate ) } ,
/ * *
* 将 long 变 量 currentDate 转 化 为 字 符 串
* /
null ) ;
null ) ;
/ * *
* Cursor 在 这 里 的 作 用 是 通 过 查 找 数 据 库 中 的 标 签 内 容 , 找 到 和 当 前 系 统 时 间 相 等 的 标 签
* /
if ( c ! = null ) {
if ( c ! = null ) {
if ( c . moveToFirst ( ) ) {
if ( c . moveToFirst ( ) ) {
@ -66,5 +79,10 @@ public class AlarmInitReceiver extends BroadcastReceiver {
}
}
c . close ( ) ;
c . close ( ) ;
}
}
/ * *
* 然 而 通 过 网 上 查 找 资 料 发 现 , 对 于 闹 钟 机 制 的 启 动 , 通 常 需 要 上 面 的 几 个 步 骤
* 如 新 建 Intent 、 PendingIntent 以 及 AlarmManager 等
* 这 里 就 是 根 据 数 据 库 里 的 闹 钟 时 间 创 建 一 个 闹 钟 机 制
* /
}
}
}
}