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.