diff --git a/projects/sample/source/sample-plugin/sample-app/src/main/AndroidManifest.xml b/projects/sample/source/sample-plugin/sample-app/src/main/AndroidManifest.xml
index abac57e88..2d20257c4 100644
--- a/projects/sample/source/sample-plugin/sample-app/src/main/AndroidManifest.xml
+++ b/projects/sample/source/sample-plugin/sample-app/src/main/AndroidManifest.xml
@@ -24,6 +24,7 @@
activityMap.putAttributeIfNotNull(element, attributeKey)
}
diff --git a/projects/sdk/core/manifest-parser/src/main/kotlin/com/tencent/shadow/core/manifest_parser/PluginManifestGenerator.kt b/projects/sdk/core/manifest-parser/src/main/kotlin/com/tencent/shadow/core/manifest_parser/PluginManifestGenerator.kt
index b6a7c5b8a..17d46650e 100644
--- a/projects/sdk/core/manifest-parser/src/main/kotlin/com/tencent/shadow/core/manifest_parser/PluginManifestGenerator.kt
+++ b/projects/sdk/core/manifest-parser/src/main/kotlin/com/tencent/shadow/core/manifest_parser/PluginManifestGenerator.kt
@@ -183,13 +183,14 @@ private class PluginManifestBuilder(val manifestMap: ManifestMap) {
private fun toNewActivityInfo(componentMap: ComponentMap): String {
fun makeResIdLiteral(
key: String,
+ defaultValue: String = "0",
valueToResId: (value: String) -> String
): String {
val value = componentMap[key] as String?
val literal = if (value != null) {
valueToResId(value)
} else {
- "0"
+ defaultValue
}
return literal
}
@@ -204,12 +205,17 @@ private class PluginManifestBuilder(val manifestMap: ManifestMap) {
it
}
+ val screenOrientation = makeResIdLiteral(AndroidManifestKeys.screenOrientation,"-1") {
+ it
+ }
+
return "new com.tencent.shadow.core.runtime.PluginManifest" +
".ActivityInfo(" +
"\"${componentMap[AndroidManifestKeys.name]}\", " +
"$themeLiteral ," +
"$configChangesLiteral ," +
- softInputModeLiteral +
+ "$softInputModeLiteral ," +
+ screenOrientation +
")"
}
diff --git a/projects/sdk/core/runtime/src/main/java/com/tencent/shadow/core/runtime/PluginManifest.java b/projects/sdk/core/runtime/src/main/java/com/tencent/shadow/core/runtime/PluginManifest.java
index 67f8a31c0..002d3402c 100644
--- a/projects/sdk/core/runtime/src/main/java/com/tencent/shadow/core/runtime/PluginManifest.java
+++ b/projects/sdk/core/runtime/src/main/java/com/tencent/shadow/core/runtime/PluginManifest.java
@@ -70,15 +70,18 @@ final class ActivityInfo extends ComponentInfo implements Parcelable {
public final int theme;
public final int configChanges;
public final int softInputMode;
+ public final int screenOrientation;
public ActivityInfo(String className,
int theme,
int configChanges,
- int softInputMode) {
+ int softInputMode,
+ int screenOrientation) {
super(className);
this.theme = theme;
this.configChanges = configChanges;
this.softInputMode = softInputMode;
+ this.screenOrientation=screenOrientation;
}
protected ActivityInfo(Parcel in) {
@@ -86,6 +89,7 @@ protected ActivityInfo(Parcel in) {
theme = in.readInt();
configChanges = in.readInt();
softInputMode = in.readInt();
+ screenOrientation = in.readInt();
}
@Override
@@ -94,6 +98,7 @@ public void writeToParcel(Parcel dest, int flags) {
dest.writeInt(theme);
dest.writeInt(configChanges);
dest.writeInt(softInputMode);
+ dest.writeInt(screenOrientation);
}
@Override