Apple App Store Connect API的包装器
项目描述
asconnect
asconnect是围绕Apple App Store Connect REST API的Python包装器。
此包装器并不涵盖所有API,但涵盖了基本功能,包括
- 上传构建
- 创建新的TestFlight版本
- 设置TestFlight审查信息
- 创建新的应用商店版本
- 设置应用审查信息
- 提交应用审查
入门指南
安装
该软件包可在PyPI上找到,因此您可以通过运行pip install asconnect
来获取最新版本。
创建客户端
首先,您需要生成密钥,然后获取其ID、密钥本身的内容和发行者ID。
一旦您拥有了这些,您可以通过运行来创建一个新的客户端
client = asconnect.Client(key_id="...", key_contents="...", issuer_id="...")
获取您的应用
大多数操作都需要应用标识符。这不同于您选择的应用程序包ID,而是由苹果生成的ID。获取它的最简单方法是运行此代码
app = client.app.get_from_bundle_id("com.example.my_bundle_id")
上传构建
上传构建不是App Store Connect API的一部分,但是包含了一个围绕altool的包装器,以尽可能简化操作。让我们为您的应用程序上传一个构建
client.build.upload(
ipa_path="/path/to/the/app.ipa",
platform=asconnect.Platform.ios,
)
如果您想等待您的构建完成处理
build = client.build.wait_for_build_to_process("com.example.my_bundle_id", build_number)
build_number
是您在创建构建时给出的构建号。应用商店使用它来识别构建。
应用商店提交
让我们用这个构建创建一个新的应用商店版本并提交它
# Create a new version
version = client.app.create_new_version(version="1.2.3", app_id=app.identifier)
# Set the build for that version
client.version.set_build(version_id=version.identifier, build_id=build.identifier)
# Submit for review
client.version.submit_for_review(version_id=version.identifier)
就这么简单。大多数时候至少是这样的。如果您没有从先前版本继承信息,您将需要设置截图、审稿人信息等。所有这些都可以通过这个库来完成。
分阶段分发
# Create a new version
version = client.app.create_new_version(version="1.2.3", app_id=app.identifier)
# Start a versions' phased release, the initial state of which is INACTIVE
phased_release = client.version.create_phased_release(version_id=version.identifier)
# Check on a phased release
phased_release = client.version.get_phased_release(version_id=version.identifier)
# Advance or modify a phased release
phased_release = client.version.patch_phased_release(phased_release_id=phased_release.identifier, phased_release_state=PhasedReleaseState.active)
phased_release = client.version.patch_phased_release(phased_release_id=phased_release.identifier, phased_release_state=PhasedReleaseState.pause)
phased_release = client.version.patch_phased_release(phased_release_id=phased_release.identifier, phased_release_state=PhasedReleaseState.complete)
# Delete
client.version.delete_phased_release(phased_release_id=phased_release.identifier)
入门指南
对于开发,asconnect
使用poetry
贡献
此项目欢迎贡献和建议。大多数贡献都需要您同意贡献者许可协议(CLA),声明您有权,并且实际上确实授予我们使用您贡献的权利。有关详细信息,请访问https://cla.opensource.microsoft.com。
当您提交拉取请求时,CLA机器人将自动确定您是否需要提供CLA,并相应地装饰PR(例如,状态检查,评论)。只需遵循机器人提供的说明即可。您在整个使用我们的CLA的存储库中只需这样做一次。
此项目已采用Microsoft开源行为准则。有关更多信息,请参阅行为准则FAQ或联系opencode@microsoft.com以提出任何其他问题或评论。
项目详情
下载文件
下载您平台上的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
构建分发
asconnect-3.0.6.tar.gz 的散列值
算法 | 散列值 | |
---|---|---|
SHA256 | ed332c81be8ee8fe807cb1df123a3d74bf70367f8ab3ef22d8b8e5e1cbe4c1a0 |
|
MD5 | d15e69113216a8ce55c4a58dd4967c57 |
|
BLAKE2b-256 | 925b578179815799e246e020c8c93c3338751d80c52dd09804cd075db95ae895 |
asconnect-3.0.6-py3-none-any.whl 的散列值
算法 | 散列值 | |
---|---|---|
SHA256 | 5c42a3afbd76ce5919025c68faf13966064434dc0de23bbd10686d7219c4b045 |
|
MD5 | 7468ed373ff29d9f676083ace3b2b0d2 |
|
BLAKE2b-256 | a20f25cb6afd351f9834ca4b7f032c66cb3e34a6dc51528108b3f8e0ded54132 |