Android parentActivityName 的清单字符串资源?

Android Manifest string resource for parentActivityName?

在手机上,我需要 Activity C 的父级为 Activity B,在平板电脑上,我需要 Activity C 的父级为 Activity A。但是,我无法为 parentActivityName 设置字符串资源。有没有办法通过 XML 做到这一点?谢谢!

    <activity
        android:name="com.example.app.ActivityC"

        <!-- @string resource not accepted here -->
        android:parentActivityName="com.example.app.ActivityB">
    </activity>

据我所知,没有办法。不过,您可以使用 activity 本身来完成。创建一个新的 activity 来处理在不同设备上的启动

public class ActivityD {
    protected void onCreate (Bundle savedInstanceState) {
        boolean isTablet = false || true; // get configuration
        Class<?> activity = isTablet ? ActivityB.class : ActivityA.class;
        startActivity(new Intent(this, activity));
        finish();
    }
}

并将其定义为父项

<activity
    android:name="com.example.app.ActivityC"
    android:parentActivityName="com.example.app.ActivityD">
</activity>

不完全XML,但我能想到的最好的。