Notification service setzen extra auf die Benachrichtigung klicken, wie?

Gut ich habe einen Dienst mit einer Meldung, ich soll einen zusätzlichen mit dem neuen Vorsatz geöffnet, wenn der Benutzer auf die Benachrichtigung, so dass, wenn MainActivity öffnet bekomme ich das extra. Ich habe versucht, mit verschiedenen Möglichkeiten, aber ich weiß einfach nicht herausfinden, wie es funktioniert.

Hier ist was ich versucht habe:

Dies ist MyService

Intent intent = new Intent(MyService.this, MainActivity.class);
                    intent.putExtra("EXTRA", StringTEST);
                    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_SINGLE_TOP);
                    PendingIntent contentIntent = PendingIntent
                        .getActivity(getApplicationContext(),
                                     0, intent, 0);

dieser öffnet die Aktivität in Ordnung, aber ich kann nicht Holen Sie sich die extra?? Dies ist, wie ich versucht habe, um es zu bekommen:

MainActivity

@Override
public void onNewIntent(Intent intent){
    Bundle extras = intent.getExtras();
    if(extras != null){
        String name = extras.getString("EXTRA");
        System.out.println(name);
    }
}

@Override
protected void onResume() {
    Bundle extras = getIntent().getExtras();
    System.out.println(extras+"");
    if (extras != null) {
        try {
            onNewIntent(getIntent());
            Intent i = getIntent();
            String name = i.getStringExtra("EXTRA");
            System.out.println(name);
            currentDir = new File(name);

            changeFiles();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
    super.onResume();
}

Das sind die zwei Möglichkeiten, die ich habe versucht, aber ich bekomme immer noch null... Was mache ich falsch?

Dank

InformationsquelleAutor Rotary Heart | 2013-01-20
Schreibe einen Kommentar