微信小程序制作
当前位置:网站首页 > APP开发制作 > 关于移动APP开发有哪些你不知道的 返回列表

关于移动APP开发有哪些你不知道的

作者:admin 时间:2022-08-16 浏览量:233
三种移动APP开发模式
1.1 Native APP
Native APP开发模式算是最传统、最经典的开发模式,此模式建立于手机操作系统(Android/IOS)之上进行开发,几乎完全依赖于本地硬件或者OS的基础功能来实现APP的各项需求,所以我们又将此模式称为本地开发模式。这种模式充分利用了用户本身手机的本地资源,这对于APP服务提供方来说可以极大的减轻他们的服务流量压力,同时此模式下的稳定性和性能效益上都极为优秀。但是优点与缺点并存,完全依赖于本地硬件进行开发的APP在后续升级以及硬件的兼容性上都极为的受限,很容易使得一部分机型用户遇到各种兼容性问题,不利于APP的推广。
1.2 Web APP
Web APP从本质上来讲,其实就是一个针对特殊需求进行了针对性优化后的web浏览器,这种app的兼容性可以说是最强的,因为其对硬件上没有任何个性化的需求,只有带有浏览器功能api的手机都可以安装并使用此种app,并且由于我们将所有功能都放在了我们的web站点上,所以app本身的开发难度也是低的可怕。但是此Napp从本质上来说就是网络浏览器,所以此种app对于网络本身性能的依赖极大,一旦用户因为其他客观原因造成其网络性能低下,那么app就会处于低效甚至是不可用状态,同时因为不依赖于本地硬件和操作系统,所以也几乎不可能实现需要本地硬件或者操作系统支持的功能。
1.3 Hybrid APP
Hybrid APP开发模式,即混合开发模式。前两种开发模式都有了一定的使用历史,而且其应用优点和缺点都极为的极端,所以开发者在强烈的需求中催生出了这种中合后的新型开发模式,这种模式建立于第三方技术方提供跨平台开发框架之上,我们可以只使用一种编程语言开发出多平台都可以使用的app。
2 三种开发模式的环境配置及APP运行
2.1 Hybrid APP的PhoneGap开发框架
PhoneGap框架由Nitobi公司推出,从根上讲是基于Web APP的理念(不幸的是这家公司已经被业界毒瘤adobe收购,笔者对此深表遗憾),该公司对其框架的官方定义是:使用了web技术的移动端本地应用程序,其所使用的语言统一为html5。总而言之,该框架其实就是建立在html5这门强大web语言基础之上的移动端开放模式。
PhoneGap最为卓越和成功的地方在于它成功地将java web技术移植到了移动设备之上,所以对于那些拥有过多年java web开放经验的程序员来说,他们在此框架内进行移动端app的开发会更为得心应手,无论是html5还是css或者js都在本框架的兼容范围之内。PhoneGap框架的兼容能力是无以伦比的,主流的ios、Android和wp都是他的核心支持名单之上,开发者可以很轻松利用该框架避免多次的重复开发,同时该框架吸收了native app的一些强大特性,提供给开发者一部分稳定的api允许他们安全可靠的调用手机的联系人列表、GPS数据或者使用手机的摄像头和麦克风。更为令人可喜的是该框架是完全免费的,这对于一些中小型的独立工作室来说是巨大的福音。不过强大兼容性和泛型的背后是大量计算消耗作为代价,所以此框架开发出来的APP运行速度较为缓慢,同时在对本地硬件资源的利用率上也完全不如native app模式。
2.2 PhoneGap APP开发环境搭建
开发PhoneGap APP可以使用Dreamweaver工具来制作 Java Web 页面,并使用 PhoneGap Build(PhoneGap的在线编译云服务)生成安装包。但如果想测试某一平台的硬件功能,就必须配置对应的开发环境,再进行编译和测试。例如安卓开发的SDK工具包提供了手机模拟器,可以在PC机上进行APP测试。
下面介绍在配置好安卓开发环境后,如何使用PhoneGap框架开发应用。首先,下载好PhoneGap的工具包,打开Eclipse后,按照创建步骤,新建一个安卓应用项目。复制cordova-x.x.x.jar文件到项目中的lib文件夹下,右击该jar文件添加引用。然后,在项目的assets目录下新建文件,复制PhoneGap工具包内的cordova.js文件到个文件夹下,并创建Ja-va Web运行的级联样式表,Html文件和其他js文件。
2.3 Native APP的开发环境配置及APP运行
上一节已经说过,native app开发模式是本地开发模式,所以对于每一种不同的操作系统,所使用的框架和编程平台都是不同的,比如苹果手机的ios系统需要使用switch语言或者传统的obj-c语言,Android手机一般使用java进行开发,但是在Android更新到5.0增加了C++虚拟机后,也开始广泛的使用C++进行安卓手机上的大型应用的开发,wp手机使用的则是微软自家经典的.net平台和C#语言。
3 HTML5对开发模式的影响
3.1 HTML5的新特性
HTML5能够成为现在最被看好的web语言的一个核心理由就是他通过独有的技术实现了离线存储功能,也就是说即使手机的网络暂时断开了,用户在使用应用的时候也可以凭借缓存文件继续进行一段时间的交互,这样就极大的避免了web app受到的网络性能的限制,同时html5的交叉定位api也使得原本web app极差的定位短板得到了有效的弥补。所以说HTML5是在WEB APP的基础之上的又一次重大飞跃。
为了适应移动设备,HTML5页面的表单元素可与键盘形成对应,不同输入对应不同键盘,以节省屏幕中键盘占用的空间。HTML5放弃了Flash插件,提供了Canvas绘图API来,开发者只需编写Ja-vaScript实现动画效果,提高了定性。新加入的视频和音频元素,为开发者统一了使用规范,再也无需安装插件。移动设备上不通过嵌入音频或视频来达到效果而是使用多个组件来实现。
同时作为一门脚本语言,html5最为卓越的进步在于它具有了JS多线程的特性,这是极大的性能提升,所以用户在运行HTML5的APP时,手机系统是在多线程的进行多项任务的,这对于当下动辄4核乃至8核的手机CPU来说,无异于是好马配好鞍。
3.2 应用商店
手机上的五花八门、千差万别,但是对于绝大部分用户来说他们下载安装APP往往都是在几个核心的大IT公司提供的应用商店内进行的,而这几家最大的应用商店背后的公司同时也分别是手机操作系统的持有方。比如我们拿最为优秀的例子苹果商店来说,对于如今硬件上已经几乎没有明显差距的智能机硬件时代来讲,苹果手机之所以能够牢牢占据销量的绑手,依靠的正是他安全可靠同时内容又丰富多彩的应用商店,其实如果我们追根溯源的话就会发现应用商店的概念发扬光法者也正是苹果上一任传奇CEO史蒂夫乔布斯。乔布斯制定了一系列严格的手段将所有苹果系统应用开发者集中到统一平台上进行管理,同时也对开发者的每一个APP和每一次更新都严格把关,从而形成了如今优秀而又卓越的苹果应用商店。
乔布斯的成功在于他意识到了用户真正的需求是什么,对于一个手机用户来说,其实他们并不在意自己手里的小东西在硬件上有多么牛逼的参数,又或者他使用的软件采用了多么优秀的算法和优化策略,我们往往只在乎最终呈现给我们的结果是不是好的,这个软件够不够流畅、稳定才是我们真正所在乎的。乔布斯正是认识到了这点,所以他在推出几乎完全由苹果设计和订制的手机本体之外,他还悍然的建立了唯一的应用平台,使得在苹果手机上运行的每一款APP都是经过了严格审核的,都是被确认足够适应于苹果手机的才会被放出来。
当然成功的案例背后也有一定的缺陷,苹果商店的这种严格限制其实从某种意义上也限制 了其平台上web app的发展。与此相反的是,完全开源的安卓系统上就有百花齐放的各类web app提供给人们使用。这促使了安卓平台山虽然APP的质量良莠不齐,但是善于使用和挑选APP的年轻群体其实更青睐于安卓手机,因为他能通过更丰富的app获得更多的功能实现。
4 结语
Web应用是云时代下的大势所趋,而从web app上走出来的Hybrid APP模式就是顺应技术潮流诞生的新贵,虽然目前从最终性能上不能尽如人意,是相信随着html5的不断发展,该模式肯定还可能更加优秀,其前景是很可观的。相信在未来移动端越来越强大,其范围越来越广泛的时候,WEB应用会成为唯一存活下来的技术核心。
联系方式:18066528545   029-89298792

