auto_build_launcher/scripts/context.py

61 lines
1.4 KiB
Python
Raw Normal View History

2025-07-07 03:27:26 +00:00
from dataclasses import dataclass
import json
@dataclass
class Context:
repo_url: str = ""
repo_branch: str = ""
repo_commit: str = ""
package_name: str = ""
2025-07-07 13:52:21 +00:00
game_type: str = ""
2025-10-10 12:53:00 +00:00
proguard_key = {}
app_name: str = ""
original_package: str = "com.drop.meme.merge.game.fsaew.puzzle"
2025-07-07 03:27:26 +00:00
project_original_path: str = "project/original"
temp_project_path: str = ""
# 本地的版本号
local_repo_branch: str = ""
local_repo_commit: str = ""
2025-07-07 13:52:21 +00:00
admob_app_id: str = ""
game_services_project_id: str = ""
facebook_app_id: str = ""
facebook_client_token: str = ""
version_display_name: str = "1"
version_code: int = 1
config: any = None
2025-07-07 14:25:45 +00:00
sdk_version: str = ""
sdk_prolink_version: str = ""
2025-07-07 16:17:23 +00:00
out_project: str = ""
out_debug_apk: str = ""
out_release_apk: str = ""
out_release_aab: str = ""
2025-10-10 12:53:00 +00:00
proguard_dict = {}
string: dict = None
2025-07-08 00:58:35 +00:00
2025-07-07 03:27:26 +00:00
@classmethod
def from_json(cls, json_str: str):
data = json.loads(json_str)
return cls(**data)
2025-07-07 13:52:21 +00:00
def get_config(self, key: str, default_value: str = '') -> str:
if self.config is None:
return default_value
return self.config.get(key, default_value).replace(" ", " ")
def get_app_name(self):
2025-10-10 12:53:00 +00:00
if self.app_name:
return self.app_name
2025-07-07 13:52:21 +00:00
return self.get_config("app_name")