我按照以下方式在我的活動中啓動服務。服務開始後,我關閉了活動。如果我再次啓動活動,我想從服務中收到一些信息。我怎樣才能做到這一點?從服務到活動的溝通
// Activity
@Override
public void onCreate(Bundle savedInstanceState)
{
// here I want to receive data from Service
}
Intent i=new Intent(this, AppService.class);
i.putExtra(AppService.TIME, spinner_time.getSelectedItemPosition());
startService(i);
// Service
public class AppService extends Service {
public static final String TIME="TIME";
int time_loud;
Notification note;
Intent i;
private boolean flag_silencemode = false;
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
time_loud = intent.getIntExtra(TIME, 0);
play(time_loud);
return(START_NOT_STICKY);
}
而不是使用第三方解決方案,爲什麼不簡單地使用** LocalBroadcasts **? – waqaslam
@Waqas:對於事件*傳遞*,'LocalBroadcastManager'很好。但是,對於*拉*事件,在「LocalBroadcastManager」中對於Otto的「@ Producer」或「EventBus」粘性事件沒有等價物。 – CommonsWare
但是'context.sendStickyBroadcast'呢? – waqaslam