Android:PhoneGap入门

jopen 11年前

PhoneGap是一能够让你用普通的web技术编写出能够轻松调用API接口和进入应用商店的HTML5应用开发平台。是唯一的一个支持7个平台的开源移动框架。它的优势是无以伦比的:开发成本低——据估算,至多Native App的五分之一!

  • 兼容性:完全做到了Written Once,Run Everywhere!
  • 标准化,PhoneGap采用W3C标准,Web App直接运行!
  • 用JavaScript+HTM5。和iOS以及android的代码加XML没区别!
  • 大众化移动互联网开发平台 了解更多
    • 轻量级架构,功能卓越的手机应用快速开发平台
    • 精确兼容系统 Andriod iPhone&iPad Symbain WM
    • 无成本开发,20%的开发周期,20%的升级维护成本
    • 完全不需要手机编程基础,只要会HTML就能做应用

一、PhoneGap环境配置

    1、打开Eclipse,新建一个Android项目。

    2、如果没有/libs目录,则创建,另外,创建一个/assets/www目录。

    3、从刚才下载的PhoneGap中复制phonegap.js 到/assets/www目录;

        从刚才下载的PhoneGap中复制phonegap.jar 到/libs目录;

        从刚才下载的PhoneGap中复制xml文到夹到/res 目录。

    4、对Eclipse的src文件夹中的主Java文件进行少量调整:

        将class的继承类由Activity 改为DroidGap;

        将 setContentView() 这一行替换为super.loadUrl(file:///android_asset/www/index.html);

        添加 import com.phonegap.*;

        移除import android.app.Activity;

Android:PhoneGap入门

注:

在这里你可能会遇到Eclipse找不到phonegap-1.0.0.jar的错误。在这种情况下,右键单击/libs文件夹找到Build Paths/ > Configure Build Paths。然后在Libraries标签页中添加phonegap-1.0.0.jar到项目中。如果Eclipse不是很稳定,你需要点击F5刷新一次项目。

5、给Manifest文件添加说明和权限:

<?xml version="1.0" encoding="utf-8"?>    <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:windowSoftInputMode="adjustPan"        package="org.apache.cordova.example" android:versionName="1.0" android:versionCode="1" android:hardwareAccelerated="true">      <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" />          <application android:icon="@drawable/icon" android:label="@string/app_name"          android:hardwareAccelerated="true"          android:debuggable="true">          <activity android:name="example" android:label="@string/app_name"                  android:theme="@android:style/Theme.Black.NoTitleBar"                  android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale">              <intent-filter>                  <action android:name="android.intent.action.MAIN" />                  <category android:name="android.intent.category.LAUNCHER" />              </intent-filter>          </activity>      </application>        <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="17"/>  </manifest>

二、编写Hello World代码

1、在 “/assets/www”目录中新建文件index.html。

2、index.html的代码如下:

<!DOCTYPE html>  <html>      <head>          <meta charset="utf-8" />          <meta name="format-detection" content="telephone=no" />          <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" />          <link rel="stylesheet" type="text/css" href="css/index.css" />          <title>Hello World</title>      </head>      <body>          <div class="app">              <h1>Apache Cordova</h1>              <div id="deviceready" class="blink">                  <p class="event listening">Connecting to Device</p>                  <p class="event received">Device is Ready</p>              </div>          </div>          <script type="text/javascript" src="cordova.js"></script>          <script type="text/javascript" src="js/index.js"></script>          <script type="text/javascript">              app.initialize();          </script>      </body>  </html>

三、项目完整图

Android:PhoneGap入门