欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

基于第一个PhoneGap(cordova)的应用详解

程序员文章站 2023-12-10 15:20:40
PhoneGap是一套能让你使用HTML5轻松调用本地API接口和发布应用到商店的应用开发平台。官方说有低成本,低开发周期,轻量化等优点,这些咱暂时也没法证明,略过不表。但是有一条跨平台... 13-05-03...

phonegap是一套能让你使用html5轻松调用本地api接口和发布应用到商店的应用开发平台。官方说有低成本,低开发周期,轻量化等优点,这些咱暂时也没法证明,略过不表。但是有一条跨平台,却是很明显的优势。因为它采用html5+javascript的模式来开发应用。phonegap用javascript统一封装了几大平台的本地api(andriod,ios,wp8/7,winrt)等等。。这样的话从一个平台移植到另外一个平台只需要把html代码跟js原封不动的拿过去,打包一下就可以了。phonegap后来被adobe收购,然后又贡献给了开源社区,现在由apache管理,改名cordova。

为了给昨天的html5画图板移植到移动设备上,我决定采用phonegap平台,这样只要编写一边就可以多出运行了。

今天先在andriod下架设phonegap环境。

1.下载phonegap

解压出来,找到lib/android目录。

2.在eclipse下新建andriod项目,这个跟普通项目一样。

3.在assets目录下新建文件夹“www”

把lib/android目录下的cordova-2.6.0.js复制到这个目录下。把cordova-2.6.0.jar复制到libs目录下。

基于第一个PhoneGap(cordova)的应用详解

4.在www目录下新建一个html文件index.html。我们的界面就要在这里建立了。

基于第一个PhoneGap(cordova)的应用详解

index的代码如下:

复制代码
代码如下:

<!doctype html>
<html>
<head>
<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" />
<title>html5paint</title>
<script type="text/javascript" src="cordova-2.6.0.js" charset="utf-8"></script>
<script type="text/javascript">
alert("hello cordova");
</script></p> <p></head>
<body></p> <p><h1>html5paint</h1>
</body>
</html>

5.把lib/android目录下的xml文件夹整个复制到res面目下

基于第一个PhoneGap(cordova)的应用详解

6.修改androidmanifest.xml添加用户权限

在<manifest >标签的内的最前部添加如下代码

复制代码
代码如下:

<supports-screens
android:largescreens="true"
android:normalscreens="true"
android:smallscreens="true"
android:xlargescreens="true"
android:resizeable="true"
android:anydensity="true"
/></p> <p> <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" />

7.修改mainacivity.java

复制代码
代码如下:

public class mainactivity extends droidgap {</p> <p> @override
public void oncreate(bundle savedinstancestate)
{
super.oncreate(savedinstancestate);
super.loadurl("file:///android_asset/www/index.html");
}</p> <p>}

8.build一下会有错误,这是因为前面的cordova-2.6.0.jar没有添加到buildpath里面去。添加buildpath。

基于第一个PhoneGap(cordova)的应用详解

继续build就过了。

最后run一下:

 

基于第一个PhoneGap(cordova)的应用详解基于第一个PhoneGap(cordova)的应用详解

这样一个phonegap的andriod程序就搞定了。明天把昨天的那个html5画板移植过来。