来源:趣玩责编:网络时间:2024-12-03 14:58:04
不知何故,我的跨平台网络应用程序实际上更稳定。我认为我在开发原生iOS 应用程序上浪费了很多时间。
这一切都始于我想制作一个可以帮助父母安排孩子上学的应用程序。
我是3 个孩子的父亲。我在工作中有很多强大的工具来帮助我组织和管理我的团队,但在家里我没有工具来帮助我送孩子上学,而且我很恼火,因为我每次都会把事情弄得一团糟。所以我想,为什么不为孩子们列一个待办事项清单呢?我可以让体验感觉像一场游戏,甚至嵌入游戏化设计元素来帮助孩子们保持专注和参与。
所以我制定了“学校早晨例行公事”,效果非常好。现在,孩子们准备上学的时间减少了30%,我们唠叨的时间也减少了95%(是的,我算过)。
但在开发过程中,我犯了一个很大的错误。我在开发原生iOS 应用程序上浪费了很多时间。
2022年,启动移动App项目最大的问题是有很多完全不同的技术方向供你选择:原生应用、跨平台Web应用、React Native、Flutter、渐进式Web应用、Xamarin、等等。
默认的解决方案是编写三次代码,一次用于iOS,一次用于Android,一次用于Web。
然而,对于我们软件开发人员来说,多次编写相同的代码是非常令人不安和不自然的。因此,多年来我们尝试了数十种方法来试图实现“一次编写,随处运行”,但它们都涉及令人讨厌的权衡。
如果您选择跨平台的Web应用程序,则只需使用常见的Web技术编写代码,然后将其部署到多个平台。只有少量涉及iOS和Android功能的原生代码无法在浏览器中运行。
但你需要在性能方面做出权衡。
2014 年,我尝试使用Ionic Framework 构建一个不同的应用程序,我发现了和大多数人一样的问题:Android 和iOS 运行的Web 应用程序很糟糕。
它们反应缓慢、行为不可预测、口吃、出现和消失,触摸屏交互体验很奇怪。
因此,我很早就决定School Morning Routine 不应该是一个跨平台的网络应用程序。该应用程序将大量使用游戏风格的动画,并且由于它是针对儿童的,所以它需要良好的触摸屏交互体验。
所以,我决定开发一个本机应用程序。本机应用程序通常具有最低的风险和最高的质量。当然,同一个应用程序做两次并不是一件好事,但毕竟是一个小应用程序,我相信努力比魔法更重要。
首先,我制作了一个漂亮的iOS 应用程序,并与测试用户一起对其进行了多次迭代。然后我将其发布在App Store上并得到了一些用户反馈。除了收到五星级的评论外,还有来自用户的电子邮件。用户在电子邮件中写道,该应用程序如何改变了他们的生活和工作。
我对自己取得的成就感到很满意,并决定开发Web 应用程序将是我的下一步。我使用了React,加上CSS 动画、Framer 和一些Lottie 动画。开发完成后,我花了一个下午仔细调整性能,只是为了确保我没有进行不必要的渲染。
那时,我的孩子们已经使用原生iOS 版本的School Morning Routine 几个星期了。为了测试这个新的跨平台网络版本,我将其安装在我孩子的iPad 上。他们可以用它来测试和准备上学。
有趣的是,我忘记告诉他们该应用程序已从本机更改为网络应用程序,但第二天早上他们没有注意到。
他们没有注意到。
他们甚至没有注意到。
如果你没有孩子,你可能不会意识到这一点。你知道,孩子们抱怨一切。真的,一切。但是,当我第二天问他们是否注意到任何差异时,他们不仅没有抱怨网络应用程序,还感谢我,因为我在网络应用程序中使用了不同的动画,其中两个人更喜欢它。
他们是对的,新版本的动画流畅如黄油,触摸屏交互体验更加精准。
我很震惊。也许这只是iPad的性能问题?所以,我出去买了一台低端Android平板电脑。我选择了一款功能配置较差的。即使打开设置屏幕也不顺畅。但这也是一项重要的测试,因为对于许多人来说,这是他们唯一可以使用的设备。
我加载了学校早晨例程,你猜怎么着,效果很好。它不是很好,但它只是一款低端Android 平板电脑,所以你还能指望什么呢?
因此,我走到办公桌前,删除了本机iOS 应用程序,并决定使用离子电容器。
现在,我想开发一个可以在三个平台上运行的应用程序。我的构建脚本中有3 个命令,用于部署到iOS、Android 或AWS 上的网站。
这太酷了!
从那时起,我在Android、iOS 和Web 上发布了School Morning Routine。我的iOS 用户不仅没有注意到,错误的数量也减少了。有一个与渲染表格视图相关的麻烦错误,仅发生在iOS 14 上,并且它打印的堆栈跟踪信息毫无用处……但在我的跨平台Web 应用程序中,这个问题不存在。
跨平台网络应用程序发布后出现直线
不知何故,我的跨平台网络应用程序实际上更加稳定!
一个到处都有动画的儿童应用程序怎么可能实际上是一个网络应用程序?
事实证明,到了2022 年,对于许多应用程序来说,一次编写、随处运行的梦想终于要实现了。
对于跨平台Web 应用程序,成本和收益之间的权衡始终是性能较差、开发时间较短。对于2014 年的大多数应用程序来说,这是一个糟糕的权衡。但过去8年发生了很多变化。浏览器性能正在稳步提高:
Web 应用程序开发工具的多样性和复杂性也在不断增加。现在,我们有了React 和TypeScript。 IDE 和Chrome 调试器比本机应用程序开发工具领先数光年。有许多创新的设计模式和开源库可用于实现您能想到的任何目标。 JavaScript 的世界比Swift 或Kotlin 的世界更加动态和丰富多彩。
2022年,成本与收益之间的权衡发生了变化。
我一直是Ionic 的忠实粉丝。他们几年前创立了一家公司,是跨平台Web 应用程序的早期倡导者。我喜欢他们所做的工作,但我总是为他们感到难过。他们似乎押错了赌注,支撑跨平台Web 应用程序的技术无法支持他们的梦想。
但今天,我认为该技术终于与Ionic 的愿景保持一致。
也许几年前您热衷于构建像School Morning Routine 这样的跨平台Web 应用程序。确实没有什么问题啊!真的很美,真的!我已经在Google Play Store 和Apple App Store 上发布了该应用程序,您甚至可以在线使用它。
不仅仅是我,Josh Wardle 去年年底开发了Wordle,这款手机游戏现在正在席卷全球。正如我在另一篇文章(https://uxdesign.cc/wordle-is-a-masterclass-in-product-design-simplicity-52de1ba06d85) 中所写,它甚至没有本机版本,只是使用Web 组件Web 应用程序开发的渐进版本。
当我开始制定学校早晨例行程序时,我多么希望能读到这样的文章。过去,我忽略了跨平台网络应用程序,因为我认为它们太慢了,但事实证明它们与我的应用程序完美匹配。
浏览器和网络技术每年都变得越来越强大,并且每年可以跨平台开发更多类型的应用程序。
那么,在开始下一个项目之前,为什么不考虑跨平台Web 应用程序呢?也许它们确实不适合您的项目,但也许,像我一样,您会发现它们可以“编写一次,随处运行”。我觉得这非常出乎意料。
拳击游戏还是有很多的玩家都是非常的喜欢尝试的,很是刺激,并且也是能够发泄心中的不快吧,现在市面上是有很多的类型的拳击的游戏,这些游戏一般都是一些格斗的游戏,其实是非常的有趣,也是相当的刺激的,游戏中是有一些不同的场景都是能够去进行体验的,我们也是能够去刺激的进行对战的,小编现在就是收集了一些有意思的拳击游戏,相信你们一定会喜欢的。
趣味烧脑游戏一般比较适合人们在无聊的时候打发时间,同时其操作以及游戏规则上都比较简单,让大家不会有上手很难的感受,可以轻轻松松就体验这个游戏的独特乐趣,并且随时下线都不用担心坑队友,同时也可以和好友一起来玩法,有多种挑战模式,可以根据自己的真实水平以及喜好来选择不同的挑战模式参与,收获到不一样的游戏趣味体验!
太空冒险类游戏顾名思义就是以外太空为背景打造的一类游戏,玩家在这种类型的游戏当中可以体验到非常独特有意思的太空冒险旅程,玩法内容的设计上充满了想象力,所有的场景都是人们在日常生活中从来没有见过的,而你可以驾驶各种各样的战舰展开无比激烈的星际对决,同时可以邀请身边的朋友一起参与到冒险当中,竞技对决的过程中十分注重
这里面为大家收集了一系列比较好玩的女生游戏,并且将会不断的更新,每个玩家都可以根据自己的喜好来选择适合自己的游戏打发时间,每款游戏都设置了新手教程,这样方便大家更加轻松的上手,不同类型的游戏可以让你领略到不一样的游戏乐趣,并且在这里随时都可以尝试其他的玩法,让你一次性就可以玩个够,同时还可以将这里的游戏乐趣分享
我用跨平台Web 应用程序替换了本机iOS 应用程序,但没有人注意到
合金弹头觉醒联机功能解析
梦幻西游:古董拍卖玩法,一锤入天堂,一锤入地狱!这次选手们表现如何?
DNF阿修罗90最强刷图加点模板
梦幻西游资深司机分享各种捉鬼细节,助你额外增加25%收入
真女神转生5:复仇 - 伊登支线任务全流程攻略
鸣潮测试资格报名指南
梦幻西游:慈悲救鬼秘诀,让你一周下5盘棋
原神云端游玩攻略
《鸣潮》傲寒钟采集路线图
用户评论
这也太厉害了吧!完全没想到web应用能做到比原生的iOS应用还好。
有18位网友表示赞同!
我以前还以为web应用的性能和体验永远赶不上原生app的...
有9位网友表示赞同!
作者真的太厉害了!这个跨平台 web 应用简直是福音啊,特别是对我们开发人员来说
有10位网友表示赞同!
现在谁还没个网站或者web应用程序呢?越来越多人开始用web应用替换原生的APP了!
有13位网友表示赞同!
这技术实在让人惊叹!感觉web开发越来越强大啦。
有17位网友表示赞同!
我也想试一下这个web应用,看看它具体做到了什么效果
有16位网友表示赞同!
以前iOS的应用确实很好用,但如果web应用能做到同等的体验,那真是太好了!
有17位网友表示赞同!
分享一下这个作者的文章吧!让更多人知道这个厉害的技术!
有11位网友表示赞同!
现在跨平台开发越来越方便了,以后不用专门开发不同平台的APP了
有8位网友表示赞同!
我好奇这个web应用具体的界面设计,和原生app相比有什么不一样?
有13位网友表示赞同!
这真是个进步!让用户体验更加多样化!
有19位网友表示赞同!
作者真的很厉害,居然没人发现是web应用,证明功能性真的很好呀!
有6位网友表示赞同!
难道说未来原生APP都会被web应用程序取代吗?
有8位网友表示赞同!
我猜这个web应用用了很多先进的技术来实现这样的效果,真想深入了解一下!
有5位网友表示赞同!
这种跨平台的开发方式真是太棒了,省时省力还能兼顾不同用户的需求!
有11位网友表示赞同!
如果能用同样的技术把其他类型的应用也做成web应用,那将是完美的!
有10位网友表示赞同!
这个案例真的是开启了一个新的时代,期待更多开发者加入进来!
有6位网友表示赞同!
以后开发app的时候可以考虑先试试web app,说不定就能实现跨平台的目标啊
有16位网友表示赞同!
越来越觉得web application真是个宝藏了,功能强大而且方便使用!
有15位网友表示赞同!
这篇文章看了真让人兴奋!未来技术发展可期!
有12位网友表示赞同!