¿Puede la intención recibida por un BroadcastReceiver ser nula?
En otras palabras :
@Override public void onReceive(Context context, Intent intent) { final String action = intent.getAction(); // can intent==null here ? // could it ever throw a NPE ? }
Tengo que resolver esto de una vez por todas así que por favor, no ifs y buts. Comprobaría para null pero sospecho que no es necesario y por lo tanto es torpe e inelegant comprobar. Había buscado en los documentos pero no he encontrado nada
- Android java.lang.NullPointerException: println necesita un mensaje
- Tratar de anular getView en un SimpleCursorAdapter da NullPointerExceptio
- ¿Por qué File.listFiles devuelve null cuando se llama a un directorio?
- Error al entregar el resultado ResultInfo {who_null, request = 1, result = -1, data = Intent {(tiene extras)}} a la actividad; NullPointerException
- Esperaba un mapa mientras se deserializaba, pero obtuvo una clase java.lang.Long
EDIT: preguntado en google grupos – ver allí para algunos puntos interesantes
- NullPointerException en onLoaderFinished usando SimpleCursorAdapter
- IabHelper error de Android (NullPointerException) launchPurchaseFlow?
- ¿Por qué getActionBar () obtiene valor nulo en TabHost desde Android?
- El botón puede producir una excepción de puntero nulo (Android Studio)
- NullPointerException al volver a través de actividades
- Manera correcta de manejar la advertencia de pelusa de NullPointerException de Android Studio
- Comportamiento impredecible causado por PackageManager.DONT_KILL_APP
- Error invocar método virtual 'doble android.location.Location.getLatitude ()' en una referencia de objeto nulo
onReceive
en un BroadcastReceiver
es activado por un Intent
con una acción a la que está registrado. Así que sin Intent siendo una instancia de Intent
y no null, el método onReceive
nunca sería llamado.
Dicho esto, cosas extrañas pueden suceder. No he mirado sobre el código que Google escribió en torno a las emisiones, así que mientras que en su uso correcto nunca sería nulo, tener el cheque es una buena idea, porque viene del código que no controla.
- Android: RadioButton dentro de Layout anidado bajo RadioGroup se cae fuera del grupo
- Uso del hebreo con el emulador de Android