2

アクティビティ A はスプラッシュ スクリーンです。アクティビティ B は、singleTask のメニュー画面です。アクティビティ C は、写真を選択するためのビルトイン インテントを使用してギャラリーから写真を選択する noHistory の画面です。アクティビティ D は、写真を操作する画面です。

私が抱えている問題は、アクティビティ D でホームボタンを選択したときに、起動するアプリケーションをもう一度選択すると、アクティビティ D を起動する代わりに、アクティビティ A に戻ってアクティビティ B を再度起動することです。ただし、最近のアプリを使用すると、正常にアクティビティ D に戻ります。だから、私がセットアップした方法で少しエラーが発生しやすいものがあるに違いありません. ただし、ユーザーが写真表示画面 (アクティビティ D) に戻ってくることができるように、どちらの場合もアクティビティ D に戻ることを期待する必要があります。

考え?

    <activity
        android:name="ActivityA"
        android:theme="@style/Theme.CustomDefaultStartup"
        android:noHistory="true"
        android:configChanges="keyboardHidden|orientation|screenSize"
        android:screenOrientation="sensorLandscape"
        android:launchMode="singleTask">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name="ActivityB"
        android:theme="@style/Theme.CustomDefault"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name"
        android:launchMode="singleTask">
        <intent-filter>
            <action  android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
        </intent-filter>
        <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"
                   android:resource="@xml/device_filter" />
    </activity>
    <activity 
        android:name="ActivityC"
        android:theme="@style/Theme.CustomDefault"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name">
    </activity> 
    <activity 
        android:name="ActivityD"
        android:theme="@style/Theme.CustomDefault"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name">
    </activity>
4

1 に答える 1