初探phoneGap

来源:互联网 发布:苹果mac使用手册 编辑:程序博客网 时间:2024/05/30 07:14
说到phonegap,很多人不知道是什么,来自百度百科“PhoneGap是一个用基于HTML,CSS和JavaScript的,创建移动跨平台移动应用程序的快速开发平台。它使开发者能够利用iPhone,Android,Palm,Symbian,WP7,Bada和Blackberry智能手机的核心功能——包括地理定位,加速器,联系人,声音和振动等,此外PhoneGap拥有丰富的插件,可以以此扩展无限的功能。PhoneGap是免费的,但是它需要特定平台提供的附加软件,例如iPhone的iPhone SDK,Android的Android SDK等,也可以和DW5.5配套开发。使用PhoneGap只比为每个平台分别建立应用程序好一点点,因为虽然基本代码是一样的,但是你仍然需要为每个平台分别编译应用程序。”简单来说,就是提供给开发人员一套api,这套api类似于html和js的语法,所以方便了前台编程人员可以快速的开发出webapp,并且该app通过一定的处理可以在iOS、android、windows等各个平台运行,就是常说的一次编码、多次编译。
这套api听起来很诱人,这也是近期webapp和nativeapp存在的争议,但经我验证,在普通的android手机2.3.5版本上,测试手机是G7,性能太差,运行起来太卡,但我相信,随着硬件条件的不断加强,webapp其实还是很有潜力的,有一天应该会超过webapp,这里展示phonegap在android端的使用方法(官网http://phonegap.com/)

This guide describes how to set up your development environment for Cordova and run a sample application. Note that Cordova used to be called PhoneGap, so some of the sites still use the old PhoneGap name.

1. 开发环境

  • Eclipse 3.4+

2. 需要下载的软件及jar包

  • 下载安装Eclipse Classic
  • 下载安装Android SDK
  • 下载安装 ADT Plugin

以上三步是搭建android开发环境的要求,不熟悉的朋友可以网上查查

  • 下载phonegap需要的jar包Cordova在官网上可以下http://phonegap.com/download

3. 创建新工程

这一步就是创建android的工程

  • Then select a graphic
  • Then Create a Blank Activity
  • 点击完成就创建完成了一个新的android工程,可以在手机上跑跑看,简单的hello world

  • 在根目录上下创建如下两个目录
    • /libs 放jar包的
    • assets/www 放开发好的HTML文件的
  • 从官网上下载cordova-2.0.0.js 放到 assets/www目录下
  • 从官网上下载cordova-2.0.0.jar 放到 /libs目录下
  • 从官网上下载xml放在工程的 /res目录下

  • 导入jar包,cordova-2.0.0.jar在工程上点击右键选择Build Paths/ > Configure Build Path 然后将jar包导入cordova-2.0.0.jar

  • mainactivity需要做如下修改:

    • import org.apache.cordova.*;
    • 把继承自Activity 改成DroidGap
    • 把原来的setContentView() 改成super.loadUrl(“file:///android_asset/www/index.html”);
    • file:///android_asset/www/index.html这是android里面读文件的样式

  • 打开AndroidManifest.xml

  • 加入如下权限

    <supports-screens
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:resizeable="true"
    android:anyDensity="true"/>
    <uses-permissionandroid:name="android.permission.VIBRATE"/>
    <uses-permissionandroid:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/>
    <uses-permissionandroid:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"/>
    <uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
    <uses-permissionandroid:name="android.permission.INTERNET"/>
    <uses-permissionandroid:name="android.permission.RECEIVE_SMS"/>
    <uses-permissionandroid:name="android.permission.RECORD_AUDIO"/>
    <uses-permissionandroid:name="android.permission.MODIFY_AUDIO_SETTINGS"/>
    <uses-permissionandroid:name="android.permission.READ_CONTACTS"/>
    <uses-permissionandroid:name="android.permission.WRITE_CONTACTS"/>
    <uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permissionandroid:name="android.permission.GET_ACCOUNTS"/>
    <uses-permissionandroid:name="android.permission.BROADCAST_STICKY"/>

  • <activity>标签中加入这句话

    android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"
  • 修改完是这个样子的

4. Hello World

  • 写一个helloworld放在assets/www 目录下

    <!DOCTYPE HTML>
    <html>
    <head>
    <title>Cordova</title>
    <scripttype="text/javascript"charset="utf-8"src="cordova-2.0.0.js"></script>
    </head>
    <body>
    <h1>Hello World</h1>
    </body>
    </html>

然后就可以运行啦,程序主体是一个webview,运行你写的HTML页面

原创粉丝点击