制造业
手机应用软件开发
手机应用软件开发


Stylesheet css/basic.css not found, using css/basic.less instead. Please contact developer of "starter" template.
Stylesheet ../dokuwiki/css/_search.css not found, using ../dokuwiki/css/_search.less instead. Please contact developer of "starter" template.
Stylesheet ../dokuwiki/css/_admin.css not found, using ../dokuwiki/css/_admin.less instead. Please contact developer of "starter" template.
Stylesheet css/structure.css not found, using css/structure.less instead. Please contact developer of "starter" template.
Stylesheet css/design.css not found, using css/design.less instead. Please contact developer of "starter" template.
Stylesheet css/content.css not found, using css/content.less instead. Please contact developer of "starter" template.
Stylesheet css/includes.css not found, using css/includes.less instead. Please contact developer of "starter" template.
Stylesheet css/title.css not found, using css/title.less instead. Please contact developer of "starter" template.
Stylesheet css/list.css not found, using css/list.less instead. Please contact developer of "starter" template.
Stylesheet css/auth.css not found, using css/auth.less instead. Please contact developer of "starter" template.
Stylesheet css/mobile.css not found, using css/mobile.less instead. Please contact developer of "starter" template.
Stylesheet css/print.css not found, using css/print.less instead. Please contact developer of "starter" template.

简介

手机应用软件开发是指针对特定手机操作系统和硬件平台开展的软件开发。与传统的桌面、工控等软件开发相比,手机应用软件开发受限于手机的屏幕尺寸和低功耗等要求,但也能够充分利用手机上诸如麦克风、相机,以及其他各类传感器等硬件资源。和桌面软件开发一样,手机应用软件开发也存在操作系统的区隔,目前最主流的是美国苹果公司主导的iOS系统与Google公司主导的Android系统。2019年,华为自主研发的鸿蒙系统也随之公布。随着智能设备市场的发展,面向平板、智能手表等产品的软件开发,通常也被纳入手机应用开发的范畴。

手机操作系统

截至2019年,全世界最主流的智能手机操作系统是Android(国内通常称为「安卓」)和iOS,二者共同占据了几乎全部的全球市场份额。根据statcounter的统计数据,自2018年11月至2019年11月,iOS在智能手机市场占比约四分之一,剩下的近四分之三则被Android系统占据。

iOS为苹果公司拥有的闭源操作系统(除一部分和macOS共享代码的Darwin内核开源之外),其只能运行在苹果公司推出的iPhone和iPod Touch设备上。此前,iPad产品所搭载的也是iOS系统。而苹果在2019年6月召开的WWDC全球开发者大会上宣布,iPad所运行的操作系统将从iOS重新命名为iPadOS。苹果推出的Apple Watch和Apple TV产品则分别运行着名为watchOS和tvOS的操作系统。通常,iOS和其他苹果产品操作系统每年会更新一个大版本,并在当年夏天举行的WWDC大会上公布详细信息,然后在秋季随新一代iPhone推出正式版。截至2019年底,最新的iOS版本为iOS 13。

Android为Google公司推出的移动操作系统。其特点在于支持的设备范围相当广泛,远不仅限于Google推出的手机。通常来说,可以将Android系统分为两个部分:Android开源平台(AOSP)Google移动服务(GMS)。其中AOSP是按照Apache许可证开源的自由软件,可以由各大厂商自由修改、定制和发布。而GMS属于Google的私有服务,包含Google Play、Gmail、YouTube等Google官方应用商店和应用程序。

由于Google目前并未在中国大陆提供服务,因此国内发售的Android手机通常是基于AOSP进行定制的厂商发行版,如小米手机的MIUI,华为手机的EMUI等。

除iOS和Android系统之外,还有微软公司的Windows Phone/Windows 10 Mobile(现已停止支持)、诺基亚的Symbian(中文称为「塞班」,现已停止支持)、华为于2019年发布的鸿蒙(Harmony)操作系统,以及Google研发中的下一代移动操作系统Fuchisa等。

开发方式

iOS平台

面向运行iOS系统的苹果设备进行软件开发,通常需要按照官方相关开发文档,使用苹果提供的开发工具包进行开发工作,然后将成品通过App Store的官方渠道进行审核和分发。如果苹果方面审核没有通过,开发者需要按照审核意见进行修改并再次提交,否则新版本应用将无法上架。对于未越狱、未安装其他描述文件的iOS设备,App Store是惟一获取新应用的渠道。

在App Store分发方式之外,苹果还为企业用户提供了其他一些应用分发渠道用于软件测试或企业内部分发(如针对员工办公使用的应用)。拥有苹果认证过的企业证书的企业,可以在不提交App Store的前提下发布新版本应用。而信任了该企业证书的设备则可以直接安装企业发布的应用。但由于这种分发方式严重受到来自赌博、色情等灰色产业团伙的滥用,以发布无法通过App Store审核规则的非法应用,苹果目前已经收紧了对企业证书的发放。

要开发iOS应用,目前只能使用运行macOS系统的苹果电脑设备。由于苹果的Mac系列电脑都使用X86指令集架构的CPU,一些爱好者可以比较容易地在非苹果发售的硬件上运行macOS,这种行为通常称作「黑苹果」。需要注意,尽管macOS系统是免费的,但苹果官方并未授权在非苹果电脑上运行macOS这种行为。尤其对于大型企业,这种行为可能会导致法律问题。苹果官方发布了一个官方的集成开发环境(IDE),称作Xcode,可以在Mac App Store免费下载。

