Receptor de alarma y el manifiesto de Android

He encontrado varios tutoriales sobre la configuración del receptor de alarma para enviar un mensaje de brindis en intervalos establecidos. Y he estado siguiendo el código y dividido mi propio proyecto en 3 clases.

El HelloDroidActivity.java es:

package com.example.helloandroid; import java.util.Calendar; import android.app.Activity; import android.app.AlarmManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.widget.TextView; import android.widget.Toast; import com.example.helloandroid.alarms.MyAlarmReciever; public class HelloDroidActivity extends Activity { /** Called when the activity is first created. */ public static int RTC_WAKEUP; public static long INTERVAL_FIFTEEN_MINUTES; private AlarmManager alarmMgr; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText("Hello, Krishneel"); setContentView(tv); Toast.makeText(this, "Alarm went off", Toast.LENGTH_SHORT).show(); Log.d("OnCreate", "abcdabcdabcdabcdabcdabcdabcdabcdabcdabcd"); alarmMgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE); Intent intent = new Intent(this, MyAlarmReciever.class); PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); Calendar calendar = Calendar.getInstance(); calendar.setTimeInMillis(System.currentTimeMillis()); calendar.add(Calendar.SECOND, 5); alarmMgr.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 7000, pendingIntent); } } 

También el MyAlarmReciever.java (ya soy consciente del error de ortografía en el nombre):

 package com.example.helloandroid.alarms; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.util.Log; import android.widget.Toast; public class MyAlarmReciever extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub Log.e("onReceive", "ladskjflsakjdflskjdflskjdfslkjdflasdf"); Toast.makeText(context, "OnReceive alarm test", Toast.LENGTH_SHORT).show(); } } 

Y el manifiesto de Android que se parece a esto:

 <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example.helloandroid" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="7" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name="com.example.helloandroid.HelloDroidActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <receiver android:name="AlarmReceiver"> <intent-filter> <action android:name="com.example.helloandroid.alarms" /> </intent-filter> </receiver> </application> </manifest> 

He leído que con el fin de obtener el proyecto para recibir mi alarmReceiver java clase Tengo que editar el manifiesto con un nuevo receptor. Pero soy bastante nuevo en XML y no sé qué dirección tomar.

Ya hay un receptor que ha definido en su archivo de manifiesto. Pero el nombre no es correcto ver el nombre debe ser el nombre completo de la clase, es decir, el nombre package.RecieverName. Y en su caso el nombre de su receptor es MyAlarmReciever. Así que el receptor se define como sigue

 <receiver android:name=".alarms.MyAlarmReciever"> <intent-filter> <action android:name="com.example.helloandroid.alarms" /> </intent-filter> </receiver> 

En su manifiesto, el receptor está escuchando una acción llamada com.example.helloandroid.alarms . Pero en su HelloDroidActivity.java no hay tal acción se añade a la intención.

 public class HelloDroidActivity extends Activity { //.... @Override public void onCreate(Bundle savedInstanceState) { //.... Intent intent = new Intent(this, MyAlarmReciever.class); intent.setAction("com.example.helloandroid.alarms"); //.... } } 
  • El receptor de reinicio no funciona en los teléfonos xiaomi
  • Haga clic en la notificación GCM para no abrir la actividad deseada en Android Kitkat
  • Cómo limitar la transmisión a su propia aplicación para Android
  • Android.intent.action.SCREEN_ON no funciona como filtro de intenciones de recepción
  • Tratando de tener un Receptor Broadcast sin filtro
  • ¿Cómo puedo interceptar pulsaciones de botón en el auricular en Android?
  • BroadcastReceiver nunca llamó
  • Detener el receptor de difusión de un botón en acivity
  • SetPackage para la intención en pan de jengibre
  • ¿Le falta una llamada para anular el registroReceiver ()? En android
  • La detección de cambios de estado de la red Android tarda tiempo
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.