mirror of
https://github.com/revanced/revanced-patcher.git
synced 2025-05-19 20:17:05 +02:00

This commit allows reading and writing arbitrary files in an APK file. Additionally it allows deleting files from APK files. A `RawResourcePatch` class has been added which has access to `ResourceContext` but ReVanced Patcher will not decode APK resources. A regular `ResourcePatch` can read and write arbitrary files from an APK file, unless they are decoded to `PatcherConfig.apkFiles`. On attempt to get a file from `PatcherConfig.apkFiles` if the second parameter is true, it will read and write the raw resource file from the original APK to `PatcherConfig.apkFiles` if it does not exist. With this commit, many APIs have been deprecated as well, such as `DomFileEditor` and instead a `Document` has been added.
15 lines
510 B
Kotlin
15 lines
510 B
Kotlin
package app.revanced.patcher.patch.usage
|
|
|
|
import app.revanced.patcher.data.ResourceContext
|
|
import app.revanced.patcher.patch.ResourcePatch
|
|
import org.w3c.dom.Element
|
|
|
|
class ExampleResourcePatch : ResourcePatch() {
|
|
override fun execute(context: ResourceContext) {
|
|
context.document["AndroidManifest.xml"].use { document ->
|
|
val element = document.getElementsByTagName("application").item(0) as Element
|
|
element.setAttribute("exampleAttribute", "exampleValue")
|
|
}
|
|
}
|
|
}
|