使用 Intent 啟動 Unbound Service
服務是在後臺執行(在 UI 執行緒上)而不與使用者直接互動的元件。未繫結的服務剛剛啟動,並且不受任何活動的生命週期的約束。
要啟動服務,你可以執行以下示例中所示的操作:
// This Intent will be used to start the service
Intent i= new Intent(context, ServiceName.class);
// potentially add data to the intent extras
i.putExtra("KEY1", "Value to be used by the service");
context.startService(i);
你可以使用 onStartCommand()
覆蓋來使用意圖中的任何額外內容:
public class MyService extends Service {
public MyService() {
}
@Override
public int onStartCommand(Intent intent, int flags, int startId)
{
if (intent != null) {
Bundle extras = intent.getExtras();
String key1 = extras.getString("KEY1", "");
if (key1.equals("Value to be used by the service")) {
//do something
}
}
return START_STICKY;
}
@Nullable
@Override
public IBinder onBind(Intent intent) {
return null;
}
}