[Phonegap+Sencha Touch] 移动开发53 Cordova/Phonegap 4(或5) 多了什么?
来源:互联网 发布:sql语句高级查询 编辑:程序博客网 时间:2024/05/18 20:46
原文地址:http://blog.csdn.net/lovelyelfpop/article/details/46778687
Cordova 4(或5)其实是Cordova CLI 4(或5),即命令行工具版本是4(或5)。
截至本文发表日期,Cordova CLI最新版本5.1.1,其中的Cordova Android 最新版本是4.0.2;Cordova iOS最新版本是3.8。
详细查看http://cordova.apache.org/
对于Cordova Android 4.0来说,最大的改变有:
一、Cordova Android 4.0中,自动化构建工具从ant变成了gradle
这是为了配合google官方的开发工具Android studio(原本的eclipse+ADT不再更新)
二、Cordova插件cordova-plugin-whitelist(访问/请求 白名单插件)
此插件必须!!
插件具体内容请看:https://github.com/apache/cordova-plugin-whitelist
白名单的配置有以下几个方面:
1、Navigation Whitelist(webview中页面跳转白名单)
配置方式:config.xml 中 配置 <allow-navigation> 节点
如<allow-navigation href="http://*" />,即允许跳转到任意http协议的页面
此节点对于单页面webapp用不到
2、Intent Whitelist (意图白名单)
这里的意图,也就是从外部浏览器打开,或者<a href="tel:10086">打电话</a>,<a href="sms:10086">发短信</a>。
配置方式:config.xml 中 配置 <allow-intent> 节点
如<allow-intent href="*" />表示允许任何意图
3、Network Request Whitelist(http请求白名单)
也就是ajax和jsonp请求了
配置方式:config.xml 中 配置 <access> 节点,
如<access origin="*" />即允许任何网址的http请求
4、Content Security Policy
W3C的Content Security Policy,简称CSP。顾名思义,这个规范与内容安全有关,主要是用来定义页面可以加载哪些资源,减少XSS的发生。
虽然脚本资源是最明显的安全隐患,但是CSP还提供了一套丰富的指令集,允许页面控制加载各种类型的资源,例如如下的类型:
- content-src:限制连接的类型(例如XHR、WebSockets和EventSource)
- font-src:控制网络字体的来源。例如可以通过font-src https://themes.googleusercontent.com来使用Google的网络字体。
- frame-src:列出了可以嵌入的frame的来源。例如frame-src https://youtube.com只允许嵌入YouTube的视频。。
- img-src:定义了可加载图像的来源。
- media-src:限制视频和音频的来源。
- object-src:限制Flash和其他插件的来源。
- style-src:类似于Script-src,只是作用于css文件。
目前Chrome浏览器已经遵循了这个CSP理念。
cordova项目中,需要在html文件的head内添加 如下的<meta>标签:
<meta http-equiv="Content-Security-Policy" content="default-src * data:; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' *">
上面的这个CSP策略,已经允许了基本上所有的请求了,一般只要复制到你的html文件中就可以使用了。
注意:截至本文发表日期,Cordova iOS的版本为3.8,而WhiteList插件最新版1.1.0只支持Cordova iOS 4.0+。
所以对于Cordova开发ios的,暂且使用WhiteList v1.0.0版本。
三、Cordova Android 4.0支持了pluggable WebView
也就是可以以插件的形式更换app的webview的内核。
有名的是CrossWalk这个内核的webview,基于Chromium。
详细请看:https://crosswalk-project.org/documentation/cordova/cordova_4.html
cordova crosswalk插件的地址:https://github.com/crosswalk-project/cordova-plugin-crosswalk-webview
CrossWalk可以解决android参差不齐的生态环境下,原生webview的表现不一致的问题。仅支持Android 4.0以上系统。
欢迎加入Sencha Touch + Phonegap交流群
1群:194182999 (满)
2群:419834979
共同学习交流(博主QQ:479858761)
0 0
- [Phonegap+Sencha Touch] 移动开发53 Cordova/Phonegap 4(或5) 多了什么?
- [Phonegap+Sencha Touch] 移动开发5、Sencha touch结合Phonegap/Cordova使用
- [Phonegap+Sencha Touch] 移动开发64 Phonegap/Cordova 插件开发
- [Phonegap+Sencha Touch] 移动开发2、PhoneGap/Cordova初步使用
- [Phonegap+Sencha Touch] 移动开发4 Cordova/Phonegap应用调试方法汇总
- [Phonegap+Sencha Touch] 移动开发4、Sencha Touch初步使用
- [Phonegap+Sencha Touch] 移动开发4、Sencha Touch初步使用
- [Phonegap+Sencha Touch] 移动开发3、使用Weinre调试PhoneGap/Cordova应用
- [Phonegap+Sencha Touch] 移动开发36 Phonegap/Cordova项目的图标和启动画面(splashscreen)配置
- [Phonegap+Sencha Touch] 移动开发62 使用GapDebug调试Phonegap/Cordova应用
- [Phonegap+Sencha Touch] 移动开发63 PhoneGap和Cordova的区别
- [Phonegap+Sencha Touch] 移动开发57 Cordova 5生成的安卓apk,versionCode错误(末尾多了个0)的解决办法
- [Phonegap+Sencha Touch] 移动开发69 Phonegap/Cordova、Sencha touch的一些官方文档、博客、说明地址
- [Phonegap+Sencha Touch] 移动开发5、Sencha touch结合Phonegap使用
- Phonegap+Sencha Touch] 移动开发5、Sencha touch结合Phonegap使用
- [Phonegap+Sencha Touch] 移动开发5、Sencha touch结合Phonegap使用
- [Phonegap+Sencha Touch] 移动开发5、Sencha touch结合Phonegap使用
- [Phonegap+Sencha Touch] 移动开发1、准备工作
- 基于mongodb, 设计游戏中的个人背包系统
- C++程序常见的性能调优方式
- Android模拟器Genymotion学习笔记
- Reverse digits of an integer.
- 51nod round3# 序列分解(折半枚举+字典树)
- [Phonegap+Sencha Touch] 移动开发53 Cordova/Phonegap 4(或5) 多了什么?
- hdu 1867 A + B for you again
- 计算机网络知识
- _beginthreadx
- Activity Liftcycle
- ios开发系统自带推送(ios自学笔记)
- Leetcode|Median of Two Sorted Arrays
- this指针
- Hibernate-openSession与getCurrentSession区别