2016-03-14 3 views
0

Я начинаю программировать на Android, и я просто читал IntentServices. У меня есть сомнения. Если я выдаю вызов другому классу, расширяющему IntentService из класса, расширяющего IntentService, будет ли вызов действительным?IntentService в IntentService. Это будет работать?

Как обзор, что-то вроде этого -

public class MyIntentService extends IntentService{ 
    @Override 
    public void onHandleIntent(Intent intent){ 
     //do stuff with incoming intent 
     Intent newIntent = new Intent(getApplicationContext(), ABC.class); 
     //ABC.class is another class extending IntentService 
     startService(newIntent); 
    } 
} 

Будет ли это работать?

+1

Ваш пример неправильный. Вы начинаете заниматься деятельностью с нуля –

+0

Извините, о типографии. Обновлен ответ. Спасибо :) –

+0

@RahulKulhalli Похоже, вы приняли ответ, который больше не отвечает на ваш вопрос. –

ответ

3

Вы можете начинать действия с Intent Service, но вам нужно добавить к нему флаг NEW_TASK.

intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

Вы также можете начать новый IntentService с IntentService.

+0

Спасибо за разъяснение, что часть для меня! :) Как примечание, мне нужно внести какие-либо специальные изменения/дополнения в Manifest.xml? –

+0

Intent.FLAG_ACTIVITY_NEW_TASK использовать только для startActivity в службе, не так ли? – GiapLee

+0

@GiapLee Ну, тогда, если я хочу выпустить метод startService, какие флаги мне нужно добавить в намерение? –