#!/usr/bin/env python3 """Patche le scaffold Android généré par `flutter create` : - permissions (internet + auto-install APK) - signature release depuis key.properties - schéma de redirection OIDC (flutter_appauth) Lancé dans la CI après `flutter create`. Idempotent.""" import os import re KSPW = os.environ["KSPW"] ALIAS = os.environ["ALIAS"] KEYSTORE_PATH = os.environ.get("KEYSTORE_PATH", os.path.abspath("gamemanager.keystore")) # 1) key.properties (chemin absolu du keystore, robuste peu importe le cwd gradle) with open("android/key.properties", "w") as f: f.write( f"storePassword={KSPW}\n" f"keyPassword={KSPW}\n" f"keyAlias={ALIAS}\n" f"storeFile={KEYSTORE_PATH}\n" ) # 2) AndroidManifest : permissions man = "android/app/src/main/AndroidManifest.xml" s = open(man).read() perms = ( '\n' ' \n' ) if "REQUEST_INSTALL_PACKAGES" not in s: s = s.replace("