iOS 5.1Web存储方式的打破会影响到Web App吗?

标签: 前沿与评论 工具与框架 iOS mobile app | 发表时间:2012-05-07 05:40 | 作者:zrpds
分享到:
出处:http://www.webapptrend.com

iOS上很多采用Web存储API来实现持久性数据存储的App,都在近期iOS升级到5.1版本后,受到了的严重影响。受到影响的App多用 PhoneGap或者其他采用WebKit API来实现数据存储的开发工具开发。比如,这一款 App看起来正受着影响:

其他的开发者表示:

“我收集的统计数据表明,用户经常因为App每次打开之后,之前的设置常常被删除,而抛弃一款App。这其实是一个相当致命的错误,应该被马上纠正。而且不要忘了,开发者纠正以后,到Apple允许新版本上架,还有段时间要等。”

准确地说,WebKit被用于存储本地数据文件到Library/Webkit中。Library/Webkit这个存储目录在过去被操作系统看做是永久的,并且备份于iCloud中。而iOS 5.1中,数据被存储于Library/Caches中,这意味着这都被当成了临时数据,并有可能被删除。W3C的候选意见,对localStorage给出的评价是( 原文点击这里):

“用户代理应该将本地存储中的数据分散开,这是基于安全性的考虑,或者在用户需要他们这么做时他们应该如此。”

一个嵌入式浏览器和传统Web浏览器并不完全一样。如果你在Webkit中用SQLite,那这将不包含在W3C HTML5 API中,因为这些API已不再提供Web SQL。

这个问题的复杂性在于,还会存在一个Bug( 详情点击这里),它导致升级App至新版本之后数据的丢失。还有其他问题存在于目前的Web App,以及应用了嵌入式UIWebView的App中。

PhoneGap在这个问题上是有一定弹性的。因为它可以调用本地API,这将在可能出现问题时继续工作。不过不好的情况是,代码会因此更针对特定平台,而破坏其跨平台性。

从Apple开发者论坛上在iOS 5.1的beta版发布期间的讨论,可以看出Apple已经意识到这个问题,但正式版发布时仍没得到解决。这给我们的感觉是,Apple似乎恼怒于众多的App(无论Web还是本地)运用Web存储来加速,而不是仅用来存储用户创建的内容。Apple觉得,这是在给iOS设备上本来就捉襟见肘的存储空间施加更大压力。

想扩大一部iPad或者iPhone的存储空间,除了花更多的钱再买一部,我们都知道别无他法。

这的确是个问题。不过你不能否认的是,Apple认为PhoneGap一类的开发工具,或者体验接近本地App的Web App,这对于Apple而言某种程度绕过了它的商业开发体系,而它绝对不鼓励这么做。Apple更喜欢的还是完全采用iOS SDK开发的App。

Apple从真正意义上的本地App受益,这导致了Apple平台常显出一定程度的排他性。而且App只能从App Store上获得,同时Apple从中抽取一定比例费用。

官方的iOS数据存储指南可以 点击这里获得。

 

文章发表于2012年4月1日。

原文作者Tim Anderson,著名IT自由记者。

原文链接:

http://www.itwriting.com/blog/5656-apple-breaks-web-storage-in-ios-5-1-does-not-care-about-web-apps.html?utm_source=html5weekly&utm_medium=email

您可能也喜欢:

Google Web App开发指南第四章:构建优秀的Web Apps

讨论:Web App是否需要专有图标

如何让你的web apps在不同分辨率的屏幕上都有完美展现

Google Native Client:是Web的前进还是倒退?
无觅

相关 [ios 5.1web web] 推荐:

iOS 5.1Web存储方式的打破会影响到Web App吗?

- - Web App Trend
iOS上很多采用Web存储API来实现持久性数据存储的App,都在近期iOS升级到5.1版本后,受到了的严重影响. 受到影响的App多用 PhoneGap或者其他采用WebKit API来实现数据存储的开发工具开发. 比如,这一款 App看起来正受着影响:. “我收集的统计数据表明,用户经常因为App每次打开之后,之前的设置常常被删除,而抛弃一款App.

