mirror of
https://github.com/topjohnwu/Magisk.git
synced 2025-04-22 12:01:35 +00:00
Copy stub APK into output directory
This commit is contained in:
parent
ad0e6511e1
commit
7ce4bd3330
17
build.py
17
build.py
@ -425,6 +425,19 @@ def build_app(args):
|
|||||||
header('* Building the Magisk app')
|
header('* Building the Magisk app')
|
||||||
build_apk(args, 'app')
|
build_apk(args, 'app')
|
||||||
|
|
||||||
|
# Stub building is directly integrated into the main app
|
||||||
|
# build process. Copy the stub APK into output directory.
|
||||||
|
build_type = 'release' if args.release else 'debug'
|
||||||
|
apk = f'stub-{build_type}.apk'
|
||||||
|
source = op.join('app', 'src', 'main', 'assets', 'stub.apk')
|
||||||
|
target = op.join(config['outdir'], apk)
|
||||||
|
cp(source, target)
|
||||||
|
|
||||||
|
|
||||||
|
def build_stub(args):
|
||||||
|
header('* Building the stub app')
|
||||||
|
build_apk(args, 'stub')
|
||||||
|
|
||||||
|
|
||||||
def cleanup(args):
|
def cleanup(args):
|
||||||
support_targets = {'native', 'java'}
|
support_targets = {'native', 'java'}
|
||||||
@ -444,6 +457,7 @@ def cleanup(args):
|
|||||||
if 'java' in args.target:
|
if 'java' in args.target:
|
||||||
header('* Cleaning java')
|
header('* Cleaning java')
|
||||||
execv([gradlew, 'app:clean', 'app:shared:clean', 'stub:clean'])
|
execv([gradlew, 'app:clean', 'app:shared:clean', 'stub:clean'])
|
||||||
|
rm_rf(op.join('app', 'src', 'main', 'assets'))
|
||||||
|
|
||||||
|
|
||||||
def setup_ndk(args):
|
def setup_ndk(args):
|
||||||
@ -570,6 +584,9 @@ binary_parser.set_defaults(func=build_binary)
|
|||||||
app_parser = subparsers.add_parser('app', help='build the Magisk app')
|
app_parser = subparsers.add_parser('app', help='build the Magisk app')
|
||||||
app_parser.set_defaults(func=build_app)
|
app_parser.set_defaults(func=build_app)
|
||||||
|
|
||||||
|
stub_parser = subparsers.add_parser('stub', help='build the stub app')
|
||||||
|
stub_parser.set_defaults(func=build_stub)
|
||||||
|
|
||||||
avd_parser = subparsers.add_parser(
|
avd_parser = subparsers.add_parser(
|
||||||
'emulator', help='setup AVD for development')
|
'emulator', help='setup AVD for development')
|
||||||
avd_parser.add_argument('-s', '--skip', action='store_true',
|
avd_parser.add_argument('-s', '--skip', action='store_true',
|
||||||
|
@ -192,10 +192,14 @@ fun Project.setupApp() {
|
|||||||
|
|
||||||
android.applicationVariants.all {
|
android.applicationVariants.all {
|
||||||
val variantCapped = name.capitalize(Locale.ROOT)
|
val variantCapped = name.capitalize(Locale.ROOT)
|
||||||
val variantLowered = name.toLowerCase(Locale.ROOT)
|
|
||||||
|
val stubTask = tasks.getByPath(":stub:package$variantCapped")
|
||||||
|
val stubApk = stubTask.outputs.files.asFileTree.filter {
|
||||||
|
it.name.endsWith(".apk")
|
||||||
|
}
|
||||||
|
|
||||||
val syncAssets = tasks.register("sync${variantCapped}Assets", Sync::class) {
|
val syncAssets = tasks.register("sync${variantCapped}Assets", Sync::class) {
|
||||||
dependsOn(syncResources)
|
dependsOn(syncResources, stubTask)
|
||||||
inputs.property("version", Config.version)
|
inputs.property("version", Config.version)
|
||||||
inputs.property("versionCode", Config.versionCode)
|
inputs.property("versionCode", Config.versionCode)
|
||||||
into("src/main/assets")
|
into("src/main/assets")
|
||||||
@ -210,12 +214,7 @@ fun Project.setupApp() {
|
|||||||
include("kernel_data_key.vbprivk", "kernel.keyblock")
|
include("kernel_data_key.vbprivk", "kernel.keyblock")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
val task = tasks.getByPath(":stub:package$variantCapped")
|
from(stubApk) {
|
||||||
dependsOn(task)
|
|
||||||
val apk = task.outputs.files.asFileTree.filter {
|
|
||||||
it.name.endsWith(".apk")
|
|
||||||
}
|
|
||||||
from(apk) {
|
|
||||||
rename { "stub.apk" }
|
rename { "stub.apk" }
|
||||||
}
|
}
|
||||||
filesMatching("**/util_functions.sh") {
|
filesMatching("**/util_functions.sh") {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user