阅读过此文章的读者,还阅读过下面的文章

  • 小程序与原生APP那个好?下面我们就来一起了解一下小程序与原生APP那个好。以下是所整理的小程序与原生App的内容,希望对你有所帮助。

    小程序的优点:

    基于微信平台开发,享受微信自带的流量,这个优点最大
    无需安装,只要打开微信就能用,不占手机内存,体验好
    开发周期段,一般最多一个月就可以上线完成
    开发所需的资金少,所需资金是开发原生APP的一半不到
    小程序名称是唯一的,在微信的搜索里权重很高
    容易上手,只要之前有HTML+CSS+JS基础知识,写小程序基本没有大问题
    基本不需要考虑兼容性问题,只要微信可以正常运行的机器,就可以运行小程序
    发布,审核高效,基本上午发布审核,下午就审核通过,升级简单,支持灰度发布
    开发文档完善,社区活跃
    支持插件式开发,一些基本功能可以开发成插件,供多个小程序使用
    小程序的缺点:
    局限性很强(比如页面大小不能超过1M,不能打开超过5个层级的页面,样式单一,小程序的部分组件已经是成型的- 了,样式不能修改,比如幻灯片,导航)只能依赖于微信依托与微信,无法开发后台管理功能
    不利于推广,推广面窄,不能分享朋友圈,只能分享给朋友,附近小程序推广,其中附加小程序也收到微信限制
    后台调试麻烦,因为API接口必须https请求,且公网地址,也就是说后台代码必须发布到远程服务器上;当然我们可以修改host进行dns映射把远程服务器转到本地,或者开启tomcat远程调试;不管怎么说终归调试比较麻烦
    前台测试有诸多坑,最头疼莫过于模拟器与真机显示不一致
    js引用只能使用绝对路径,不能操作DOM
    原生App优点:
    原生的相应速度快
    对于有无网络操作时,譬如离线操作基本选用原生开发
    需要调用系统硬件的功能(摄像头,拨号,短信蓝牙…)
    在无网络或者弱网情况下体验好
    原生App缺点:
    开发周期长,开发成本高,需要下载
  • 小程序和Vue写法的区别?下面我们就来一起了解一下小程序和Vue写法的区别。以下是我所整理的小程序和Vue写法的区别,希望对你有所帮助。

    遍历的时候:

    • 小程序wx:for=“list”,
    • 而Vue是v-for=“item in list”

    调用data模型(赋值)的时候:

    • 小程序:this.data.item // 调用,

    • 小程序:this.setDate({item:1})//赋值

    • Vue:this.item //调用,

    • Vue:this.item=1 //赋值

  • 小程序调用后台接口遇到那些问题?下面我们就来一起了解一下小程序调用后台接口遇到那些问题。以下是所整理的小程序调用后台接口遇到的问题,希望对你有所帮助。

    数据的大小限制,超过范围会直接导致整个小程序崩溃,除非重启小程序

    小程序不可以直接渲染文章内容这类型的html文本,显示需要借助插件
    注:插件渲染会导致页面加载变慢,建议在后台对文章内容的html进行过滤,后台直接处理批量替换p标签div标签为view标签,然后其他的标签让插件来做
  • 分析微信小程序的优劣势?下面我们就来一起简单的了解一下微信小程序的优劣势。下面是所整理的微信小程序的优劣势,希望对你有所帮助。

    优势:

    容易上手,基础组件库比较全,基本不需要考虑兼容问题
    开发文档比较完善,开发社区比较活跃,支持插件式开发
    良好的用户体验,无需下载,通过搜索和扫一扫就可以打开,打开速度快,安卓上可以添加到桌面,与原生APP差不多
    开发成本比APP要低
    为用户提供良好的保障(小程序发布,严格是审查流程)

    劣势:
    限制较多,页面大小不能超过1M,不能打开超过5个层级的页面
    样式单一,部分组件已经是成型的,样式不可修改,例如:幻灯片,导航
    推广面窄,不能分享朋友圈,只能通过分享给朋友,附加小程序推广
    依托与微信,无法开发后台管理功能
    后台调试麻烦,因为api接口必须https请求且公网地址
    真机测试,个别安卓和苹果表现迥异,例如安卓的定位功能加载很慢

  • 简单描述下微信小程序的 相关文件类型。下面我们就来一起了解一下微信小程序的 相关文件类型。以下是所整理的微信小程序的 相关文件类型,希望对你有所帮助。

    wxml 模板文件,是框架设计的一套标签预言,结合基础组件,事件系统,可以构建出页面的结构

    wxss 样式文件,是一套样式语言,用于描述WXML的组件样式
    js脚本逻辑文件。逻辑处理网络请求
    json配置文件,小程序设置,如页面注册,页面标题及tabBar
    app.json 整个小程序的全局配置,包括:
    pages:\[所有页面路径]
    网络设置(网络超时事件)
    页面表现(页面注册)
    window:(背景色,导航样式,默认标题)
    底部tab等
    app.js 监听并处理小程序的生命周期函数,声明全局变量等
    app.wxss 全局配置的样式文件

  • 请谈谈原生开发小程序,wepy,mpvue的对比?下面我们就来一起了解一下原生开发小程序,wepy,mpvue的对比。个人认为,如果是新项目,且没有旧的 h5 项目迁移,则考虑用小程序原生开发,好处是相比于第三方框架,坑少。

    而如果有 老的 h5 项目是 vue 开发 或者 也有 h5 项目也需要小程序开发,则比较适合 wepy 或者 mpvue 来做迁移或者开发,近期看wepy几乎不更新了,所以推荐美团的mpvue。
    而如果如果团队前端强大,自己做一套框架也没问题。

029-86195145 180 6652 8545 西安嘉瑞德网络科技公司
工作时间:周一到周六 8:30-18:30
邮箱:2528823962@qq.com
QQ:2528823962
地址:陕西省西安市未央元朔路明丰伯马都A座10820室
  • 微信小程序制作微信二维码
    扫码咨询
Copyright © 2015 西安嘉瑞德网络科技有限公司 陕ICP备17015187号-1