2012-03-23 180 views
0

所以我设置了一个重复闹钟来从服务器获取数据。问题是,当警报假设熄灭时没有任何反应。我在启动时没有遇到任何错误,并且代码是正确的(据我所知)。Android:使用AlarmManager设置闹钟时没有任何反应?

这里是设置报警代码:

private void startRequestTimer() { 

    // This is what will be called when the alarm goes off (GetOperations) 
    Intent intent = new Intent(MainActivity.this, GetOperations.class); 
    PendingIntent operation = PendingIntent.getBroadcast(MainActivity.this, 0, intent, 0); 

    // The alarm will go off in one second from now 
    long firstTime = SystemClock.elapsedRealtime(); 
    firstTime += 1000; 

    // Set the alarm 
    AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE); 
    am.setRepeating(AlarmManager.ELAPSED_REALTIME_WAKEUP, firstTime, 5*1000, operation); 

} 

这里是GetOperations.java(当警报响起时,它被称为)

package se.jbhalmstad.ndroid; 

import android.content.BroadcastReceiver; 
import android.content.Context; 
import android.content.Intent; 
import android.widget.Toast; 

public class GetOperations extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context context, Intent intent) { 
     Toast.makeText(context, "Oh! The alarm went off!", 2000).show(); 
    } 

} 

而且清单,万一我搞砸事情(我怀疑,因为我没有得到任何错误):

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
     package="se.jbhalmstad.ndroid" 
     android:versionCode="1" 
     android:versionName="1.0"> 
    <uses-sdk android:minSdkVersion="7" /> 

    <application android:icon="@drawable/icon" android:label="@string/APP_NAME"> 

     <activity android:name=".MainActivity" 
        android:label="@string/APP_NAME"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <activity android:name=".SettingsActivity" /> 
     <activity android:name=".GetOperations" /> 
    </application> 
</manifest> 

我错过了什么?

回答

1

您将GetOperations声明为BroadcastReceiver,但在您的Manifest中它是一个Activity。

+1

207 2012-03-23 13:25:25

+0

谢谢! – qwerty 2012-03-23 14:03:22