"""Copy OpenXR vendors plugin files to the gradle build directory.""" import shutil import os project = r"C:\git\g1-teleop" build_dir = os.path.join(project, "android", "build") addons = os.path.join(project, "addons", "godotopenxrvendors") # 1. Copy Meta AAR to libs/debug and libs/plugins/debug for d in ["libs/debug", "libs/plugins/debug"]: dest = os.path.join(build_dir, d) os.makedirs(dest, exist_ok=True) src = os.path.join(addons, ".bin", "android", "debug", "godotopenxr-meta-debug.aar") if os.path.exists(src): shutil.copy2(src, dest) print(f"Copied meta debug AAR to {dest}") for d in ["libs/release", "libs/plugins/release"]: dest = os.path.join(build_dir, d) os.makedirs(dest, exist_ok=True) src = os.path.join(addons, ".bin", "android", "release", "godotopenxr-meta-release.aar") if os.path.exists(src): shutil.copy2(src, dest) print(f"Copied meta release AAR to {dest}") # 2. Copy libgodotopenxrvendors.so to libs/debug/arm64-v8a for build_type in ["debug", "release"]: template = "template_debug" if build_type == "debug" else "template_release" so_dir = os.path.join(build_dir, "libs", build_type, "arm64-v8a") os.makedirs(so_dir, exist_ok=True) src = os.path.join(addons, ".bin", "android", template, "arm64", "libgodotopenxrvendors.so") if os.path.exists(src): shutil.copy2(src, so_dir) print(f"Copied libgodotopenxrvendors.so to {so_dir}") # 3. Copy the gdextension file to assets so it's included in the APK assets_addons = os.path.join(build_dir, "src", "main", "assets", "addons", "godotopenxrvendors") os.makedirs(assets_addons, exist_ok=True) for f in ["plugin.gdextension", "plugin.gdextension.uid"]: src = os.path.join(addons, f) if os.path.exists(src): shutil.copy2(src, assets_addons) print(f"Copied {f} to assets") print("\nDone! Now rebuild the APK.")