onNewIntent nicht genannt

Habe ich sehr seltsame situation.
Mit einer app, habe ich beschlossen, erstellen Sie ein weiteres aus dem code der ersten.
Ich kopierte .xml-Dateien, kopiert .java-Dateien so, dass alles OK ist.
Aber es gibt ein RIESIGES problem: meine onNewIntent(Intent intent) Methode wird als erstes Projekt, aber es ist nicht aufgerufen, im zweiten Projekt (der code ist der gleiche!)

Methode, die auslösen könnte, aber nicht Auslöser

public void onClick(View arg0) {
    Intent browserInt = new Intent (Intent.ACTION_VIEW, 
    Uri.parse("https://oauth.yandex.ru/authorize?response_type=token&client_id=zzzzz"));
    browserInt.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
    startActivity(browserInt);
}

Hier onNewIntent () - Methode:

@Override
protected void onNewIntent(Intent intent){
    System.out.println(" I WORKED!");
    Uri uri = intent.getData();
    if (uri!=null) {
        String m = uri.toString().split("#")[1];
        String[] args = m.split("&");
        String arg = args[0];
        String token = arg.split("=")[1];
        System.out.println(token);
    }   
}

Sehe ich nicht "ich ARBEITETE" in meinen logs, leider.

Ich gelesen habe viele ähnliche Fragen, sowohl auf als SO und über das Internet versucht, Einstellung, Absicht flags SINGLE_TOP, SINGLE_TASK und so weiter.

Hier ist das Android Manifest der ARBEITEN Projekt:

<application 
    android:name="yyy"
    android:icon="@drawable/yaru_icon"
    android:allowBackup="false"
    android:label="xxx"
    android:theme="@style/LightTheme">

    <activity
        android:name=".Main"
        android:label="xxx"
        android:launchMode="singleTask">
        <intent-filter>
            <action android:name="android.intent.action.MAIN"/>
            <category android:name="android.intent.category.LAUNCHER"/>
        </intent-filter>
    </activity>
</application>

Ich bin ganz verzweifelt, warum der gleiche code nicht mehr funktioniert?

EDIT: ich habe alles versucht: SINGLE_TOP, SINGLE_INSTANCE, SINGLE_TASK..
aber dann habe ich gelegentlich Tat dies auf eine andere Tätigkeit:

Main m = new Main();
m.onNewIntent(this.getIntent());

Und es endlich geklappt!
Ich weiß nicht, ob es ein dirty workaround oder ist das ein bug, wenn jemand erklären kann, bitte kommentieren.

InformationsquelleAutor der Frage Kondra007 | 2014-05-03

Schreibe einen Kommentar