❶ 如何用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应用开发了。