关于开发语言,苹果官方支持着两种编程语言——Objective-C和Swift。理论上,由于这两种语言同C/C++紧密的联系,用C语言或C++编写iOS应用也可行(一部分iOS开发中使用的第三方库就是由C/C++开发),但苹果官方对操作系统API提供的接口和文档一律用Objective-C或Swift表示。自OS X以来,苹果一直使用Objective-C作为开发语言。在2014年WWDC大会上,苹果发布了Swift语言,其相比Objective-C多出了一部分现代语言的优势。2015年,苹果宣布Swift语言编译器开源,可以在苹果之外的其他操作系统运行(但不支持苹果系统上的系统接口)。在2019年WWDC大会上 ,苹果发布了SwiftUI,让开发者更快速地开发用户界面,轻松地把一百行的前端代码缩减到十几行 ,把重点放在后端。

Android平台

在Android平台,Google官方支持Java和Kotlin两种编程语言。Google官方鼓励使用Android Studio作为开发工具。

和Swift相似,Kotlin吸收了现代语言如类型推断等全新特性,令开发效率提高。Kotlin由捷克JetBrains公司设计并开源编译器。在2017年的Google I/O大会上,Google宣布Kotlin成为受官方支持的Android开发语言。

评判标准

组成部分

      一个安卓App由Res,assets,AndroidManifest,classes等组成,其中Res目录一般是应用存放资源的位置,AndroidManifest则负责告诉安卓程序该如何运行。
      Classes即是编译过后的程序源代码,编译后的语言称为Smail。
      一般来说,Res中包含Resources.arsc和Res文件夹,有些人可能会对Res进行混淆
      

Alpha

  • Alpha版(内部测试版):软件或系统的内部测试版本Alpha版本一般只在软件开发公司内部运行,不对外公开。 主要是开发者自己对产品进行测试,检查产品是否存在缺陷、错误,验证产品功能与说明书、用户手册是否一致。Alpha版本的产品仍然需要完整的功能测试,而其功能亦未完善,但是可以满足一般需求。

因为它是整个软件释出周期中的第一个主要阶段,所以它的名称是“Alpha”,希腊字母中的第一个字母。 Alpha版本通常会送交到开发软件的组织或社群中的各个软件测试者,用作内部测试。在市场上,越来越多公司会邀请外部的客户或合作伙伴参与其软件的Alpha测试阶段。这令软件在此阶段有更大的可用性测试。在测试的第一个阶段中,开发者通常会进行白盒测试。其他测试会在稍后时间由其他测试团体以黑盒或灰盒技术进行,不过有时会同时进行。

产品设计

产品设计工作流程

1.用户调研,用户分析 2.需求分析,确定核心流程 3.功能分析,确定业务流程 4.编写需求文档,组织需求评审 5.研发、测试、上线 6.收集数据以迭代,重复1~6

应用分发

一个手机应用被开发出来后,用户可以在应用商店(例如苹果APP Store或者谷歌Google Play)下载应用并得到持续的更新服务。开发者在开发完成后将应用程序交由上述平台管理,这一过程成为应用的分发。分发应用的目的是使用户可以集中的下载管理手机设备上的应用程序,最早采用此模式管理系统内应用程序的是苹果公司。分发应用是开发者推广应用的一种手段,但不是必须的。

常见的手机应用分发平台

  • (苹果) App Store
  • (谷歌)Google Play 商店
  • 各大应用商店

产品设计名词解释

痛点

痛点是恐惧:当用户形容一个需求时用了“怕”,这就是意味着痛点。 例如:我怕编辑了一天的文件忘了保存。痛点是忘了保存。

爽点

爽点是即时满足:人在满足时的状态叫愉悦,人不被满足就会难受,就会开始寻求。 如果这个人在寻求中,能得到即时满足,这种感觉就是爽。

痒点

痒点是满足虚拟自我:什么是虚拟自我?就是想象中那个理想的自己。这不是功能性的需求,这就是一种虚拟自我的实现。

用户体验

用户体验分为五个层次: 表现层 框架层 结构层 范围层 战略层

开发过程

需求文档

需求文档开发阶段主要明确App的产品定位、目标用户、功能定义及各项开发指标等信息并输出App需求文档,用于指导后续的开发工作;

应用交互原型

依照产品需求文档形成App原型设计稿

UI及动画设计

      根据App交互原型进行界面及交互动画设计
      一般来说,推荐使界面有一定的层次感,例如给界面添加一定的阴影(安卓常用)或添加模糊效果(IOS常用),并让动画效果拥有加速度和一定的关联
      合适的UI设计可以使应用有更好的使用体验,而且,贴合系统主题也是应用美观要素的一部分
      

后台服务开发

依照需求文档及App交互原型进行App后台服务开发并生成App的接口文档

App开发

依照需求文档、App交互原型、App UI、UE设计稿、接口文档进行App开发

测试

App进行内部测试

上线分发

App分发上线

生产线分工

设计和规划

位置与环境

投资与评估

规模与功能

风格与形式

组织结构

收益管理

客流曲线

时间分布

空间分布

目标群体

容量控制

风险控制

标准

文档

编辑成员
17 人

Louis Studio, 跳舞的线-滚动的天空, ecnelises, 是Ray酱呀, Lee, cute.2, MozChan, 没有后台的妖怪, roseau, A-S, Pluto_cn, lzw-723, zhshch, Typhon, X, 小梦, 木又

评论(1)

你需要登录发表评论。
跳舞的线-滚动的天空 2019-12-20 21:25:32
突然鸿蒙(
1
回形针手册-icons