phonegap/cordova学习建议
在技术群里面,一直有一些新人进来,问了一些让人可笑不得的问题.国内的资料相对比较少,而且很旧,都是一些2.X版本的资料.因此想写一些东西,帮助一下新人,让他们少走弯路.
首先说一些很多人问的问题,个人的一些见解:
phonegap和cordova的区别: 他们之间没有区别,在被收购之前叫phonegap,被收购后叫cordova
phonegap能做什么:它是一个桥梁,能让网页可以调用手机的硬件,没有别的用处了.
有什么东西phonegap做不了,只能原生做:网页上用JS调用phonegap,phonegap调用原生代码,原生代码调用手机硬件.所以理论上说,原生可以做的phonegap都可以做.可以用原生的写插件,用phonegap调用.
phonegap的弱点:间隔的层次比较多,调用硬件的速度会慢一些;手机浏览器的渲染能力有限,导致APP会卡;因此对硬件要求很高,或者对渲染要求很高的APP,phonegap做出来性能会很差.
phonegap的优点:让web系统开发人员可以快速上手,成本低,但是很多东西还是要原生开发人员写插件;开发速度快,其实也不是很快,手机上的页面调整会很坑的;写一遍,在很多平台上运行,但是如果你用了很多原生插件,那么想在很多平台运行要重新写插件.
总结:其实phonegap不是想象中的那么好用,做一些简单的增删改查APP还是可以的.如果你的公司刚起步或者不想请高价开发人员,而APP又比较简单,那你就选它吧.
学习phonegap的步骤:
1.首先去http://cordova.apache.org/docs/en/4.0.0/里面,把文档看一遍,虽然是英文,但是不多,即使边查字典边看也行,作用会非常大,让你少走很多的弯路.
2.去phonegap100的网站上,找免费的入门视频看一下,整个工程目录结构就清楚了.
3.看一下cordova在githu上的插件库,一些基本的硬件调用的插件全部在这里,全部是英文的,但是不得不看.文档写的很好,直接有Demo代码.国内的信息基本都是2.X的,即使找到也跑不起来,多看文档.
4.如果是做安卓应用,了解下如何FQ,现在谷歌被墙了; 如果做IOS,买MAC或者了解如何装虚拟机.
5.找一些UI前端框架学习一下.因为APP的界面全部都是html5的,有条件的可以自己写界面会流畅很多.没有的话建议用两个框架,一个是jqmobi(被收购后叫app framework),
另外一个是sencha touch(性能最好,但是不易上手),jquery mobile是不建议的,太卡了.Ionic这个框架听说也不错,不过没用过,没有发言权.
6.了解一下ajax的跨域和json或jsonp,因为后面APP全部都是靠它来跟服务器交互.
phonegap/cordova学习建议的更多相关文章
- [Phonegap+Sencha Touch] 移动开发36 Phonegap/Cordova项目的图标和启动画面(splashscreen)配置
		
原文地址:http://blog.csdn.net/lovelyelfpop/article/details/40780111 Phonegap/Cordova项目中的config.xml文件.里面配 ...
 - WINDOWS下PhoneGap(Cordova)安装笔记
		
1.首先下载Node.js 安装nodejs很简单直接点击安装文件下一步直至成功即可,安装notejs的同时npm也会同时安装 成功后打开notejs的命令行工具 输入“node -v”," ...
 - aiku给你们最真心地学习建议--转
		
aiku给你们最真心地学习建议: 以前我最开始的就搞驱动,后来发现要熟悉hal层,接着就硬着看hal代码,第一次看,很剧痛,慢慢的,看习惯了,就好了,后来发现,搞驱动的人,不懂hal,很多时候就定位 ...
 - phonegap,Cordova 使用html5标签
		
某些安卓手机的webview使用location.href="tel:123456"不能调到打电话的界面,可以用下面的解决办法: config.xml文件最后加上一行: <a ...
 - 如何安装 PhoneGap / Cordova (for Win10)
		
最近需要配置 PhoneGap / Cordova 环境,折腾了一阵子,写篇博客 Mark 一下整个过程. 具体参照了:http://www.assortedgarbage.com/apigee/ 以 ...
 - C++学习建议
		
C++学习建议 C++缺点之一,是相对许多语言复杂,而且难学难精.许多人说学习C语言只需一本K&R<C程序设计语言>即可,但C++书籍却是多不胜数.我是从C进入C++,皆是靠阅读自 ...
 - PhoneGap+Cordova+SenchaTouch-01-环境搭建
		
转http://my.oschina.net/zhongwenhao/blog/369465 环境搭建基于 windows ,mac系统可以借鉴 1.安装NodeJS 和ruby http://no ...
 - Cordova学习
		
Cordova学习 ui线程里处理耗时逻辑 runOnUiThread(new Runnable() { public void run() { //处理 } });
 - cordova学习-基础篇
		
Cordova 学习笔记(一):快速开始 1.安装cordova Cordova安装可以通过node.js从npm上获取.npm install -g cordova 通过这个命令可以安装cordov ...
 
随机推荐
- Android 查看Android版本的方法
			
1.通过源码查看 Android 版本 路径:build/core/version_defaults.mk PLATFORM_VERSION := 2.通过编译时终端输出查看 ============ ...
 - 黄聪:VS2010中如何让webbrowser不弹出JS异常错误窗口(c#.net)
			
1.在属性窗口找到ScriptErrorsSuppressed,选择"true",这个选择的意思是,如果网页上有出现错误命令,这个错误提示将被抑制 2.[项目管理那里,在项目上右击 ...
 - 学习blus老师js(6)--js运动基础
			
运动基础 一.匀速运动 运动框架 在开始运动时,关闭已有定时器 把运动和停止隔开(if/else) <!DOCTYPE HTML> <html> <head> &l ...
 - 面试总结之Database
			
什么是数据库事务? 数据库事务_百度百科 https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BA%8B%E5%8A%A1/9744 ...
 - sql在外键存在的情况下删除表
			
SQL Server 批量 停用/启用 外键约束 今天百度知道上面,看到这样一个要求: 现在有一个库,有很多张表想要删除一张表的记录的时候,由于外键关联太多,所以,没法删除相应的记录,谁能帮忙写个存储 ...
 - SSH: sshd dead but subsys locked
			
问题: 查看SSH的状态时,提示错误如下: /etc/init.d/sshd status error: sshd dead but subsys locked 解决方法: sshd -d rm -r ...
 - jquery对象和DOM对象转换
			
DOM对象转换成jquery对象 var box = document.getElementById('box'); console.log($(box)); jquery对象转化成DOM对象 第一种 ...
 - python 爬虫气象气象定时报 气象预警推送
			
"2018-04-09 14时""长沙市""10日(明天)""多云转雷阵雨""29℃""1 ...
 - linux性能调优
			
1-1.0 关于ulimit linux对每个用户,系统限制其最大进程数.为提高性能,可根据设备资源情况,设置各linux用户最大进程数. [Qrui@root ~]#ulimit -a 用来显示当 ...
 - 潜类别模型(Latent Class Modeling)
			
1.潜类别模型概述 潜在类别模型(Latent Class Model, LCM; Lazarsfeld & Henry, 1968)或潜在类别分析(Latent Class Analysis ...