with running onstartcommand intent implement how create always android service notifications deprecated onstart

running - En Android, ¿cómo puedo evitar que el método onStart quede en desuso?



service android (1)

Tengo un problema con la configuración del método onStart en mi aplicación. Siempre tiene un tachado, diciendo que "este método fue obsoleto en el nivel 5 de API. Necesito onStart, no onStartCommand.

¿Cómo puedo resolver esto?

MyNotificationService.java

import android.app.Service; import android.content.Intent; import android.os.IBinder; import android.widget.Toast; public class MyNotificationService extends Service { @Override public IBinder onBind(Intent arg0) { // TODO Auto-generated method stub return null; } @Override public void onCreate() { // TODO Auto-generated method stub super.onCreate(); Toast.makeText(this, "OnCreate()", Toast.LENGTH_SHORT).show(); } @Override public void onDestroy() { // TODO Auto-generated method stub super.onDestroy(); Toast.makeText(this, "OnDestroy()", Toast.LENGTH_SHORT).show(); } @Override @Deprecated public void onStart(Intent intent, int startId) { // TODO Auto-generated method stub super.onStart(intent, startId); } }

Recordatorio_2.java

import android.media.MediaPlayer; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view.Menu; import android.view.View; import android.view.Window; import android.widget.DatePicker; import android.widget.ImageButton; public class Reminder_2 extends Activity { String message; DatePicker datepicker; @Override protected void onCreate(Bundle savedInstanceState) { requestWindowFeature(Window.FEATURE_NO_TITLE); super.onCreate(savedInstanceState); setContentView(R.layout.activity_reminder_2); datepicker=(DatePicker)findViewById(R.id.datePicker1); Home(); Next(); Save(); } private void Next() { final MediaPlayer button_tone = MediaPlayer.create(this, R.raw.button_sound); ImageButton Button = (ImageButton) findViewById(R.id.imageButton1); View.OnClickListener myListener = new View.OnClickListener() { @Override public void onClick(View v) { button_tone.start(); finish(); } }; Button.setOnClickListener(myListener); } private void Save() { final MediaPlayer button_tone = MediaPlayer.create(this, R.raw.button_sound); ImageButton Button = (ImageButton) findViewById(R.id.imageButton3); View.OnClickListener myListener = new View.OnClickListener() { @Override public void onClick(View v) { button_tone.start(); Intent intent = new Intent(); intent.setClass(getApplicationContext(), MyNotificationService.class); startService(intent); } }; Button.setOnClickListener(myListener); } private void Home() { final MediaPlayer button_tone = MediaPlayer.create(this, R.raw.button_sound); ImageButton Button = (ImageButton) findViewById(R.id.imageButton2); View.OnClickListener myListener = new View.OnClickListener() { @Override public void onClick(View v) { button_tone.start(); Intent intent = new Intent(getApplicationContext(), MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); } }; Button.setOnClickListener(myListener); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.reminder, menu); return true; } }


Utilice onStartCommand() .

Si desea saber más sobre cómo lo cambian, consulte la documentación de Google que se encuentra a continuación.

// This is the old onStart method that will be called on the pre-2.0 // platform. On 2.0 or later we override onStartCommand() so this // method will not be called. @Override public void onStart(Intent intent, int startId) { handleStart(intent, startId); } @Override public int onStartCommand(Intent intent, int flags, int startId) { handleStart(intent, startId); return START_NOT_STICKY; }