热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Xamarin.iOS应用中的iTunesMetadata.plist文件

本文介绍了iTunesMetadata.plist文件,该文件用于向iTunes提供iOS应用程序使用AdHoc分发进行测试或企业部署的相关信息。在iTunesCo

本文介绍了 iTunesMetadata.plist 文件,该文件用于向 iTunes 提供 iOS 应用程序使用 Ad Hoc 分发进行测试或企业部署的相关信息。 

在 iTunes Connect 中创建 iOS 应用程序(无论是用于在 iTunes App Store 中销售还是免费发布)时,开发人员可指定应用程序类型、子类型、版权声明、支持的 iOS 设备和必需设备功能等信息。 对于通过 Ad Hoc 分发传递给测试员或企业用户的 iOS 应用程序,缺少此信息。

若要向 Ad Hoc 分发提供缺少的信息,可选择创建可选的 iTunesMetadata.plist 文件,然后将其包含在应用程序 IPA 文件中。 此 plist 文件是特殊格式的 XML 文件(详情请参阅属性列表编程指南),其中包含定义给定 iOS 应用程序相关信息的键/值对。


iTunesMetadata.plist 内容

以下示例介绍了典型的 iTunesMetadata.plist 文件,该文件用于定义 Ad Hoc 分发所需的 iTunes 信息:

下面将详细介绍各个键的值。


UIRequiredDeviceCapabilities

通过 UIRequiredDeviceCapabilities 键,iTunes 可了解 iOS 应用程序需要哪些设备特定的功能才可在给定的 iOS 设备上安装。 其提供作为功能 (...) 和各功能布尔值的字典 (...)。 如果某功能的值为 true,则必须显示该功能。 若为 false,则不可在设备上显示该功能。 例如:

指定 iOS 设备必须在支持 ARM7 指令集并拥有前置摄像头后才可安装该应用程序。 有关允许值的完整列表,请参阅 Apple 的 UIRequiredDeviceCapabilities 文档。


artistName 和 playlistArtistName

artistName 和 playlistArtistName 键用于定义创建要在 iTunes 内显示的 iOS 应用程序的公司名称。 示例:


bundleDisplayName、itemName 和 playlistName

bundleDisplayNameitemName 和 playlistName 键用于定义将在 iTunes 中显示的 iOS 应用程序的名称。 示例:


bundleShortVersionString 和 bundleVersion

bundleShortVersionString 和 bundleVersion 键用于定义将在 iTunes 中显示的 iOS 应用程序版本号。 示例:


softwareVersionBundleId

softwareVersionBundleId 键用于指定 iOS 应用程序的程序包 ID。 示例:


copyright 键用于定义 iTunes 中显示的版权声明。 示例:


releaseDate

releaseDate 键用于提供要在 iTunes 中显示的 iOS 应用程序的发布日期。 示例:


softwareIconNeedsShine

softwareIconNeedsShine 键用于就 iOS 应用程序图标是否需要对 iOS 6(及先前版本)使用高亮突出显示 通知 iTunes。 示例:


gameCenterEnabled 和 gameCenterEverEnabled

gameCenterEnabled 和 gameCenterEverEnabled 键用于就此 iOS 应用程序是否支持 Apple Game Center 通知 iTunes 。 示例:


genre、genreId 和 subgenres

genre 和 genreId 键用于就此 iOS 应用程序属于哪种类型通知 iTunes。 示例:

subgenres 键可选择性地用于进一步定义 iOS 应用程序的子类型(最多两个)。 示例:

对于 iOS 应用程序,Apple 当前定义以下的类型和类型 ID:


类型 ID类型名称
6000业务
6001天气
6002工具
6003旅行
6004体育游戏
6005社交
6006参考
6007工作效率
6008摄像与录影
6009新闻
6010导航
6011音乐
6012生活
6013健康健美
6014游戏
6015“财务”
6016娱乐
6017教育
6018图书
6020医疗
6021报刊杂志
6022商品指南

游戏 (6014) 子类型:


类型 ID类型名称
7001操作
7002冒险游戏
7003街机游戏
7004
7005卡牌游戏
7006娱乐场游戏
7007骰子游戏
7008教育类游戏
7009系列
7010儿童游戏
7011音乐
7012益智解谜
7013赛车游戏
7014角色扮演游戏
7015模拟游戏
7016体育游戏
7017策略
7018问答游戏
7019

