You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gitProject1/01src/net/micode/notes/ui/AlarmInitReceiver.java.html

86 lines
5.1 KiB

<html>
<head>
<title>AlarmInitReceiver.java</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<style type="text/css">
.s0 { color: #8c8c8c; font-style: italic;}
.s1 { color: #080808;}
.s2 { color: #0033b3;}
.s3 { color: #1750eb;}
.s4 { color: #067d17;}
</style>
</head>
<body bgcolor="#ffffff">
<table CELLSPACING=0 CELLPADDING=5 COLS=1 WIDTH="100%" BGCOLOR="#c0c0c0" >
<tr><td><center>
<font face="Arial, Helvetica" color="#000000">
AlarmInitReceiver.java</font>
</center></td></tr></table>
<pre><span class="s0">/*
* Copyright (c) 2010-2011, The MiCode Open Source Community (www.micode.net)
*
* Licensed under the Apache License, Version 2.0 (the &quot;License&quot;);
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/</span>
<span class="s2">package </span><span class="s1">net.micode.notes.ui;</span>
<span class="s2">import </span><span class="s1">android.app.AlarmManager;</span>
<span class="s2">import </span><span class="s1">android.app.PendingIntent;</span>
<span class="s2">import </span><span class="s1">android.content.BroadcastReceiver;</span>
<span class="s2">import </span><span class="s1">android.content.ContentUris;</span>
<span class="s2">import </span><span class="s1">android.content.Context;</span>
<span class="s2">import </span><span class="s1">android.content.Intent;</span>
<span class="s2">import </span><span class="s1">android.database.Cursor;</span>
<span class="s2">import </span><span class="s1">net.micode.notes.data.Notes;</span>
<span class="s2">import </span><span class="s1">net.micode.notes.data.Notes.NoteColumns;</span>
<span class="s2">public class </span><span class="s1">AlarmInitReceiver </span><span class="s2">extends </span><span class="s1">BroadcastReceiver {</span>
<span class="s2">private static final </span><span class="s1">String [] PROJECTION = </span><span class="s2">new </span><span class="s1">String [] {</span>
<span class="s1">NoteColumns.ID,</span>
<span class="s1">NoteColumns.ALERTED_DATE</span>
<span class="s1">};</span>
<span class="s2">private static final int </span><span class="s1">COLUMN_ID = </span><span class="s3">0</span><span class="s1">;</span>
<span class="s2">private static final int </span><span class="s1">COLUMN_ALERTED_DATE = </span><span class="s3">1</span><span class="s1">;</span>
<span class="s1">@Override</span>
<span class="s2">public void </span><span class="s1">onReceive(Context context, Intent intent) {</span>
<span class="s2">long </span><span class="s1">currentDate = System.currentTimeMillis();</span>
<span class="s1">Cursor c = context.getContentResolver().query(Notes.CONTENT_NOTE_URI,</span>
<span class="s1">PROJECTION,</span>
<span class="s1">NoteColumns.ALERTED_DATE + </span><span class="s4">&quot;&gt;? AND &quot; </span><span class="s1">+ NoteColumns.TYPE + </span><span class="s4">&quot;=&quot; </span><span class="s1">+ Notes.TYPE_NOTE,</span>
<span class="s2">new </span><span class="s1">String[] { String.valueOf(currentDate) },</span>
<span class="s2">null</span><span class="s1">);</span>
<span class="s2">if </span><span class="s1">(c != </span><span class="s2">null</span><span class="s1">) {</span>
<span class="s2">if </span><span class="s1">(c.moveToFirst()) {</span>
<span class="s2">do </span><span class="s1">{</span>
<span class="s2">long </span><span class="s1">alertDate = c.getLong(COLUMN_ALERTED_DATE);</span>
<span class="s1">Intent sender = </span><span class="s2">new </span><span class="s1">Intent(context, AlarmReceiver.</span><span class="s2">class</span><span class="s1">);</span>
<span class="s1">sender.setData(ContentUris.withAppendedId(Notes.CONTENT_NOTE_URI, c.getLong(COLUMN_ID)));</span>
<span class="s1">PendingIntent pendingIntent = PendingIntent.getBroadcast(context, </span><span class="s3">0</span><span class="s1">, sender, </span><span class="s3">0</span><span class="s1">);</span>
<span class="s1">AlarmManager alermManager = (AlarmManager) context</span>
<span class="s1">.getSystemService(Context.ALARM_SERVICE);</span>
<span class="s1">alermManager.set(AlarmManager.RTC_WAKEUP, alertDate, pendingIntent);</span>
<span class="s1">} </span><span class="s2">while </span><span class="s1">(c.moveToNext());</span>
<span class="s1">}</span>
<span class="s1">c.close();</span>
<span class="s1">}</span>
<span class="s1">}</span>
<span class="s1">}</span>
</pre>
</body>
</html>