mirror of
https://github.com/Radiquum/anixart-patcher.git
synced 2025-09-05 10:45:32 +05:00
feat: initial commit
This commit is contained in:
commit
b6c058c40f
16 changed files with 400 additions and 0 deletions
43
scripts/utils.py
Normal file
43
scripts/utils.py
Normal file
|
@ -0,0 +1,43 @@
|
|||
import os
|
||||
import shutil
|
||||
import subprocess
|
||||
from config import log, config
|
||||
|
||||
|
||||
def check_java_version():
|
||||
try:
|
||||
result = subprocess.run(
|
||||
["java", "-version"], capture_output=True, text=True, check=True
|
||||
)
|
||||
version_line = result.stderr.splitlines()[0]
|
||||
if not any(f"{i}." in version_line for i in range(9, 100)):
|
||||
log.error(f"java 8+ is not installed")
|
||||
exit(1)
|
||||
except subprocess.CalledProcessError:
|
||||
log.error(f"java 8+ is not found")
|
||||
exit(1)
|
||||
log.info(f"found java: {version_line}")
|
||||
|
||||
|
||||
def decompile_apk(apk: str):
|
||||
if not os.path.exists(config["folders"]["decompiled"]):
|
||||
log.info(f"creating `decompiled` folder: {config['folders']['decompiled']}")
|
||||
os.mkdir(config["folders"]["decompiled"])
|
||||
else:
|
||||
log.info(f"resetting `decompiled` folder: {config['folders']['decompiled']}")
|
||||
shutil.rmtree(config["folders"]["decompiled"])
|
||||
os.mkdir(config["folders"]["decompiled"])
|
||||
|
||||
log.info(f"decompile apk: `{apk}`")
|
||||
try:
|
||||
result = subprocess.run(
|
||||
f"java -jar {config['folders']['tools']}/apktool.jar d -f -o {config['folders']['decompiled']} {config['folders']['apks']}/{apk}",
|
||||
shell=True,
|
||||
check=True,
|
||||
text=True,
|
||||
# stdout=subprocess.DEVNULL,
|
||||
stderr=subprocess.PIPE,
|
||||
)
|
||||
except subprocess.CalledProcessError as e:
|
||||
log.fatal(f"error of running a command: %s", e.stderr, exc_info=True)
|
||||
exit(1)
|
Loading…
Add table
Add a link
Reference in a new issue