微信内置浏览器对于html5的支持
微信内置浏览器对于html5的支持
来源: 作者: 热度:102 日期:14-06-10, 09:10 AM
我在做针对微信的HTML5应用, 目前遇到的几个问题是
一. 安卓版微信直接调用系统浏览器内核, iOS则是调用safari, 所以要使用新特性, 只能升级系统了, 对于很多老系统, 新的特性是没法用的, 就连基本的canvas, toDataURL 在4.4 以下是不能导出 image/jpeg 格式的, 直接导出的 png格式, 往往非常大, 好几百K,
二. localStorage等, 是可以用, 但是据说有微信退出之后就被清空的问题.
三. 据 Sencha 项目的调研显示, 目前最适合 HTML5 项目的是 iOS 平台,我亲测, 确实如此, 比如一个基本的css3 transition转换做的图片轮播, iOS上和原生应用基本没啥区别, 安卓上则是卡的出奇, 而且安卓在进行一些复杂计算的时候,往往很慢, 比如涉及canvas计算的操作
四. 不好调试, 安卓上的调试, 我是装chrome beta 32版 app, 然后结合桌面chrome通过 USB 开启远程调试, 但是由于两者的 webkit 版本不同, 调试的结果往往不能作为最终参考依据. 说实话有时候有问题只能靠猜了(看你基本功扎实与否, 对css盒模型理解的彻底与否, 对js 的开发理解的深入与否,都能很大程度上提升你"猜对"的几率, 当然, 你最好祈祷你的人品值是够用的, 否则一弄一上午时间真的不算什么), 别忘了 try catch 和 alert, 你会发现你现在真的是爱上它们了... 安卓上的另一种调试方式是通过 ADB 过滤控制台日志的方式, 可以追踪程序错误, 这个有些复杂,我还没试过. iOS 也是可以通过 safari进行远程调试的, 前提是你需要在MAC上进行操作, 我没有MAC, 没试过.
五. 对于开发, 优雅降级与渐进增强将会是个很好的理念, 你 可以 try { 先进API} catch(e) { 老旧的实现方式} 这种方式, 确保在别人刷机到新ROM之后就还能用旧版实现方式,(事实上我没有搞, 真是复杂,很累了每天, 埋了颗雷, 我的4.1 在4.4将会爆掉, 别告诉我老板...)
六. 用百度目前可能还得不到很多有用的信息, 国内目前HTML5还处于炒概念的阶段, 很少有人做一些实打实的事情, 别告诉我谁用了什么API做了什么花出来了, 那些API都明摆在那里, 稍微有点编程常识的都能拿来用, 关键是一个实现, 其实是 一个API ,外加你要修复9个bug, 这种方式来完成的, 只懂那一个 API, 是不够的,现在.
七. 你的程序运行速度与你脚本和css3使用量成反比, 与网速成正比. 所以, 少用脚本, 简化逻辑, 慎用css3, 压缩图片, 代码, 等等, 这些仍然很重要.
八. 你会渐渐发现, 你进入了另一个 ie6 的世界, 移动开发基本是webkit 的天下, 比如我现在, 就没考虑过 wp, 当然, 这也是基于公司的要求来的.
九. 有的人把 HTML5 理解为几个 背景渐变的圆角阴影按钮, 如果真是这样认为的话, 那他现在就可以开始开发了, 这些基本的支持, 还是有了的.
微信内置浏览器对于html5的支持的更多相关文章
- 微信内置浏览器不支持APK附件下载的原因
由于微信的限制,应用文件在内置浏览器中下载全部被屏蔽掉,造成很多人用微信扫描二维码下载时点击下载按钮没反应,我想到的是做一个提示用户在浏览器中打开下载.其实原来很简单,就是判断当前是在微信内置浏览器中 ...
- 微信内置浏览器不支持 onclick 如何解决?(原因是因为内面中的内容或者标签大部分是动态生成的)
使用了很多onclick事件,但是在Android的微信内置浏览器中,onclick是不能被执行的. 开始的写法是: // $(".contentPic").click(funct ...
- 微信内置浏览器的JS API
/**! * 微信内置浏览器的Javascript API,功能包括: * * 1.分享到微信朋友圈 * 2.分享给微信好友 * 3.分享到腾讯微博 * 4.新的分享接口,包含朋友圈.好友.微博的分享 ...
- 微信内置浏览器WebApp开发,踩坑 · Issue #31 · maxzhang/maxzhang.github.com · GitHub
最近花6天时间完成了一个七夕的小活动,是一个简单的WebApp.由于我前期对面向微信的Web开发评估不足,导致开发过程十分艰难.写这篇文章总结下,惊醒自己未来不要再犯这样的错误. 问题: 1. 有些比 ...
- 微信内置浏览器的JsAPI(WeixinJSBridge续)[转载]
原文地址: http://www.baidufe.com/item/f07a3be0b23b4c9606bb.html 之前有写过几篇关于微信内置浏览器(WebView)中特有的Javascript ...
- 微信内置浏览器的JsAPI(WeixinJSBridge续)_Alien的笔记
微信内置浏览器的JsAPI(WeixinJSBridge续)_Alien的笔记 微信内置浏览器的JsAPI(WeixinJSBridge续)进入全屏 之前有写过几篇关于微信内置浏览器(WebView) ...
- 2017年05月10日记一次微项目投产 | 安卓版微信内置浏览器不能解析gzip压缩过的mp4视频的问题
前言 今天投产了一个小项目,一个很简单的H5,有播放视频功能,使用了videojs插件. 之前也做过数个视频播放,视频的转压都按照既定流程进行,文件放到FTP后,iphone和安卓机测试下来都没有问题 ...
- 让微信内置浏览器兼容clipboard.js 复制粘贴 ios 安卓
<!--js copy事件--><script type="text/javascript" src="/static/js/clipboard.min ...
- 微信内置浏览器的JsAPI(WeixinJSBridge续)进入全屏
微信内置浏览器的JsAPI(WeixinJSBridge续)进入全屏 之前有写过几篇关于微信内置浏览器(WebView)中特有的Javascript API(Javascript Interface) ...
随机推荐
- 使用Python生成自己的特色二维码
二维码又称二维条码,常见的二维码为QR Code,QR全称Quick Response,是一个近几年来移动设备上超流行的一种编码方式,它比传统的Bar Code条形码能存更多的信息,也能表示更多的数据 ...
- ASP制作建议留言板
<html> <head> <meta http-equiv="Content-Type" content="text/html;cha ...
- 使用python抓取汽车之家车型数据
import requests import pymysql HOSTNAME = '127.0.0.1' USERNAME = 'root' PASSWORD = 'zyndev' DATABASE ...
- IDEA打包web项目为war,通过本地Tomcat启动war
1.打包 ①idea的打包很简单,网上教程也很多,简单说下:project struct-->artifact-->+-->Web Application:Archive--> ...
- .ArrayList是如何实现的,ArrayList和LinkedList的区别?ArrayList如何实现扩容?
ArrayList比较简单,主要是通过数组来实现的 需要注意的是其初始容量是10 /** * Default initial capacity. */ private static final int ...
- (原)人体姿态识别PyraNet
转载请注明出处: https://www.cnblogs.com/darkknightzh/p/12424767.html 论文: Learning Feature Pyramids for Huma ...
- java反序列化-ysoserial-调试分析总结篇(7)
前言: CommonsCollections7外层也是一条新的构造链,外层由hashtable的readObject进入,这条构造链挺有意思,因为用到了hash碰撞 yso构造分析: 首先构造进行rc ...
- 【新功能】MaxCompoute禁止Full Scan功能开放
摘要: 2018年1月10日,MaxCompute禁止Full Scan功能开放.对于新创建的project默认情况下执行sql时,针对该project里的分区表不允许全表扫描,必须有分区条件指定需要 ...
- seo搜索优化教程13-SEO搜索引擎站点收录
为了使大家更方便的了解及学习网络营销推广.seo搜索优化,星辉科技强势推出seo搜索优化教程.此为seo教程第13课 想要用户能够在搜索引擎中通过关键词搜索到您的页面信息,首先要做的是让搜索引擎收录您 ...
- Intel优化Gen7驱动代码 Geekbench 5性能猛增
Linux下缺少大量开发.支持是会导致各种奇葩的错误的,Intel日前就提交了一个代码修复,22nm Ivybridge及Haswell处理器的GeekBench 5的性能就提升了330%. 3.3倍 ...