iOS Web App初步

- - 新浪UED
iOS Web App开发,配合HTML5,是目前比较热门的话题. 今天,先抛开HTML5,我们来尝试在PhoneGap框架上进行简单的开发. PhoneGap是一个使用HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台. 它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry等智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能.

LibreOffice将发展Web、iOS和Android版本

- Heng Yang - cnBeta.COM
OpenOffice.org的分支项目LibreOffice的开发方The Document Foundation今天宣布将尝试在Web浏览器和iOS、Android移动设备上运行这一办公软件,预计这些产品将在2012年年底到2013年初正式发布.

iOS客户端开发与Web前端开发

- - bang's blog
不知不觉做iOS客户端开发已经半年多了,了解到iOS客户端开发与Web前端开发的一些异同,写一下. 用户角度上看,客户端升级必须让用户手动下载整个新的安装包覆盖安装,而web的升级无需用户做任何事情. 开发角度上看,如果客户端有个小bug需要紧急修复,需要修复完后打包一个完成的安装包,给一个版本号,发布给用户升级.

移动Web轮播图IOS卡顿的问题 - zjzhome

- - 博客园_首页
晚饭前,被测试吐槽说,banner轮播手动左右滑的时候会卡顿. 我一看不科学啊,大水果手机怎么会卡顿. 我一看测试手中拿的是iPod,我觉得大概是这小玩意性能不强悍,后来又拿来5S,依然会卡顿,有趣的是,两个5S,一个IOS7一个IOS8,IOS7基本没有卡顿,IOS8会卡. 我一直觉得轮播不应该会有什么问题,因为我用的是一个库 Swipe,star都有5000多了,应该比较靠谱,捎带推荐一下这个库.

使用 Dojo Mobile 为 iOS 智能终端开发 Native-like Web 应用

- jiaosq - IBM developerWorks 中国 : 文档库
随着 iOS 智能终端的流行,基于 iOS 开发 Native-like Web 应用变得越来越流行. 本文着重介绍基于 Dojo Mobile 开发 Native-like Web 应用的方法,并分享一些开发经验和技巧.

Google Inbox如何做到在Android、iOS和Web上共享70%的代码

- - Solidot
开发一个移动应用如果你想要面向尽可能广的用户,你需要为Android开发一个,iOS开发一个,Web开发一个. 为每个平台开发一个版本意味着三倍的工作量,三倍的bug处理量. 令整个事件变得更复杂的是,三个平台必须使用不同的语言开发:iOS是Objective-C/Swift、Android是 Java,而Web是JavaScript/CSS/HTML5.

[IOS]iOS App性能优化

- - 操作系统 - ITeye博客
iOS App的性能关注点. 虽然iPhone的机能越来越好,但是app的功能也越来越复杂,性能从来都是移动开发的核心关注点之一. 我们说一个app性能好,不是简单指感觉运行速度快,而应该是指应用启动快速、UI反馈响应及时、列表滚动操作流畅、内存使用合理,当然更不能随随便便Crash啦. 工程师开发应用时除了在设计上要避免性能“坑”的出现,在实际遇到“坑”时也要能很快定位原因所在.

iOS 5评测

- littlepush - Solidot
Ars Technica的评测认为iOS 5值得升级,当然它也不可避免的存在一些小问题,给用户增添些烦恼. 用户在升级前最好手动备份一下iDevice,确保所有的应用都能转移.

关于iOS 7

- - 曉生
上手使用2天,感觉ios7的方向挺对,有设计的不错的地方,比如系统功能交互的完善和动效细节. 但界面有不够完善之处,比如颜色不够统一,难以理解相机和设置为什么用那么难看的渐变灰色,控制中心太像交互原型图,更主要是功能缺乏分类,但相信这只是beta版的问题,就像ios7运行还不够流畅一样,都还需要时间去完善.