Phonegap简单了解

来源:互联网 发布:oracle sql分页 编辑:程序博客网 时间:2024/06/16 21:37
Cordova和PhoneGap 的关系阐述:
Apache Cordova是PhoneGap贡献给Apache后的开源项目,是从PhoneGap中抽出的核心代码,是驱动PhoneGap的核心引擎。


一、PhoneGap是一个基于HTML,CSS和JavaScript创建移动跨平台移动应用程序的快速开发框架。
PhoneGap安装包下载地址:http://phonegap.com/install/ (2.9.1版本Android里面居然没有cordova-2.9.0.jar,2.9.0可以)
Phonegap视频教程地址:http://www.phonegap100.com/jiaocheng/PhoneGapJiaoCheng/


https://build.phonegap.com/   支持云端编译原生app程序

1、PhoneGap针对不同平台的WebView做了扩展和封装,使WebView这个组件变成可访问设备本地API
的强大浏览器,所以开发人员在PhoneGap框架下可通过JavaScript访问设备本地API。 


2、PhoneGap应用的形态可能多种多样。
你可以使用标准的HTML&CSS使它看起来就像一个简单的网页,
也可以使用UI框架使它像jQuery UI,Kendo UI,Sencha,Twitter Bootstrap或Skeleton(或者其它任意基于HTML/CSS/JS的用户框架接口)。
另外你也可以采用CSS模式/主题使它看起来就像一个本地应用,如模仿iOS和Android的iUI,模仿BlackBerry的bbUI。

3、优势
跨平台,快速,开发成本低
基于标准的Web开发技术 (html + css +js) 
可利用成熟javascript框架,可访问设备本地API

4、不足
运行速度相对较慢
不能100%实现底层功能
体验界面无法像原生一样做到极致


二、PhoneGap2.X版本示例

可以导入官方例子phonegap-2.9.0\lib\android\example到eclipse中运行,网上环境搭建的办法

1、原文链接http://blog.csdn.net/ylh644894056/article/details/18825103

a)、建立空的Android project, 在AndroidManifest.xml文件中增加以下内容
    <supports-screens
        android:largeScreens="true"
        android:normalScreens="true"
        android:smallScreens="true"
        android:xlargeScreens="true"
        android:resizeable="true"
        android:anyDensity="true"
        />

    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.RECORD_VIDEO"/>
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.WRITE_CONTACTS" />   
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />   
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.GET_ACCOUNTS" />
    <uses-permission android:name="android.permission.BROADCAST_STICKY" />

b)、
将phonegap-2.9.0中的cordova.js这个js文件(具体名称视当时下载的版本而定)copy到/assets/www目录下,
把cordova-2.9.0.jar文件copy到/libs目录下。
再把xml目录copy到android项目的res目录下。

在/assets/www下建立index.html文件,内容看起来像这样
<!DOCTYPE HTML>   
<html>  
    <head>  
        <title>PhoneGap</title>  
        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>  
    </head>  
    <body>  
        <h1>Hello PhoneGap</h1>  
    </body>  
</html>  

c)、修改java文件
最后再修改下src下的Java主文件:
1)将类改成继承为DroidGap;
2)把setContentView()这行替换为super.loadUrl("file:///android_asset/www/index.html");
3)最后看起来就像这样:
package com.shiqudou.hellophonegap;  
import org.apache.cordova.DroidGap;  
import android.os.Bundle;  
public class FullscreenActivity extends DroidGap {  
    @Override  
    public void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);  
        super.loadUrl("file:///android_asset/www/index.html");  
    }  
}  

d)、cordova-2.9.0.jar加入编译环境,运行成功,显示Hello PhoneGap



三、PhoneGap3.X版本示例

1、
首先安装nodejs,然后用npm安装phonegap
npm install -g phonegap

$ phonegap create my-app
$ cd my-app
$ phonegap run android  



2、参考资料
phonegap安装 环境搭建与配置详解 http://blog.csdn.net/aaawqqq/article/details/19755179
aaawqqq的专栏:http://blog.csdn.net/aaawqqq?viewmode=contents
0 0
原创粉丝点击