首页 iOS.& Swift Books iOS应用程序分发& Best Practices

1
应用商店. 由Pietro Rea撰写

在App Store之前,分发软件比今天更难。有一个时间开发人员必须在软盘或CD上汇款他们的应用程序,并从字面上“将”送到商店。一旦大多数人可以可靠地连接到互联网,它突然被购买,下载和安装软件,从您自己的家中舒适地购买。这种情况有所改善,但开发人员仍然必须建立和维护定制的结账,托管和支付系统。

2008年,Apple为其新发布的iPhone推出了App Store。 App Store在软件分发中介绍了下一章。开发人员不需要担心托管,收取付款或履行订单。 Apple确保所有App Store访问者都有一个有效的付款方式文件,从而消除了从购买应用程序中的大部分摩擦。开发人员现在可以专注于建立伟大的应用程序,并将其余部分留给Apple和App Store。

除了更简单的分布之外,App Store也是历史上最成功的个人计算设备的入口点:iPhone,iPad,Apple Watch,Apple TV和Veneral Mac。在过去的十年中,App Store经济已经不懈地增长,现在它代表了开发商的巨大机会。

截至本文,有超过15亿有效的Apple设备。超过5000万人在全球175个地区每周访问App Store。开发商在此期间也会在经济上受益。 Apple已支付超过1550亿美元的开发人员,并在其他交易中促进了数十亿美元。毫无疑问,App Store是一个高度成功的市场,为开发人员提供了极大的用户和利润丰厚的机会。 “进入”是一个有价值的挑战。

第三方应用程序

Apple可以说是这个星球上最具用户友好的公司之一。 Apple围绕第三方软件的哲学来自于这种以用户为中心。尽管苹果在任何地方都没有正式说明其哲学,但世界看来源于它的世界,渗透到这本书中的一切。无论您是否同意,理解Apple的立场将帮助您浏览应用程序分发的世界。

大多数Apple设备都支持两类大类三方软件。第一类是网络的开放生态系统。打开Web标准管理您可以为Web构建的软件是什么样的软件,并且对Web中可以构建的内容没有限制,或者您可以如何构建它。如果您可以在像Safari这样的移动网络浏览器上使用它,Apple支持它。

Apple支持的第二类第三方软件是本机应用程序。与Web不同,没有单一实体控件,Apple控件如何构建和分发本机应用程序。您可以在网络上进行几乎任何东西,但是在本机应用程序方面,Apple对其应用生态系统具有很强的愿景。

简而言之,Apple认为构建良好应用程序的一部分意味着保护最终用户免受糟糕的演员。因此,应始终调解第三方应用程序以鼓励和强制为最终用户执行良好的体验。 “调解”在这个意义上意味着坐在第三方应用程序和最终用户之间作为一种裁判。

默认情况下,第三方应用程序无法在用户设备上运行,而不明确许可。为了能够运行,第三方应用程序必须匹配正式支持的用户需求。最终用户只能在预先批准的设备上安装第三方应用程序以获得预先批准的原因。这就是为什么第三方开发人员只能使用App Store将本机应用程序分发到公众。

Apple对其第三方应用生态系统的愿景是一种有意识的策略,具有许多权衡。明显的权衡是 应用程序分发的复杂性。 Apple只希望在App Store上的好,安全,用户友好的第三方应用程序,以及他们必须强制执行这一切的控件可以使应用程序开发人员的生活变得困难。

应用生命周期

您可能认为在App Store上发布应用程序就像一条直线,从步骤迈出,直到您完成。实际上,一个应用程序(如任何软件)都需要测试,错误修复和改进。俗话说,软件从未完成过!

一旦获得第一个版本并且真实的用户在野外使用您的应用程序,您将开始接收反馈流 - 从App Store,Analytics提供商的Analytics,Apple的崩溃报告中的App Store,Analytics的评分和评论。

通过此反馈,您和您的团队可以决定要制作的改进,您要修复的错误以及要添加的功能。就应用程序分发而言,您必须捆绑并将这些变化捆绑到“应用更新”中。

当您继续在您的应用程序上工作时,您就会意识到发布和 保持 App Store中的应用程序看起来比直线更像是圆形。