Newstand (6021) 子类型:


类型 ID类型名称
13001新闻及政治
13002流行与时尚
13003家居与园艺
13004户外与自然
13005运动与休闲
13006汽车
13007艺术与摄影
13008新娘与婚礼
13009商务与投资
13010儿童杂志
13011电脑与网络
13012烹饪与饮食
13013手工艺与爱好
13014电子产品与音响
13015娱乐
13017健康、心理与生理
13018历史记录
13019文学杂志与期刊
13020男士兴趣
13021电影与音乐
13023子女教养与家庭
13024宠物
13025职业与技能
13026地方新闻
13027科学
13028青少年
13029旅游与地域
13030女士兴趣

有关详细信息,请参阅 Apple 的 Genre IDs Appendix(类型 ID 附录)文档。


softwareSupportedDeviceIds

softwareSupportedDeviceIds 键用于就此 iOS 应用程序支持哪些 iOS 设备通知 iTunes。 示例:

其中以下值可用:


  • 1 – 经典 iPhone
  • 2 – iPod Touch
  • 4 – iPad
  • 9 – 新型 iPhone

标准键

以下键内附在 iOS 应用程序的所有 iTunesMetadata.plist 文件中,且始终使用相同的值:


创建 iTunesMetadata.plist 文件


  • Visual Studio for Mac
  • Visual Studio

在 Visual Studio for Mac 中使用 iTunesMetadata.plist 文件时,有两种选择:


  • 使用 Visual Studio for Mac 的可视化 plist 编辑器创建和维护文件。
  • 在纯文本编辑器中创建和维护文件。

下面将详细介绍这两种选择。


使用可视化 Plist 编辑器

请执行以下操作:


  1. 在“解决方案资源管理器” 中,右键单击 Xamarin.iOS 项目文件,再依次选择“添加” > “新文件...” 

  2. 在“新文件”对话框中,依次选择“iOS” > “属性列表” :

  3. 对“名称” 输入 iTunesMetadata,然后单击“新建” 按钮。

  4. 在“解决方案资源管理器” 中,双击打开 iTunesMetadata.plist 文件进行编辑:

  5. 单击绿色的“+” 新建条目,再输入“UIRequiredDeviceCapabilities”作为键名称:

  6. 单击“字符串” 值类型,再从弹出列表中选择“字典” :

  7. 单击属性名左侧的折叠图标,以显示字典条目:

  8. 依次单击“添加新条目” 文本和绿色的“+” ,向字典添加条目:

  9. 输入“armv7”作为键名称,选择“布尔” 类型,再输入“Yes” 作为值:

  10. 重复上述步骤,直到已使用所有必需键/值对填充 iTunesMetadata.plist 文件(有关详细信息,请参阅上方的 iTunesMetadata.plist 内容部分)。

  11. 保存对 plist 文件的更改。


使用纯文本编辑器

请执行以下操作:


  1. 在纯文本编辑器中,新建文本文件并将其命名为 iTunesMetadata.plist
  2. 复制上面的 iTunesMetadata.plist 内容中的示例内容。
  3. 将内容粘贴到文件并按需进行编辑。
  4. 保存文件并返回 Visual Studio for Mac。
  5. 在“解决方案资源管理器” 中,右键单击 Xamarin.iOS 项目文件,再依次选择“添加” > “现有文件...” 。
  6. 在“打开文件”对话框中,选择上面创建的 iTunesMetadata.plist 文件,然后单击“确定” 按钮。
  7. 将此文件的“生成操作” 保留设置为“无” 。

稍后,准备在 IDE 中生成 IPA 时,请选择此 iTunesMetadata.plist 文件。


总结

本文介绍了 iTunesMetadata.plist 文件,该文件可用于就 Ad Hoc 分发的 iOS 应用程序通知 iTunes。 它还介绍了 plist 文件中的标准键,以及如何在 Visual Studio 和 Visual Studio for Mac 中创建和维护该文件。


