studio putextra pasar otro navegar intents intent entre desde crear boton activity actividades abrir android service android-intent

putextra - pasar de un activity a otro android studio



Llamando al método getIntent en servicio (2)

Comience su servicio de esta manera;

Intent ir=new Intent(this, Service.class); ir.putExtra("data", data); this.startService(ir);

Adjuntas tus datos como una intención extra.

Luego para recuperar los datos del servicio;

data=(String) intent.getExtras().get("data");

Por lo tanto, puede acceder a su parámetro desde el parámetro onHandleIntent o onStartCommand Intent. (dependiendo del tipo de servicio que esté ejecutando) Por ejemplo;

Servicio

protected void onStartCommand (Intent intent, int flags, int startId) { data=(String) intent.getExtras().get("data"); }

public int onStartCommand (Intención de intento, indicadores int, int startId)

Servicio de Intención

protected void onHandleIntent(Intent intent) { data=(String) intent.getExtras().get("data"); }

vacío abstracto protegido onHandleIntent (Intención de intención)

Tengo que pasar el parámetro de MyActivity.class a TestService.class. MyActivity es una clase de actividad y TestService es un servicio que he realizado para enviar mensajes. Tengo que pasar el parámetro de Actividad al Servicio, pero cuando llamo Intent i = getIntent(); en la clase de servicio, recibo un error getIntent () no está definido .

Entonces, ¿cómo puedo enviar los parámetros de mi actividad al servicio?


Cuando inicia el Servicio con intención (tener datos), esa intención se recibe en el método
onStart(Intent intent, int startId) o

onStartCommand (Intent intent, int flags, int startId) { this **intent** is your intent with data }

de su servicio. Por lo tanto, reciba los datos de este método con la intención como parámetro.