Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


Envío de datos del servicio a la actividad

Tengo problema al enviar datos del servicio a la actividad con la notificación, hago clic en una notificación que una actividad se invoca pero cuando intento agregar algunos parámetros con el paquete no puedo conseguir los parámetros en esa intención llamada, he pasado a través de Link ¿Cómo enviar parámetros desde un clic de notificación a una actividad?

Pero todavía no hay suerte.

  • Guardar imagen de url usando Picasso?
  • Firebase Crash Reporting error: la aplicación cliente com.xxxx está bloqueada
  • Sólo el subproceso original que creó una jerarquía de vistas puede tocar sus vistas
  • ¿El reconocimiento de las variaciones de gestos en la biblioteca de gestos?
  • Unwanted Warp efecto de dibujo de texto en la ruta android
  • Android Studio - con Junit 4.12 "!!! JUnit versión 3.8 o posterior esperado: "
  • ¿Ha ocurrido el mismo problema con alguien más?

    Gracias por adelantado.

  • Dagger 2 en Android @Singleton clase anotada que no se inyecta
  • Esta aplicación no se ejecutará a menos que actualice Google Play Services (a través de Bazaar)
  • ¿Puede un recurso selector utilizar un color definido en un estilo?
  • Cómo iniciar una actividad de una clase de hilo en android?
  • Problemas con pantallas de preferencias de doble panel
  • Eclipse lanza java.lang.NullPointerException en la creación de la configuración de prueba de android junit
  • One Solution collect form web for “Envío de datos del servicio a la actividad”

    También tiene que modificar el archivo de manifiesto.

    Aquí está el ejemplo que funciona:

    Estas variables y métodos son miembros de la clase de servicio:

    public static final String MOVEMENT_UPDATE = "com.client.gaitlink.AccelerationService.action.MOVEMENT_UPDATE"; public static final String ACCELERATION_X = "com.client.gaitlink.AccelerationService.ACCELERATION_X"; public static final String ACCELERATION_Y = "com.client.gaitlink.AccelerationService.ACCELERATION_Y"; public static final String ACCELERATION_Z = "com.client.gaitlink.AccelerationService.ACCELERATION_Z"; private void announceAccelerationChanges()//this method sends broadcast messages { Intent intent = new Intent(MOVEMENT_UPDATE); intent.putExtra(ACCELERATION_X, accelerationX); intent.putExtra(ACCELERATION_Y, accelerationY); intent.putExtra(ACCELERATION_Z, accelerationZ); sendBroadcast(intent); } 

    Y esto son los métodos de la actividad principal:

    Tienes que registrar el receptor en el método onResume:

      @Override public void onResume() { IntentFilter movementFilter; movementFilter = new IntentFilter(AccelerationService.MOVEMENT_UPDATE); accelerationReceiver = new AccelerationServiceReceiver(); registerReceiver(accelerationReceiver, movementFilter); startAccelerationService(); super.onResume(); } private void startAccelerationService() { startService(new Intent(this, AccelerationService.class)); } public class AccelerationServiceReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent)//this method receives broadcast messages. Be sure to modify AndroidManifest.xml file in order to enable message receiving { accelerationX = intent.getDoubleExtra(AccelerationService.ACCELERATION_X, 0); accelerationY = intent.getDoubleExtra(AccelerationService.ACCELERATION_Y, 0); accelerationZ = intent.getDoubleExtra(AccelerationService.ACCELERATION_Z, 0); announceSession(); updateGUI(); } } 

    Esta es la parte del archivo AndroidManifest.xml que debe establecerse para recibir mensajes de difusión:

     <activity android:name=".GaitLink" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <action android:name="com.client.gaitlink.CommunicationService.action.ACTIVITY_STATUS_UPDATE" /> </intent-filter> </activity> 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.