我一直在检查苹果的iTMSTransporter,并发现它将是一个非常有价值的工具,我们在我们的CI/CD管道。我查看了lookupMetadata操作,它提供了大量有价值的信息,用于监视我们的应用程序、状态和应用程序中定义的采购。不过,我们希望能够做的一件事是,获取该操作的输出元数据XML,修改应用程序中的购买细节,然后使用iTMSTransporter更新它。这是一个支持的选项吗?
要了解更多信息,iTMSTransporter -m lookupMetadata <options>将提供一个名为metadata.xml的文件,其中包含有关应用程序的详细信息。这个XML的片段看起来像这样..。
<?xml version="1.0" encoding="UTF-8"?>
<package xmlns="http://apple.com/itunes/importer" version="software5.11">
<metadata_token>1592855553024-a491289f7f79e4f8dcbdae34cf41ef4485928389987f3b4cc3323111c85b37</metadata_token>
<provider>MyCorp12345</provider>
<team_id>CQQR623213B5</team_id>
<software>
<vendor_id>com.myapp.PurchaseTest</vendor_id>
<read_only_info>
<read_only_value key="apple-id">342453443</read_only_value>
</read_only_info>
<software_metadata app_platform="ios">
<versions>
<version string="1.0">
<locales>
<locale name="en-US">
<title>PurchaseTestSN</title>
</locale>
</locales>
</version>
</versions>
<in_app_purchases>
<in_app_purchase>
<product_id>com.myapp.PurchaseTest.Consumable2</product_id>
<reference_name>Consumable2</reference_name>
<type>consumable</type>
<products>
<product>
<cleared_for_sale>true</cleared_for_sale>
<intervals>
<!--The following <interval> element represents a snapshot of present and future pricing and availability information.
In other words, past data may not be reflected by this interval.-->
<interval>
<start_date>2020-06-22</start_date>
<wholesale_price_tier>2</wholesale_price_tier>
</interval>
</intervals>
</product>
</products>
<locales>
<locale name="en-US">
<title>Consumable2</title>
<description>Consumable2</description>
</locale>
</locales>
<read_only_info>
<read_only_value key="apple-id">435324234</read_only_value>
<read_only_value key="iap-status">Waiting for Screenshot</read_only_value>
</read_only_info>
</in_app_purchase>
...
</package>我希望能够编辑com.myapp.PurchaseTest.Consumable2的细节--例如定价或描述--并以自动化的方式使用iTMSTransporter上传这些更改。这有可能使用iTMSTransporter吗?我还研究了,但没有看到支持该功能。有什么不同的或更好的方法来实现这一点吗?
发布于 2020-09-08 15:17:51
有一篇关于媒体的文章:
https://medium.com/@tonyspin/uploading-ios-in-app-purchase-downloadable-content-727e0d2c0531
这就很好地解释了这个过程。您可以使用lookupMetadata获取itmsp包。里面是metadata.xml。
一些补充说明:
我的程序如下:
下载包
/usr/local/itms/bin/iTMSTransporter -m lookupMetadata -u your_user -p your_appspecific_pw -vendor_id your_verndor -itc_provider your_provider -destination .然后重命名下载的包并在其中修改metadata.xml:
<versions><products>review.png与:进行验证
/usr/local/itms/bin/iTMSTransporter -m verify -u your_user -p your_appspecific_pw -vendor_id your_verndor -itc_provider your_provider -f your_modified_package.itmsp终于上传了
/usr/local/itms/bin/iTMSTransporter -m upload -u your_user -p your_appspecific_pw -vendor_id your_verndor -itc_provider your_provider -f your_modified_package.itmsp这将覆盖您在IAPs中已经拥有的内容,所以要小心。上传的数据不会立即出现,但在30分钟或更长时间后,要耐心等待。
https://stackoverflow.com/questions/62522771
复制相似问题