void move() { MyServiceManager.setServiceUnavailable(); if (MyServiceManager.getServiceState() == MyServiceState.STOPPED) { new MoveDataBetweenStoragesTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR); } else { MyServiceManager.stopService(); Toast.makeText( parentActivity.getActivity(), mContext.getText(R.string.system_is_busy_try_later), Toast.LENGTH_LONG) .show(); } }
void move() { MyServiceManager.setServiceUnavailable(); if (MyServiceManager.getServiceState() == MyServiceState.STOPPED) { AsyncTaskLauncher.execute(this, true, new MoveDataBetweenStoragesTask()); } else { MyServiceManager.stopService(); Toast.makeText( parentFragment.getActivity(), mContext.getText(R.string.system_is_busy_try_later), Toast.LENGTH_LONG) .show(); } }
@Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); if (action.equals(MyAction.SERVICE_STATE.getAction())) { MyContextHolder.initialize(context, this); synchronized (mServiceState) { stateQueuedTime = System.nanoTime(); waitingForServiceState = false; mServiceState = MyServiceState.load(intent.getStringExtra(IntentExtra.SERVICE_STATE.key)); } MyLog.d(this, "Notification received: Service state=" + mServiceState); } else if ("android.intent.action.BOOT_COMPLETED".equals(action)) { MyLog.d(this, "Trying to start service on boot"); sendCommand(CommandData.getEmpty()); } else if ("android.intent.action.ACTION_SHUTDOWN".equals(action)) { // We need this to persist unsaved data in the service MyLog.d(this, "Stopping service on Shutdown"); setServiceUnavailable(); stopService(); } }