TAG ⋅ iOS

  • Total
  • 1000+
话题聚合
  • iOS原生 VS Flutter评测

    iOS原生 VS Flutter评测

    本人之前分别尝试用iOS原生和Flutter写了同一个小应用, 一个空气质量查询App, 名字叫Aireport, 目前已经分别上架了App Store.Aireport(iOS原生)Aireport Flutter(Flutter版)Aireport原本是我自己在用, 但是在初步学习了Flutter后我决定用Flutter最大限度的去模仿iOS原生版的应用, 以评估Flutter是否有能力做到以假乱真的地步. 我们在上一篇文章中已经探讨了Flutter在开发中可能遇到的问题, 这篇文章我们将着重放在两者用户在实际体验中的差距.1.安装包大小安装包大小决定了用户等待下载的时间和可能会耗费的流量, 即便是即将迈入5G时代的今天, 我们依然需要尽量优化应用安装的大小.Flutter应用安装包和安装后容量iOS原生应用安装包和安装后容量虽然Flutter的结果我多少能够猜到, 但安装包9倍, 磁盘占用4倍的差距还是让我感到失望, 何况如果我使用OC开发的话安装包还能进一步缩小(WWDC有可能将swift设为稳定版嵌入iOS系统内核, 届时swift版将有望自动瘦身).由于项目很小就百行代码, 因此这30MB的空间占用基本就是Flutter的SDK容量.30MB的空间对于一款App来说已经是一个不小的数字, 而且应用之间不能共享SDK, 有几个Flutter应用就会有几个Flutter SDK. 这让技术团队在选择开发框架时不得不着重考虑一下今后App的容量问题.2.启动速度上面的应用容量除了影响磁盘占用外, 对启动速度也会有影响. 我在iPhone X上实测了一下, iOS原生应用的冷启动速度大概是在0.4秒左右, 而Flutter的冷启动速度在1.5秒左右.毫无意外iOS这一局又占上风. Flutter的启动过程首先会去跑完完整的iOS原生应用的所有流程直至第一个ViewController实例化后,再由VC去调用加载Flutter SDK, 初始化Flutter的运行时环境. 也就是说Flutter应用的启动时间=iOS原生应用的启动时间+Flutter环境的启动时间. 用户对于应用的容量占用几乎很难察觉, 但是应用的启动时间对用户体验的影响绝对是致命的(虽然现在的启屏广告已经完全不考虑用户体验了). 在这一点上不知道往后Google团队还有没有优化的空间.3.内存占用内存占用一直是移动开发中的一个优化重点.不过目前来看Release版的Flutter在内存占用这一块也没有任何优势, SDK拖累是一方面, 单个页面内存占用也比原生多一倍.注意, 我们知道Flutter在Build版本中的性能和Release是不一样的, 同一个应用, Build版的内存占用在100M左右, 为了热加载我也是忍了.内存占用不仅影响着应用性能、电池损耗、 程序稳定性, 最重要但是, 内存占用越大, 被系统干掉后台的可能性就越大. 我自己的使用体验来看, iOS原生的Aireport基本上大部分时间都处于休眠状态, 而Flutter会在关闭不久后直接被系统干掉.4.流畅度从框架一出现,60FPS似乎始终贯穿于各大Flutter的介绍和分析文章中, 这让我们对Flutter的流畅度非常期待.然而:上面是iOS原生App的帧率, 下面是Flutter的帧率, 很明显这是一个尴尬的结果.Flutter应用在运行过程中频繁出现了红色的警告, 这表明应用在这段时间没没有以60帧的速度完美渲染出页面.这种帧率的差距也体现在了实际使用中. 无论是页面的切换, 还是ListView的滚动, Flutter都仅仅能达到还算流畅的程度, 但明显还达不到iOS原生60帧的丝般顺滑. 当然, 目前的Flutter还处在Beta版, 而且我个人认为, 相对于安装包大小和启动速度, 运行时的流畅度更容易进行优化. 我相信Flutter将在之后的版本中进一步优化应用的流畅度, 达到与原生媲美的程度.5.iOS特性支持iOS应用开发受益于强大的iOS系统和丰富的生态体系, 天生就具有大量实用且不可替代的特性, 例如Bitcode能够在云端自动优化我们App的代码, 原生应用默认就支持增量更新、后台应用刷新等等.很显然Apple赋予iOS应用的这些种种特性与Flutter应用是无缘的, 如果Flutter能够支持热更新的化那么其可用价值就高了许多. 但目前实现起来还有诸多问题, 包括部署、性能问题, 以及苹果对于热更新的谨慎态度.综合了目前Flutter在开发中的体验以及和原生应用的比较, 我目前对Flutter的评估结果是: 再等等.Flutter的确提供了一种不同于目前其他跨平台开发框架的思路, 也极有可能成为未来跨平台开发的标杆. 如果你是个人开发, 我还是建议你学习一下Flutter, 它的Dart语言、Wiget化、数据绑定、单向数据流等等现代特性值得你去了解. 同时对于无法同时掌握多个移动开发平台的小伙伴而言, 使用Flutter也是一种成本较为低廉的方法. 但是对于公司而言, Flutter还无法完全投入生产环境, 而且初期Flutter的开发成本未必会低于原生平台.目前Fuchsia的开发进度还不得而知, Flutter也还处在Beta3阶段. 相信等Fuchsia正式发布的时候才是检验Flutter正在实力的时候.。
  • 苹果:iOS 10推出前iOS 9设备装机率已达88%

    苹果:iOS 10推出前iOS 9设备装机率已达88%

    今日iOS 10正式开始推送更新,在一年前iOS 9刚发布时其前一代系统iOS 8的移动设备装机率达到了87%...不妨看看现在所有iOS设备各系统版本装机率分布,据苹果开发者网站最新统计数据,截至昨日iOS 9.x系统在所有iOS设备中的装机率达到了88%,iOS 8装机率降到了仅9%,而还有3%的激活iOS设备在使用更早的iOS系统...升级iOS 10正式版设备集体变砖:苹果终于回应2016-09-14 08:05。
  • The Complete iOS Bundle iOS 开发课程 $59 约 ¥362

    The Complete iOS Bundle iOS 开发课程 $59 约 ¥362

    The Complete iOS Bundle 是 iOS 开发培训网站 bitfountain.io 在感恩节期间推出的一个课程包,里面包含了 The Complete iOS 8 Course with Swift、The Complete Design Course with Sketch、The Complete iOS 7 Course 以及 The Complete iOS Games Course,可以说是由设计到代码都有教授,而且是包含了 iOS 7 以及 iOS 8...The Complete iOS Design Course with Sketch:http://bitfountain.io/course/ios-design/...The Complete iOS 8 Course with Swift:http://bitfountain.io/course/complete-ios8/。
  • 已更新支持iOS 6的越狱插件

    已更新支持iOS 6的越狱插件

    虽然iOS 6越狱未出,但是已有不少著名的越狱插件更新支持iOS 6,我们看看目前已有多少款热门的越狱插件支持iOS 6了...在此之前,我们可以将关注从越狱工具转向越狱插件,看看目前已有多少款热门的越狱插件支持iOS 6了...1. SBSettings (一款万能的开关插件,不过iOS 6使用反馈还有一些问题)2. Activator (手势插件,iOS 6使用反馈还有一些问题)3. SwipeSelection(可以在键盘移动输入光标)4. iFile(越狱用户必备的文件管理器)5. 3G Unrestrictor 5(让需要Wi-Fi的软件,用机器的3G运行,例如:facetime)6. TetherMe(个人热点APN编辑器)7. X Dashboard(将部件小窗口添加到iOS主屏幕)8. OmniStat for NotificationCenter(显示系统信息和部分开关的推送中心插件)9. NCSettings (迷你版SBSettings)10. WinterBoard11. DreamBoard12. Barrel(多种3D翻页效果)13. Zephyr(iPhone 多任务手势插件)14. Safari download enabler(系统自带Safari浏览器下载功能插件)15. Browser Changer(修改系统默认浏览器为第三方浏览器)16. BrowseInApp (应用内置浏览器)17. Torch(极简的锁屏打开闪光灯插件)18. Attacher PRO (iMessage增强插件,可接收多种格式的附件)19. AccountChanger(让App Store账户切换更轻松)20. Receiveany和Sendany(让iMessage传递和接收文件)21. ColoredKnob(修改滑动解锁的滑块样式和颜色)22. Bridge(可以不借助itunes就把歌曲导入系统自带的“音乐”中)23. WeeSearch(可自行新增搜寻的页面,如百度,搜狗等等)24. CurrencyConverter(在通知中心添加162国货币汇率计算器)25. Plugication(用户将耳机插入设备中之后它就能够让音乐重新播放)26. AppList(让Cydia扫描你已安装的应用程序)27. OverBoard(快速将您所有桌面以缩略图形式显示到一页)28. DispalyRecorder(屏幕录制工具)29. PkgBackup(把你的Cydia插件及Source全部备份回來)30. Nitrous(极赞的iOS 网页性能优化插件)31. SBRotator (让iPhone的主屏幕旋转,部分iOS用户表示已兼容,但也有用户表示不可兼容)32. Five Icon Dock (让Dock能添加5个图标)33. LockLyrics(在锁屏显示歌词)34. PictoKeyboard (给你的iOS设备添加符号键盘)35. Lorem (滑动去除通知栏上的新通知)36. BytaFont (替换数字和英文字体)37. AnimateAll(让锁屏、通知中心和桌面播放动画)  其他一些热门插件,比如biteSMS等,尚未支持iOS 6,但已在测试阶段,相信到iOS 6越狱到来之时,更多我们喜爱的越狱插件都会纷纷更新支持iOS 6。
  • iOS 6与前5个版本对比 你来说哪个更好?

    iOS 6与前5个版本对比 你来说哪个更好?

    iPhone OS 3.0  2009年3月17日苹果在iPhone 3.0 Software Sneak Peak上宣布了这个版本,称它为为开发者带来了1000多个新的API,100多个新的用户界面更新,以下13个获得重点介绍:-程序内购买-点对点连接-配件接入-Maps API-通知推送-剪切、复制、粘贴-横屏模式-MMS-语音备忘录应用-日历增强-股票完善-Spotlight搜索   在6月8日的WWDC大会上,iPhone 3GS添加了一些新的专属于硬件设备的特性:-语音录音-语音控制  最后发布的iPhone OS 3.1(iPod touch 3G)和iPhone OS 3.2(iPad)还添加了新的特性...iPhone OS 4.0/iOS 4   2010年4月8日的Preview会上iPhone OS 4.0第一次与我们见面,苹果介绍它为开发者带来1500个新的API,100多的新的用户级特性,以下7个新特性为主要:-多任务-Folders + Home screen壁纸-邮件增强-iBooks for iPhone-企业增强-游戏中心-iAd   2010年6月7日WWDC大会上苹果将iPhone OS 4.0重名为iOS 4.0,并添加了多项专属iPhone 4的特性:-720p视频和摄像增强-FaceTime  发布后,苹果在发布iOS 4.1(iPod touch 4G)、iOS 4.2 for iPhone和iOS 4.3 for iPad时也添加了新的特性...iOS 6 (预览版)   今年的WWDC大会上苹果向我们介绍了iOS 6,具体的API数目并没有介绍,但是有200多项新的特性,以下10项被特别介绍:-苹果3D地图-Siri增强-整合Facebook-Shared Photo Streams-使用蜂窝网络进行FaceTime-照片增强-邮件增强-Safari增强-可访问性增强   在iOS 6中明显没有App Store级新特性,但是今年的这些新特性表明苹果有了 不同的侧重点-继续Siri搜索-巩固iOS定位数据和地图服务-将社交共享服务“外包”给Facebook和Twitter-准备进军移动支付服务-提高iOS对亚洲市场的支持  目前我们还只是接触到iOS 6的预览版本。
  • 苹果iOS 12安装率已达到70% 高于iOS 11同期

    苹果iOS 12安装率已达到70% 高于iOS 11同期

    【TechWeb】12月5日消息,据国外媒体报道,苹果方面的数据显示,其最新的移动操作系统iOS 12在全部iOS设备中的安装率已经达到了70%,高于iOS 11同期的安装率...苹果目前已在官网公布了iOS 12安装率的相关数据,其在开发者页面上公布的数据显示,截至12月3日,近四年所卖出的iOS设备已有72%升级了iOS 12,iOS 11降到了21%,其余7%的设备使用的则是更早推出的iOS操作系统...随着时间推移,iOS 12的安装率可能继续提升,苹果今年4月份公布的数据显示,iOS 11在所支持苹果设备中的安装率达到了76%,外媒在报道中表示,就目前的安装率而言,iOS 12安装率达到76%,可能会较iOS 11快一个月。
  • iOS 9.1首个Public Beta已开放下载

    iOS 9.1首个Public Beta已开放下载

    在正式版上线之前,苹果于今天发布了iOS 9.1的首个Public Beta版本,这也是首个支持Unicode 8的苹果系统,意味着用户可使用例如狮子、墨西哥卷饼(Taco)和念珠等表情,已经为iOS和OS X注册苹果Beta Software项目的成员都能下载该公测版本...市场分析公司Appsee在追踪设备操作系统和平板分辨率之间关系之后,认为iOS 9.1系统将会默认安装在iPad Pro产品上...推测iOS 9.1系统将会引入对更大屏幕、Apple Pencil、类似于Smart Keyboar。
  • 苹果已在内测iOS7.0.1/iOS7.0.2/iOS7.1

    苹果已在内测iOS7.0.1/iOS7.0.2/iOS7.1

    据外媒9to5mac报道,苹果内部员工已经开始使用iOS 7.0.1,iOS 7.0.2和iOS 7.1这些新的操作系统访问网站了...这些新的操作系统普遍来源于苹果总部以及附近的地方,可以推断出是苹果在内测使用这些新的版本...苹果在发布正式版不久之后就会进行bug修复,所以看到iOS 7.0.1和iOS 7.0.2很正常,至于iOS 7.1,9to5mac称这很有可能是为了新款iPad产品准备的。
  • 通道关闭 降级无门:苹果停止部分设备的iOS 9.3验证

    通道关闭 降级无门:苹果停止部分设备的iOS 9.3验证

    熟悉 iOS 的用户都知道,每当正式版发布一段时间后,苹果都会关闭先前版本的激活通道,此后用户将只能停留在当前版本而无法通过常规方式降级...正如用户们预料的一样,在美国当地时间周一,苹果已经停止了 iPhone、iPod 和 iPad 的 iOS 9.3 系统验证...至于越狱,目前最新的越狱工具仅支持到 iOS 9.1 系统,而且由于 iOS 9.1 早已停止验证,能够体验到最新越狱的用户其实并不多。

相关荟聚号

为你定制的专属美丽

相关链接

为你发现的专属好站