L'appel de startActivity () depuis l'extérieur d'un contexte d'activité nécessite le FLAG_ACTIVITY_NEW_TASK

Je suis en train de démarrer une activité à l'intérieur d'une classe de service. J'ai un code suivant:

public class SendLinkService extends Service {

@Override
public IBinder onBind(Intent intent) {
    //TODO Auto-generated method stub
    return null;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {
    Bundle bundle = intent.getExtras();
    Intent shareIntent = new Intent(Intent.ACTION_SEND);
    shareIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    shareIntent.setType("text/plain");
    shareIntent.putExtra(Intent.EXTRA_TEXT, bundle.getString("URL"));
    getApplicationContext().startActivity(Intent.createChooser(shareIntent, "Share via"));
    return super.onStartCommand(intent, flags, startId);
}
}

Il donne exception sur la ligne suivante de onStartCommand() :

getApplicationContext().startActivity(Intent.createChooser(shareIntent, "Share via"));

source d'informationauteur Vikalp