该图显示了不同的步骤 应用程序开发生命周期。更详细地,以下是从分发的角度表示的每个步骤:

  1. 发展:开发只是意味着制作应用程序。大多数关于iOS开发的书籍详细介绍了发展,并留出了其余的生命周期。这本书是相反的。您不会花很多时间阅读如何制作应用程序。相反,这本书专注于除编码以外的所有内容。
  2. 上传:一旦您对应用程序满意,您将其包装并将其上传到其他人可以下载它。在开发后立即,分布通常是内部的,或者至少“预发布”。您可能需要为产品管理器,业务分析师或QA测试仪发布应用程序的内部版本。
  3. 测试:测试什么以及如何测试是一个大主题,也没有在书中涵盖。在分发的上下文中,您需要在任何人手动测试之前在测试人员手中获取您的应用程序。您可以拥有内部测试仪(Alpha测试仪)或外部测试仪(Beta测试仪)。希望该应用程序通过飞行的颜色来传递所有测试,但如果没有,可以返回开发,上传新版本的应用程序并再次测试。
  4. 产品页面:营销是分销的重要组成部分。你知道你的应用程序很棒,但你也必须告诉别人这个应用程序是什么以及他们为什么需要它。开发和测试后,您可以在应用程序的应用程序商店产品页面上工作。这包括设置应用程序的价格,添加屏幕截图,写入引人注目的描述等。
  5. 应用评论:Apple要求每一个公开分布的第三方应用程序通过应用程序审查。这包括应用程序的初始版本以及您可能会作为更新发货的每个后续版本。真正的Apple员工查看您的应用程序,以确保它符合App Store指南。如果您的应用程序未通过应用程序审核,请根据问题所在,您可能必须重新开始开发并再次启动生命周期。
  6. 应用商店:一旦Apple批准您的应用程序提交,批准版本就可以在App Store中获得!世界各地的用户现在可以找到并下载它。如果您有一个付费应用程序,用户支付苹果,那么谁付钱给你。
  7. 分析:您的用户喜欢您的应用程序吗?是否有错误您必须修复?发布后,您可以查看分析,应用程序评价和崩溃报告,并将那些输入的输入与产品路线图相结合,以确定下一步的更改。一旦你决定该做什么,生命周期会再次出现。

如果您认为“应用程序分发”表示“将您的应用程序提供给别人”,那么就可以分发而不是在App Store上看到您的应用程序(步骤6)。开发人员需要编译和安装应用程序的开发版本。内部测试仪需要安装应用程序的Alpha版本。外部测试仪需要安装应用程序的Beta版本。最后,最终用户可以安装应用程序的生产版本。

每种类型的“分布”都有自己的一组规则,并需要你的不同东西。这就是这本书最终的东西。简而言之,这本书教你如何将您的应用程序提供给您需要的人,每当他们需要它,在整个应用程序生命周期中,以最快,最有效的方式需要它。

关于这本书

本书并不意味着成为全包应用商店分销手册。它也不替代Apple的官方文件。这不仅是阅读和写作的巨大任务,而且它也是一个快速移动的目标。 Apple每年更改其平台,其中许多变化会影响应用程序分发。 App Store指南,管理第三方开发人员可以且不能做的一组规则,也是一个经常变化的活文件。

您在本书中发现的是一个深入考虑的主题,叙述和建议序列。本书彻底涵盖了基本面,以便您可以构建您需要内容App Store分发的最困难的部分所需的心理模型。这些心理模型将多年来帮助您。

这本书还涵盖了最佳实践和自动化。没有明确的应用程序分布最佳实践列表,但在过去十年中,团队融合在本书的下半年中的类似实践。

这本书是谁

没有单一的职位描述与第三方应用程序分发完全对齐。要复杂化问题,将应用程序分发的整个工作可能会被切成较小的部分,其中一些任务将参加开发人员,其余的去非技术团队成员。

人们有不同的背景,常规处理应用程序分发。写这本书时,我们记住了这一点。我们认为,开发人员和非开发人员都可以受益。有些章节涉及开发人员,但我们旨在解释第一原则的核心概念,所以每个人都可以学到新的东西。

涉及开发人员时,这三种类型的开发人员将受益于本书中的大部分:

  1. 分布“新手”:作为一个应用程序分发新手与软件开发新手不同。 Razeware最高级的IOS开发人员如果她不定期处理App Store,仍然是App Store新手。

该书涵盖了最常见的分发工作流程,因此App Store Newizes可以发布他们的第一个应用程序,而不会使用细节陷入困境。特别是,第2章和第3章是适用于简单用例的新手的“快速指南”。

  1. 分布“专家初学者”:一些应用程序只需要每季度或一年一次或一次需要更新,让您有足够的时间忘记一切。有无数的应用程序开发人员已成功发布到应用程序商店的应用程序,发现该过程是不透明和令人沮丧的过程。这些开发人员并没有享受对应用程序分发的良好理解,因此在下次有一个应用程序版本时,他们可能会有类似的困难。

在阅读本书之后,经常对发布到App Store的不透明过程经常沮丧的开发人员将更加容易调试其问题。特别是,代码签名似乎在某些时候旅行大多数人。如果这是您,第8章解释了从地下签名的代码,因此您最终可以“获得”一次和所有人。

  1. Devops和自动化工程师:许多东西是App Store的独有,但在一天结束时,构建应用程序类似于构建任何其他软件。在软件工程中有很好的理解,例如连续集成(CI)和连续交付(CD),可以加速,并且通常改善应用程序生命周期。

尽管每个软件开发团队在应用商店分销和自动化方面略有不同地工作,但在App Store分配和自动化时,有一个真正的“融合”。第11到13章深入了解建设管道,因此您可以在内部和外部分发应用程序,而无需大量手动工作。

我们已经向这本书撰写了希望,希望我们能够帮助大量参与应用程序的生命周期的人练习与世界共享应用程序的最佳实践。

有一个技术问题?想报告一个错误吗? 您可以向官方书籍论坛中的书籍作者提出问题和报告错误 这里.

有反馈分享在线阅读体验吗? 如果您有关于UI,UX,突出显示或我们在线阅读器的其他功能的反馈,您可以将其发送到设计团队,其中表格如下所示:

© 2021 Razeware LLC