Я думаю, что проблема связана с намерением, которое вы используете для запуска службы:
intent.setAction("cz.nafik.testService.MyService");
context.startService(intent);
Это не запустит службу cz.nafik.testService.MyService
, а скорее вызовет действие "cz.nafix ...«о предыдущих получателях намерения.Вы, вероятно, хотите явно указать класс службы в качестве получателя нового намерения и сделать действие, специфичное для этой службы.
Вместо того, чтобы пытаться повторно использовать намерение, полученное вами как часть широковещательной передачи,новое намерение и использовать его вместо:
Intent startMyService = new Intent( context, MyService.class );
startMyService.setAction( "MAKE_TOAST" );
context.startService( startMyService );
Затем в службе вы можете проверить, какое действие выполнить:
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
if( "MAKE_TOAST".equals( intent.getAction() ) )
{
Toast.makeText(this, "service starting", Toast.LENGTH_LONG).show();
return super.onStartCommand(intent,flags,startId);
}
}