修复打包签名并支持 App Store IPA 上传
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
"""服务端 Ad_Hoc 分发:OSS/WebDAV 上传、manifest、下载页和二维码。"""
|
||||
"""服务端 IPA 分发:App Store IPA 直传及 Ad Hoc 安装页发布。"""
|
||||
import json
|
||||
import plistlib
|
||||
import posixpath
|
||||
@@ -127,7 +127,7 @@ def _upload_oss(config: dict, files: list[tuple[Path, str]]) -> dict[str, str]:
|
||||
|
||||
|
||||
def publish_ipa(config: dict, ipa_path: Path, build_dir: Path) -> tuple[str, str]:
|
||||
"""发布 IPA,返回下载页 URL 与二维码本地路径。"""
|
||||
"""发布 IPA,返回下载 URL 与二维码本地路径。"""
|
||||
upload = config.get("_upload_config", {})
|
||||
mode = upload.get("mode", "")
|
||||
if mode not in {"oss", "webdav"}:
|
||||
@@ -137,8 +137,14 @@ def publish_ipa(config: dict, ipa_path: Path, build_dir: Path) -> tuple[str, str
|
||||
ipa_file, manifest, html = _write_distribution_files(config, ipa_path, output_dir)
|
||||
ipa_remote, manifest_remote, html_remote = _remote_paths(config)
|
||||
|
||||
# manifest 依赖 IPA URL,先发布 IPA。
|
||||
uploader = _upload_oss if mode == "oss" else _upload_webdav
|
||||
|
||||
# App Store 包只需要提供 IPA 下载地址,不能生成 itms-services 安装页。
|
||||
if config.get("BUILD_TYPE") == "App_Store":
|
||||
urls = uploader(upload, [(ipa_file, ipa_remote)])
|
||||
return urls[".ipa"], ""
|
||||
|
||||
# Ad Hoc manifest 依赖 IPA URL,先发布 IPA。
|
||||
urls = uploader(upload, [(ipa_file, ipa_remote)])
|
||||
_write_manifest(config, manifest, urls[".ipa"])
|
||||
urls.update(uploader(upload, [(manifest, manifest_remote)]))
|
||||
|
||||
Reference in New Issue
Block a user