zoukankan      html  css  js  c++  java
  • PhoneGap开发环境搭建

    ——快速搭建一个命令行生成APK文件系统

    “快速”,对,这里总结的是如何快速搭建一种基于Android系统的跨平台应用生成系统的操作过程。立马就能让你开发的WebApp像Native App一样可以下载、安装和上传。

    安装前根据自己的情况选择所需要的硬性条件,例如:

    1、Mac笔记本。

    2、VirtualBox是一款免费的虚拟机)在官网下载)。

    3、Ubuntu安装镜像文件(www.ubuntu.com下载)。

    在Mac电脑上安装VirtualBox虚拟机,然后在虚拟机上安装Ubuntu系统,网上的安装步骤讲的很详细,操作也很容易。接下来的应用生成系统就在这个Ubuntu系统上搭建。

    一、下载安装JDK

     JDK是Java语言的软件开发工具包,不同的操作平台有不同的安装方法,安装步骤都很简单。用于部署平台的JDK包可以从官网上下载。(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html),这里下载jdk-7u7-linux-i586.tar.gz。在Ubuntu系统文件usr中新建一个java文件目录,然后在将刚刚下载的压缩文件复制到java文件中,解压之后得到一个jdk1.7.0_07文件,操作过程如下图一所示。

     

    图 一

    环境配置,命令行进入etc目录下的.brachrc/profile等文件,如下图二所示。

     

    图 二

    将图三所示代码复制到该文件中退出保存。这段代码包括下面要说的sdk和ant安装后的环境配制。

    图 三

    小提示:编辑完之后按ese+:,在按w表示保存,按q表示退出。

    验证是否安装成功,按如下操作,若出现版本号是刚刚安装的,则表示安装成功,如下图四所示。

     

    图 四

     

    二、下载/在线安装ANT

     Apache ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具。在Ubuntu系统上它的安装即可下载安装包安装也可以在线安装。都很简单,这里我在官网下载了它的安装包,apache-ant-1.9.4-bin.tar.gz。我将它解压在/usr/java/Mobile_Phone_DEV目录下,这里Mobile_Phone_DEV是我之前新建的一个空目录。解压之后同样要配制环境,然后查看安装是否成功,

    操作过程如下图五所示。

     

    图 五

    配制环境过程如上JDK配制所示。

    查看是否安装成功,如下图六所示。

     

    图 六 

     

    三、下载安装Android SDK

    SDK就是开发包,里面包含了两个大类命令行工具:一类是SDK Tools,如android、ddms和emulator等等,这些命令位于tools目录,android用来创建一个Android工程,emulator是用来启动模拟器;另一类是Platform Tools,包含了如adb等,位于platform-tools目录。adb是用来将Apk文件安装到模拟器上。

           开始安装SDK,这里我从官网上同样下载了安装包android-sdk_r23.02-linux.tgz。将它解压到/usr/java/Mobile_Android目录下。这里Mobile_Android目录是我之前新建好的。接下来同样配制环境。环境配制过程如上JDK配制的内容。

     

    四、创建Android AVD(Android Virtual Device )

    Android运行的虚拟设备,他是Android的模拟器识别。建立的Android要运行,必须创建AVD,而且每个AVD上可以配置很多的运行项目。

     在创建 AVD之前,你必须先下载Android设备,进入JDK的tools目录,利用android命令来安装。如下所示。

    android

          这时系统会弹出框让你选择需要下载的版本号,然后自动下载,如果你的硬件够牛逼的话,你可以选择下载你所需要测试的任何设备进行下载,若有真实测试设备的话,可以将应用文件下载到手机上来测试,这时候你就不要花这么多时间来下载它了,当然,这里是假设咱们下载了某一个版本,所以才要创建AVD,操作过程如下图七所示。

     

    图 七 

     

    五、命令行生成基于Android平台的PhoneGap应用文件

     这里需要分两个步骤。

    1、linux下如何创建Android新工程

    命令行进入/usr/java/Mobile_Android/android-sdk-linux/tools,然后在当前目录下运行./android create project -k 工程包名 -n 工程名 -t 模拟器编

    号 -a 子类名 -p 路径。如下图八所示:

     

    图 八

            当然,这个工程是可以直接生成应用文件的,不过它是一个Native App项目,要搭建一个Hybrid App环境,还得进行少数几个操作。

    2、ant命令生成基于Android平台的PhoneGap应用文件

     在Android工程项目的基础上进行如下几个操作配制。

    1)     在工程项目中建立两个文件夹/libs和/assets/www。

    2)     把PhoneGap中Android目录下的cordova.js拷贝到/assets/www下,把同目录下的cordova.jar拷贝到/libs下。

    3)     复制PhoneGap中Android目录下的xml文件夹到/res下。

    4)     Android默认的项目是针对Native App的,所以要用Web App的话,必须修改它的引用文件。

    5)     引用加载cordova.jar。

    6)     修改src文件下的java文件,去掉import部分的important android.app.Activity;并加上import org.apache.cordova.*。

    7)     修改src文件下的java文件,把class extends 的activity改DroidGap。

    8)     修改src文件下的java文件,把setContentView() 改成下面一行代码。

    super.loadUrl(“ file:///android_asset/www/index.html”)

    9)     在AndroidManifest.xml中添加权限代码。代码在附录中,这里不列。

     配制好这些之后,最终的文件结构如下图九所示。

     

    图 九

            这样写下来,好像步骤还很多,不用担心,这里我们可以直接用PhoneGap自带的配制好的Android工程。上面讲的过程这里都可以省略。当然,这个时候在项目目录下运行ant debug时,会生成一个调试的APK文件,如果应用最终要发布的话,我们还得生成一个加密的发行版应用文件。

     

    六、 生成发行版应用所需的密钥

              这里的使用的PhoneGap+Android工程是直接采用下载PhoneGap开源软件包自带的一个Android工程。名为example,可以直接复制到位置/home/zhengwenping/目录下,然后在这个项目中建立两个文件夹bin和key目录。因为这个项目不是我们命令行新建的Android工程项目,所以还必须得更新此项目才能在项目中生成以下另外三个文件。命令进行进入SDK下的tools 目录,执行命令如下图十所示。

     

    图 十

    执行后会立马在项目文件中生成三个文件build.xml、ant.properties、local.properties。

    利用基于Java的Keytool进行密钥生成,首先要用命令进入含有Keytool工具的Java安装文件中,然后执行文件生成命令。如下图十一所示。

     

    图 十一

           执行以上步骤后就会在当前目录下生成一个key.net文件(在执行过程中需输入密码,这个密码要自己设定,需要记录下来,然后将其复制到之前的工程example/key目录下(当前位置执行命令cp   key.nethome/zhengwenping/example/key),接着打开example工程项目目录,将如下两行代码加入到ant.properties文件中。

    key.store = key/key.net

    key.alias = key.net

           命令行进入项目位置,执行命令ant release,在项目目录中bin文件下就能生成一个release版的APK文件,如下图十二所示

     

     图 十二

    最后将它下载安装在Android设备上,如下图所示:

     

     

     

    欢迎 扫描 加入前端问题讨论公众号 拥有更多前端内容分享

     

  • 相关阅读:
    Padding和父子继承宽高之间的关系
    Js实例——模态框弹出层
    Java——异常谜题
    BZOJ 2743 【HEOI2012】 采花
    BZOJ 4614 【WF2016】 Oil
    BZOJ 1004 【HNOI2008】 Cards
    codevs 2495 水叮当的舞步
    BZOJ 1227 【SDOI2009】 虔诚的墓主人
    BZOJ 3505 【CQOI2014】 数三角形
    BZOJ 4423 【AMPPZ2013】 Bytehattan
  • 原文地址:https://www.cnblogs.com/zhengwenping/p/4213153.html
Copyright © 2011-2022 走看看