17

一部の電話startActivities()でメソッドを使用してアクティビティを開始しようとすると問題が発生することがあります (具体的には、 Samsung Galaxy S3 - Android 4.3 、Samsung Galaxy S3 Neo - Android 4.4.2 ) 。TaskStackBuilder

以下は、使用されるコード スニペットです。

TaskStackBuilder stackBuilder = TaskStackBuilder.create(ConfirmAddressActivity.this);
stackBuilder.addParentStack(AddressesActivity.class);

Intent intent = AddressesActivity.createStartingIntent(
    ConfirmAddressActivity.this,
    true, Collections.EMPTY_LIST
);
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);

stackBuilder.addNextIntent(intent);
stackBuilder.startActivities();

バグのある動作は、実行後stackBuilder.startActivities()に白い画面が開き、AddressesActivity を開かずにフリーズしたままになることです。これは通常の動作ではなく、時々発生します。

通常の動作では、実行後stackBuilder.startActivities()(0.5 秒 - 1 秒) の間白い画面が開き、そのアクティビティの完全なバック スタックが正しく構築されている間に AddressesActivity が開きます。これは、多くのデバイス/プラットフォームで正しい動作です。( HTC M9 Android 6.0、Samsung S2 - Android 4.1.2、Samsung Galaxy S6 - Android 5.1.1、LG G4 - Android 5.1.1 )

アクティビティを定義する Android マニフェスト スニペットを次に示します。

<activity
    android:name=".activity.account.AccountActivity"
    android:label="My account"
    android:screenOrientation="portrait"
    android:parentActivityName=".activity.DashboardActivity">
    <meta-data
        android:name="android.support.PARENT_ACTIVITY"
        android:value=".activity.DashboardActivity" />
</activity>

<activity
    android:name=".activity.addresses.AddressesActivity"
    android:label="My addresses"
    android:screenOrientation="portrait"
    android:parentActivityName=".activity.account.AccountActivity">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".activity.account.AccountActivity" />
</activity>

<activity
    android:name=".activity.addresses.ConfirmAddressActivity"
    android:label="Save address"
    android:screenOrientation="portrait"
    android:parentActivityName=".activity.addresses.AddressDetailsActivity">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value=".activity.addresses.AddressDetailsActivity" />
</activity>

この問題に関するヘルプや洞察は大歓迎です。

4

0 に答える 0