使用Cordova框架把Webapp封装成Hybrid App实践——Android篇
公司没有IOS和没有安卓开发人员,前端后端都是需要自己玩前几天技术经理说有一个需求要把webapp封装成Hybrid App,现已完成。记录一下从中遇到的问题和需要用到的开发环境的配置
将Webapp封装成Hybrid App有如下步骤
1.下载安装1.8的JDK,并且配置环境变量 (注意:最新版本的cordova,必须要下载1.8的JDK不然会报错)
2.下载安装Ant构建工具并且配置环境变量 (注意:Ant目录不能是中文,不然编译不成功)
3.下载安装android并且配置开发环境
4.下载安装Node.js
5.使用npm安装cordova全局环境
6.使用cordova创建cordova项目
7.将cordova编译为android项目
8.安装.apk文件
9.Eclipse安装ant插件
10.导入创建好的android项目
11.下载安装连接第三方模拟器 (注意:这里舍弃了自带的android模拟器使用第三方的,因为android自带的模拟器半天才打开,又不支持window系统下载x86)
以下是百度云的链接,打包所需要的所有工具、插件、安装包都在里面
链接:http://pan.baidu.com/s/1mhQYD0s 密码:7x16
1.JDK的配置环境如下:
在环境变量新建系统变量 变量名:JAVA_HOME 变量值为:安装路径的根目录即可(C:\Program Files\Java\jdk1.8.0_111)
2.安装Ant构建工具如下:
1. 新建系统变量 变量名:ANT_HOME 变量值为:安装路径的根目录即可(D:\phonegap\apache-ant-1.9.8) 把bin目录的路径添加到path里面
添加到path的截图如下:
完成以上两点之后打开cmd输入 java -version 和 ant -version 出现以下如则安装成功,否则请检查配置的环境变量路径
3.安装android开发环境配置如下:
解压后的目录是如下图:
1.将SDK目录下的:platform-tools、tools添加到环境变量的path里面去
2.安装完成后cmd运行adb 如图则安装成功,
4.下载安装Node.js
下载下来的包含有Node.js安装包直接安装即可,无需配置环境
5.使用npm安装cordova全局环境
1.运行cmd
2..输入此命令: npm install -g cordova 回车 这里需要等待一段时间 如以下图说明安装成功 因为我已经安装过了
可运行cordova -v 查看是否安装成功,如图示 6.4.0版本的cordova 如图
6.使用cordova创建cordova项目
1.切换到任意路径 输入命令:cordova create myapp 回车
2.进入项目输入命令: cd myapp 回车
7.将cordova编译为android项目 (注意:如何报android-24的错误,请在添加平台时修改两个文件
1. D:\phonegap\myapp\platforms\android目录下的project.properties文件将24改成25
2. D:\phonegap\myapp\platforms\android\CordovaLib目录下的project.properties文件将24改成25即可)
1.添加安卓平台输入命令:cordova platform add android 回车
添加成功如下:
检查环境是否配置好:输入命令: cordova requirements 回车 出现以下则OK
8.安装.apk文件
如果以上都完成了就开始构建安卓.apk
输入命令: cordova build android 回车 如下图则构建成功
此时此刻你的D:\phonegap\myapp\platforms\android\build\outputs\apk 有一个apk的文件 到了这里ok说明你已经成功了
现在的目录结构为:
现在将webapp移动端项目copy到www目录下,将原先的文件删掉,如图 主程序入口在config.xml配置(后缀不能是.jsp)
(注意:所以的请求必须是绝对路径)
9.Eclipse安装ant插件
打开Eclipse--->Help--->Install New Software---出现以下
Ant插件安装成功后重启Eclipse ----->添加SDK所在的目录
10.导入创建好的android项目
File--->New--->project-->
选择上面创建好的安卓项目 勾选两个就行了 CordovaLib、MainActivity
11.下载安装连接第三方模拟器
先下载安装第三方模拟器(注意:模拟器要打开才能连接成功)
下载安装完成后运行cmd 连接第三方模拟器 输入命令 adb connect 127.0.0.1:26944 回车 ---》26944是第三方模拟器的端口号
此时进入Eclipse---》Window---Show View-->Devices则出现以下图
运行MainActivity---》Run As---》Android-Application 出现如下界面 选择第三方模拟器 OK
模拟器出现如下图则运行成功OK
将apk安装包发送到手机进行安装如下效果:
希望对大家有帮助
有问题可以加QQ交流---969351680
使用Cordova框架把Webapp封装成Hybrid App实践——Android篇的更多相关文章
- 关于把本地应用封装成windows app发布审核通不过的问题
把传统的b/s系统,简单改版,做成了一个比较适合于领导查询的系统,并开发了一个app程序封装了webview直接导向该程序,无需登陆直接访问:结果在提交app的时候审核通不过,问题是安全审核失败: 大 ...
- 将网页封装成苹果APP的牛逼方法,无需发布到appstore,无需越狱即可安装
很多小伙伴都在开发自己的app, 有的实现实现比较简单,就是一个h5页面,然后想要打包成app发布出去. 这个想法很单纯 打包生成个app这个是很简单的,网上一堆打包工具,分分钟可以完成 但是... ...
- Hybrid App适配Android注意点
近期把做好的ipad HTML5混合应用适配到android上,发现android的webview比 iPad差太多了,android4.4因为升级到chromium.和chrome内核一致,全部问题 ...
- Hybrid App开发者一定不要错过的框架和工具///////////z
ionicFramework 我是hybrid app的忠实粉丝和大力倡导者,从 新浪移动云开始就不断的寻找能帮助Web程序员开发出漂亮又好用的UI层框架.在历经了jqmobile.sencha to ...
- Hybrid App开发者一定不要错过的框架和工具
最近开始给网站的移动版本做技术选型,发现了很多好玩的东西,写出来给大家分享下. ionicFramework 我是hybrid app的忠实粉丝和大力倡导者,从 新浪移动云开始就不断的寻找能帮助Web ...
- native app、web app、hybrid app、react-native 区别
Native App:指的是原生应用程序,一般依托于操作系统,有很强的交互. 技术:Objective-C Java Native App开发的优点 提供最佳的 户体验 拥有系统级别的通知或提醒 可以 ...
- cordova 一个将web应用程序封装成app的框架
cordova的详细介绍请参考这个链接:http://www.zhoujingen.cn/blog/7034.html 我接下来主要将如何搭建. 1.首先你需要下载几样东西 1.jdk. 2.andr ...
- hybrid App cordova打包webapp PhoneGap
Hybrid APP基础篇(一)->什么是Hybrid App APP三种开发模式--之--HybridApp解决方案 Hybrid App开发 四大主流平台分析 Hybrid App 开发模式 ...
- 为什么要用Hibernate框架? 把SessionFactory,Session,Transcational封装成包含crud的工具类并且处理了事务,那不是用不着spring了?
既然用Hibernate框架访问管理持久层,那为何又提到用Spring来管理以及整合Hibernate呢?把SessionFactory,Session,Transcational封装成包含crud的 ...
随机推荐
- ie浏览器下input和select的上下居中问题!!!!
在Google浏览器下的input和select标签里面的文字是根据它的高度自适应上下居中的,而ie浏览器下的input和select里面的文字就不会根据高度自适应上下居中,跟大家分享一下我的解决方法 ...
- 11、SQL Server 视图、数据库快照
SQL Server 视图 什么是视图? 视图是一个虚拟的表,内容源于查询的结果集.只有当视图上建立了索引后,才会具体化. 视图可以筛选和处理数据,而不是直接访问基础表.如:创建一个视图,只展示源表中 ...
- Struts1 中$ 没有解析的问题
如果发现你的代码中,${name} 没有解析,就这样显示在页面上,排除错误的情况下 可能是你的jsp缺少一种属性isELIgnored="false" 加上就能够显示了 <% ...
- ASP.NET 中的定时执行任务
在一个网站中,设定一些任务能够在后台定时执行. public static void AddTask(int seconds, Action todo) { HttpRuntime.Cache.Ins ...
- 浅析Mysql数据回滚错误的解决方法
介绍一下关于Mysql数据回滚错误的解决方法.需要的朋友可以过来参考下 MYSQL的事务处理主要有两种方法. 1.用begin,rollback,commit来实现 begin 开始一个事 ...
- 正则表达式 U贪婪模式
<?php/*模式修正符号: i u 位置:"//模式修正符位置" 可以一次使用一个,也可以一次使用多个 对整个正则表达式调优用的,也可以说是对正则表达式功能的扩展 &quo ...
- Extjs之rowEditing编辑状态时列不对齐
Extjs在使用rowEditing的时候,会在每一列加上editor属性,表示当处于编辑状态时这一列的值是什么类型的,后突然发现在rowEditing处于编辑状态时每一列的宽度边框了,如果列数非常多 ...
- Linux命令——创建删除文件
创建文件夹 mkdir filename 进入目录文件 cd filename 返回上一级目录 cd ..返回多级目录 cd ../../.. (../表示一级) 创建文件 touch filen ...
- 9个最新的手机/移动设备jQuery插件
随着互联网的流行,移动网站开始急速增加,在2014年手机网站将会出现很多,所以手机网站是必须要学会制作的.手机网站不像桌面平台一样制作,否则会影响显示效果,目前大部分手机网站使用响应式设计技术,而且也 ...
- PS抠图神器:KNOCKOUT 2.0
从优设上转载~~太好用了,保存下来以备不时之需. 本人亲身实践~~先看使用成果~~哈哈~~ 原版图 : 抠过的图: 主要看飘逸的发丝~~~而且全程操作不超过5分钟!! 下载地址: http://vdi ...