mirror of
https://github.com/BetterAndroid/Hikage.git
synced 2025-09-05 10:15:37 +08:00
fix: create XmlBlock on android 16
This commit is contained in:
@@ -148,9 +148,18 @@ internal object XmlBlockBypass {
|
||||
).apply { isAccessible = true }.invoke(null, sourceDir, false, false, false)
|
||||
else -> error("Unsupported Android version.")
|
||||
} as? Long? ?: error("Failed to create ApkAssets.")
|
||||
blockParser = HiddenApiBypass.getDeclaredConstructor(XmlBlockClass, AssetManagerClass, LongType)
|
||||
blockParser = when {
|
||||
SystemVersion.isHighOrEqualsTo(36) ->
|
||||
// XmlBlock(@Nullable AssetManager assets, long xmlBlock, boolean usesFeatureFlags)
|
||||
HiddenApiBypass.getDeclaredConstructor(XmlBlockClass, AssetManagerClass, LongType, BooleanType)
|
||||
.apply { isAccessible = true }
|
||||
.newInstance(null, xmlBlock) as? AutoCloseable? ?: error("Failed to create XmlBlock\$Parser.")
|
||||
.newInstance(null, xmlBlock, false)
|
||||
else ->
|
||||
// XmlBlock(@Nullable AssetManager assets, long xmlBlock)
|
||||
HiddenApiBypass.getDeclaredConstructor(XmlBlockClass, AssetManagerClass, LongType)
|
||||
.apply { isAccessible = true }
|
||||
.newInstance(null, xmlBlock)
|
||||
} as? AutoCloseable? ?: error("Failed to create XmlBlock\$Parser.")
|
||||
isInitOnce = true
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user