我有一個後臺服務GpxService
:如何從意向(後臺服務)引用布爾變量?
public class GpxService extends Service implements LocationListener {
public boolean is_recording;
...
}
我能啓動這個服務作爲我的MainActivity後臺服務:
gpxService = new Intent(MainActivity.this, GpxService.class);
gpxService.setAction(GpxService.START_SERVICE);
// notification, startForeground, etc. managed within gpxService onStartCommand
startService(gpxService);
如何訪問旗布爾is_recording
在Intent MainActivity中的gpxService?
背景:我有兩個按鈕,記錄和停止。在MainActivity的onCreate
方法中,我使用setEnabled
灰化一個,並讓其他可點擊。我想要哪個按鈕變灰,哪個按鈕可以點擊取決於後臺服務中的布爾標誌is_recording
。
MainActivity中我不能有is_recording
,因爲它有時會被銷燬以清除內存。在這種情況下,在後臺服務仍在運行的情況下,重新打開應用程序將重置is_recording
標誌,錯誤地觸發if語句,並灰顯錯誤的按鈕。
從服務中發送本地廣播.. – Nithinlal
將您的GpxService類用作IntentService,並使用廣播將您的布爾標誌作爲putExtra發送。 – Arpan