❶ 如何用PhoneGap打包基於android的WebApp
步驟如下:
在Android上,我們可以基於android.webkit.WebView作為應用的main view來產生一個應用程序,並讓此WebView在應用啟動時載入指定的網頁,這樣就構建了一個基於Android的WebApp。
對於Android, Sencha的phonegap也是基於此方法對網頁程序進行打包的,下載phonegap後,其主要包括二個文件:
1、phonegap.0.9.4.jar
此jar文件中包含了類DroidGap,其對Activity及WebView進行了適當的封裝,可以讓用戶更方便地進行打包。
更主要的功能是能實現的多個Webkit的plugin, 通過這些plugin可以在javascript中直接調用android的一些系統功能,比如得到設備的信息如屏幕大小,系統版本號等,還有打電話,發送簡訊,寫本地文件等一系列功能。
2、phonegap.0.9.4.js
此js文件作了更高層次的封裝,以便於在javascript中更方便地調用所增加的plugin的功能。比如在js中直接調用:
navigator.notification.vibrate(0)可以直接讓手機進行振動
而navigator.notification.beep(2)可以讓手機Beep二聲
以下嘗試一個最簡單的例子(也可以參見phonegap中自帶的一個例子):
(1)java源代碼文件: Sample.java
packagecom.phonegap.Sample; importandroid.app.Activity; importandroid.os.Bundle; importcom.phonegap.*; { @Override publicvoidonCreate(BundlesavedInstanceState) { super.onCreate(savedInstanceState); super.loadUrl("file:///android_asset/www/index.html"); } }
(2)網頁代碼: index.html
<!DOCTYPEhtml><html><head><metahttp-equiv="Content-Type"content="text/html;charset=utf-8"> <scripttype="text/javascript"charset="utf-8"src="phonegap.0.9.4.js"></script><title>Test</title></head><body><ahref="javascript:navigator.notification.alert('hello');">clickme</a></body></html>
把此文件放置在工程的assets/www/目錄下,如果網頁代碼中包含了其它的目錄,則一並放置在這一目錄下。
(3)在工程中加入庫phonegap.0.9.4.jar的引用
編譯運行並點擊頁面中click me鏈接時,可以見到以下畫面:
注意:
(1)phonegap.0.9.4.jar中提供了很多的plugin, 上面的示常式序只調用了navigator.notification.alert, 如需要調用其它功能,則需要在android工程的Manifest.xml中加入這個功能permission聲明:
<uses-permissionandroid:name="android.permission.CAMERA"/><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"/>
(2)在此可下載完整的工程文件,此例子基於phonegap自帶的一個例子,但只保留了最少的部分。
❷ 如何在Ubuntu下配置Android開發環境
1.安裝Eclipse和Android SDK/PhoneGap所需軟體包:
打開終端,輸入下面命令完成題目所述過程:
sudo apt-get install openjdk-6-jdk eclipse ruby rubygems ruby-dev libnokogiri-ruby git ant libxml2 libxml2-dev libxslt1-dev
若是64位,還需要安裝下面兩個軟體包:
sudo apt-get install lib32stdc++6 ia32-libs
2.安裝Android SDK
打開網路瀏覽器,輸入地址http://developer.android.com/sdk/index.html,下載所需的平台(Win,Mac,linux)的Android SDK版本。我們選擇Linux(i386)即可(32位和64位平台皆適用)。或者,用下面命令下載並解壓文件包:
cd ~ wget http://dl.google.com/android/android-sdk_r11-linux_x86.tgz tar xvfz android-sdk_r11-linux_x86.tgz
由上述命令,我們可得到文件目錄 android-sdk-linux_x86 ,現在我們要將$HOME/android-sdk-linux_x86/tools 目錄 和 $HOME/android-sdk-linux_x86/platform-tools 目錄添加到PATH 路徑變數中去:
打開 ~/.profile文件
gedit ~/.profile
添加下面一行內容到該文件末尾:
[...]
PATH="$HOME/android-sdk-linux_x86/tools:$HOME/android-sdk-linux_x86/platform-tools:$PATH"
然後,運行下面命令將上述改動生效:
export
PATH="$HOME/android-sdk-linux_x86/tools:$HOME/android-sdk-linux_x86/platform-tools:$PATH"
現在,啟動 Android SDK:
android
下圖就是Android SDK所示:
接下來,選擇左側的「 Available packages 」,後選擇右側欄內的「 Android Repository」,選中所有「 Android Repository」組內的軟體包,點擊「安裝所選軟體包」即可。接下來選擇「接受」,繼續安裝完畢即可。
若提示「ADB需要重啟」時,我們選擇「Yes」,重啟ADB。
下載完畢後,點擊「close」,關閉對話框。
3.移植Android SDK到Eclipse
若是你用Eclipse創建Android應用,而非命令行下,則我們需要將移植Android SDK到Eclipse。
首先,從「Applications > Programming > Eclipse」,啟動Eclipse。
這樣,Ubuntu Linux系統的Android開發環境就安裝配置好了,可以開始在Linux下進行Android應用開發了。