@
oska874 V2EX 看不到回复的是几楼……不知道你是对哪句话做的回复?
@
Xe0n0 webview 里的只能用 protocol 去劫持,因为 webview follow HTTP 协议,过期后就让缓存失效了,cache 级别的就没用了。我们的离线逻辑要求即使现在有网,缓存过期了,也不去重新加载。所以这层的只能通过 protocol
SDURLCache 在 iOS 6 上没有什么用,因为 iOS 6 本身就会缓存到闪存
SDWebImage 在用,不过是配合 UIImageView 用的
@
dreampuf Evernote 的 SDK 槽点很多啊。
开发期间曾经遇到一个 bug,有一天突然分享不出 Evernote 了。查 log 发现 Evernote 提示“标题不合法”,看了很久也没看出标题不合法在哪里。最后发现今天的新闻标题里面有个回车。然后查文档,说标题要符合正则表达式 "^[^\p{Cc}\p{Z}]([^\p{Cc}\p{Zl}\p{Zp}]{0,253}[^\p{Cc}\p{Z}])?$" 才行。当时就很无语,为什么它不能自己过滤掉非法字符呢。非要让每个开发者都实现一遍过滤。
ENML 更是这样了,规则有很多条,必须是正确的 XML,符合
http://xml.evernote.com/pub/enml2.dtd ,写一个严谨的 converter 不是容易的事,我们宁愿让用户分享纯文本,也不能让用户有一天因为一个 attribute 没过滤,突然莫名其妙分享不能。所以不如就把 html 塞给 Evernote App 或者邮件发给它的服务器,让他自己去转换,肯定能转换成功。
如果我们的内容是自己生成的,而不是用户生成的,后台渲染一段 ENML 还是比较容易的。而用户产生的内容,不能简单的过滤一下了事。
之前调研的时候看到有个 App 分享给 Evernote 的方案是直接把网页截了张图塞给 Evernote,觉得很讽刺。