推荐阅读
  • 手指触控|Android电容屏幕驱动调试指南
    手指触控|Android电容屏幕驱动调试指南 ... [详细]
  • 通过将常用的外部命令集成到VSCode中,可以提高开发效率。本文介绍如何在VSCode中配置和使用自定义的外部命令,从而简化命令执行过程。 ... [详细]
  • V8不仅是一款著名的八缸发动机,广泛应用于道奇Charger、宾利Continental GT和BossHoss摩托车中。自2008年以来,作为Chromium项目的一部分,V8 JavaScript引擎在性能优化和技术创新方面取得了显著进展。该引擎通过先进的编译技术和高效的垃圾回收机制,显著提升了JavaScript的执行效率,为现代Web应用提供了强大的支持。持续的优化和创新使得V8在处理复杂计算和大规模数据时表现更加出色,成为众多开发者和企业的首选。 ... [详细]
  • 解决Unreal Engine中UMG按钮长时间按住自动释放的问题
    本文探讨了在Unreal Engine中使用UMG按钮时,长时间按住按钮会导致自动释放的问题,并提供了详细的解决方案。 ... [详细]
  • Cookie学习小结
    Cookie学习小结 ... [详细]
  • JUC(三):深入解析AQS
    本文详细介绍了Java并发工具包中的核心类AQS(AbstractQueuedSynchronizer),包括其基本概念、数据结构、源码分析及核心方法的实现。 ... [详细]
  • 使用ArcGIS for Java和Flex浏览自定义ArcGIS Server 9.3地图
    本文介绍了如何在Flex应用程序中实现浏览自定义ArcGIS Server 9.3发布的地图。这是一个基本的入门示例,适用于初学者。 ... [详细]
  • 本文详细介绍了在 CentOS 7 系统中配置 fstab 文件以实现开机自动挂载 NFS 共享目录的方法,并解决了常见的配置失败问题。 ... [详细]
  • 服务器部署中的安全策略实践与优化
    服务器部署中的安全策略实践与优化 ... [详细]
  • 本文介绍了如何利用Shell脚本高效地部署MHA(MySQL High Availability)高可用集群。通过详细的脚本编写和配置示例,展示了自动化部署过程中的关键步骤和注意事项。该方法不仅简化了集群的部署流程,还提高了系统的稳定性和可用性。 ... [详细]
  • 在本文中,我们将探讨如何在Docker环境中高效地管理和利用数据库。首先,需要安装Docker Desktop以确保本地环境准备就绪。接下来,可以从Docker Hub中选择合适的数据库镜像,并通过简单的命令将其拉取到本地。此外,我们还将介绍如何配置和优化这些数据库容器,以实现最佳性能和安全性。 ... [详细]
  • 本文介绍了如何在 Windows 系统上利用 Docker 构建一个包含 NGINX、PHP、MySQL、Redis 和 Elasticsearch 的集成开发环境。通过详细的步骤说明,帮助开发者快速搭建和配置这一复杂的技术栈,提升开发效率和环境一致性。 ... [详细]
  • 本文提供了详细的 Filebeat 部署指南,涵盖了解压安装包、配置文件编辑以及启动服务等关键步骤。具体操作包括使用 `tar -zxvf filebeat-6.1.1-linux-x86_64.tar.gz` 解压安装包,并通过 `vi /home/elk/filebeat-6.4.2-linux/filebeat.yml` 编辑配置文件。此外,文章还介绍了最佳实践,帮助用户确保 Filebeat 的高效运行和数据传输的可靠性。 ... [详细]
  • 在 Kubernetes 中,Pod 的调度通常由集群的自动调度策略决定,这些策略主要关注资源充足性和负载均衡。然而,在某些场景下,用户可能需要更精细地控制 Pod 的调度行为,例如将特定的服务(如 GitLab)部署到特定节点上,以提高性能或满足特定需求。本文深入解析了 Kubernetes 的亲和性调度机制,并探讨了多种优化策略,帮助用户实现更高效、更灵活的资源管理。 ... [详细]
  • 在Linux系统中,针对USB输入设备(如鼠标和电容触摸屏)的动力分配后,自动创建的input节点可能导致事件处理不稳定。本文探讨了如何在Qt开发环境中,通过合理配置设备事件处理器,确保USB输入设备的稳定性和可靠性。具体实例包括使用udev规则进行设备节点的持久化管理,以及通过事件监听机制优化事件处理流程。 ... [详细]
author-avatar
我不是古哥
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有