zoukankan      html  css  js  c++  java
  • phonegap环境配置与基本操作

    一、开发环境配置:
    1、工具环境安装:
    安装java sdk 1.6以上版本号,Android Development Tools、ant,系统变量 Path后面加入
    新增名稱 JAVA_HOME 值為 JAVA 安裝路徑 C:Program FilesJavajdk1.7.0_21
    新增名稱 ANT_HOME 值為 ANT 安裝路徑 C:Program Files (x86)apache-ant-1.9.3
    改动 Path 屬性的值
    保留原本的值,在原本的後面加上;%JAVA_HOME%in;%ANT_HOME%in;SDK安裝目錄 ools;SDK安裝目錄platform-tools
    參考:http://jingyan.baidu.com/album/adc815136c6cf5f723bf7389.html
    在eclipse里启动安卓虚拟机
    window > Android Virtual Device Manager
    在eclipse里执行自己的项目:
    项目右键 > run as > Android Application

    2、 安装phonegap|cordova:
    npm install -g phonega
    npm install -g cordova
    win8下报错: cb() never called
    解决方法,编辑.npmrc,命令例如以下:
    vim ~/.npmrc
    registry = http://registry.npmjs.vitecho.com

    二、基本操作:
    cordova与phonegap关系:Apache Cordova是PhoneGap贡献给Apache后的开源项目。是从PhoneGap中抽出的核心代码。是驱动PhoneGap的核心引擎。

    你能够帮他想象成类似于Webkit和Google Chrome的关系

    知乎上的解释:cordova是一个移动应用开发框架,你基于这个东西能够用网页代码作出APP。Phonegap Build是一个在线打包工具,你把使用cordova写好的项目给Phonegap Build,Phonegap Build就会在线打包成App。
    眼下大家所说的Phonegap,事实上指的都是cordova,而那个真正被Adobe收购了的Phonegap(PhoneGap | Home),如今是Phonegap Build,(iPhone, Android SDK service)和cordova(Apache Cordova)的合体。


    而对于你面对的实际问题,就是需不须要Phonegap Build的功能。需不须要在线打包。

    phonegap命令会被解释成相应的cordova命令

    官网文档:
    cordova插件:http://plugins.cordova.io/#/
    各系统对插件功能支持情况:http://cordova.apache.org/docs/en/5.0.0/guide_support_index.md.html#Platform%20Support

    1、phonegap创建项目:
    phonegap create myapp
    cd myapp
    phonegap run android  (运行该命令后会启动安卓模拟器可预览)
    第一个 phonegap写的程序就出现了
    在myapp 文件夹下会出现5个文件夹,打包好的project放在platforms里面
    目录解释见下图
    phonegap环境配置与基本操作


    2、cordova创建项目:
    创建命令: cordova create myapp com.yourname.myapp MyApp
    进入project: cd myapp
    加入平台支持
    cordova platforms add ios
    cordova platforms add android
    cordova platforms ls
    加入插件:
    cordova plugin add org.apache.cordova.device
    cordova plugin add org.apache.cordova.console
    cordova plugin ls
    编译代码(打包APP):
    cordova build android
    执行代码:
    在模拟器上执行(前提是创建好AVD)
    cordova emulate android
    Windows下convert命令冲突,直接“cordova emulate android”会报Error: spawn ENOENT,须要先启动模拟器。
    在浏览器执行:
    cordova serve android
    浏览器訪问地址:http://localhost:8000/,就能够和调试页面一样调试app的布局了。

    假设app中使用了cordova的Native API调用。会弹出下面对话框:
    通过USB直接安装到真机:
    cordova run android


    报错:Error:Please install Android target:"android-22"
    这个主要是没有安装和当前cordova相应要求的android平台sdk,这个能够通过2种方法解决,
    打开ADT,打开Android SDK manager,安装相应平台的SDK。

    (參考下一小节)
    打开例如以下文件夹。可能当中的版本不一,
    项目路径platformsandroidproject.properties
    改动
    target=android-19
    能够把这个改动成你如今已安装的平Andriod台,或者想要指定的Android平台。
    这个问题解决后,上面的演示样例项目就可以生成,然后使用ADT Eclipse导入该项目就可以,允许通过执行。查看在AVD中的执行效果。

    出现的问题:把target改成android-19后build命令报错。还是安心地升级到android22版本号吧 :(

    Android SDK Manager国内无法更新的解决方式
    (1)启动 Android SDK Manager ,打开主界面,依次选择「Tools」、「Options...」。弹出『Android SDK Manager - Settings』窗体。
    (2)在『Android SDK Manager - Settings』窗体中,在「HTTP Proxy Server」和「HTTP Proxy Port」输入框内填入mirrors.neusoft.edu.cn和80,而且选   中「Force https://... sources to be fetched using http://...」复选框。设置完毕后单击「Close」button关闭『Android SDK Manager - Settings』   窗体返回到主界面;


    (3)依次选择「Packages」、「Reload」。
    cordova默认安装的是android22,安装android22方法:
    Tools > Manage Add-on Sites   > 选择相应的版本号安装

    3、eclipse操作
    (1)新建项目
    file > new > android application project
    (2)导入项目
    右键import > Android(Existion Android Code Into Workspace) > 选择已建立项目文件夹
    (3)执行项目(项目文件改动后无法做到在模拟器中刷新)
    项目右键 > run as > Android Application 
    或者

    项目文件改动后再次run as可更新APP。
    phonegap项目模拟器里的文件一直不更新 : (

    三、打包APP:
    命令例如以下:
    phonegap build android   (apk生成文件夹在platformsandroidant-build)
    或者cordova build android  (生成文件夹platformsandroiduildoutputsapk)

    四、安卓模拟器中管理APP:
    1、模拟器中安装APP
    (1)在eclipse里执行项目即会在模拟器中安装该APP,同理能过run命令执行的APP也会在模拟器中安装。
    (2)进入APP所在文件夹,执行命令:adb install XXX.apk
    2、模拟器中卸载APP
    在模拟器中长按项目图标拖动到卸载,拖到APP info可停止执行APP


  • 相关阅读:
    闲话: 恭喜园子里的MVP一下, 同时问所有奋斗在技术领域的兄弟过节好~
    随便说两句: 表设计兼一些设计分析的讨论
    是他妈傻子写的么?
    Utility Wish List
    我终于有个偶像了
    也论标准: 统一是啥好事情?
    linux 编程学习笔记(1)搭建c(c++)开发环境
    Immutable Collections(2)ImmutableList<T>实现原理.(上)
    托管代码的进程注入&CLR宿主
    .NET安全揭秘系列博文索引
  • 原文地址:https://www.cnblogs.com/blfshiye/p/5173216.html
Copyright © 2011-2022 走看看