4

ナビゲーションの順序を維持したいので、これに従いました:

https://developer.android.com/guide/topics/ui/notifiers/notifications.html#NotificationResponse

この:

Android - 通知の作成、TaskStackBuilder.addParentStack が機能しない

通知をクリックすると ResultActivity が開き、ユーザーが [戻る] をクリックすると MainActivity が表示されます。

戻るをクリックすると、MainActivity を開く代わりに、アプリを閉じてホーム画面に戻ります。ただし、再度開くと、MainActivity で既に開始されています。これが私のコードです:

マニフェスト:

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

        <receiver android:name=".AlarmReceiver" />

        <activity
            android:name=".ResultActivity"
            android:parentActivityName=".MainActivity">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".MainActivity"/>
        </activity>
    </application>

AlarmReceiver の OnReceive

        builder.setContentTitle("sth");
        builder.setContentText("sth");

        TaskStackBuilder stackBuilder = TaskStackBuilder.create(context);

        // Back button
        stackBuilder.addParentStack(ResultActivity.class);
        // The desired activity when clicking notifications
        stackBuilder.addNextIntent(new Intent(context, ResultActivity.class));

        // Create Pending Intent
        PendingIntent pendingIntent = stackBuilder.getPendingIntent(0, PendingIntent.FLAG_UPDATE_CURRENT);
        builder.setContentIntent(pendingIntent);

        // Finally a manager
        NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
        notificationManager.notify(0, builder.build());

これを修正する方法は?ありがとう!

4

0 に答える 0