用phonegap和jquery-mobile写android应用!

今天纪录的是学习用phonegap和jquery-moblie来写android的过程。环境搭建。

我的习惯是直接上官网看文档,看get-started guide之类的文档。然后在看参考手册。然后就按自己的

学习习惯入门了。

首先是:phonegap。介绍的话baidu知道。网站:phonegap.com。

               http://phonegap.com/start

然后跟着教程走就可以了。

对于不太喜欢看英文的同学。

值得注意的是:1.下面假设已经下载了phonegap并解压了。打开了Android目录。

(目录既文件夹)

                 2. 注意phonegap.js其实是phonegap-version.js。version用具体的版本号代替。我这里是1.2.0

                 3. phonegap.jar其实是phonegap-version.jar,而且要记得把这个jar包添加到eclipse的build-path中去喔。

                 4. 特别注意:loadUrl("file:///")中是3条杠,而不是两条。(我对于file协议为什么要设计成这样,有疑问!)

我简单的翻译一下:

写道
In the root directory of the project, create two new directories:

/libs

/assets/www

1.在项目的根目录下新建两个目录。

/libs

/assets/www

Copyphonegap.jsfromyourPhoneGapdownloadearlierto/assets/www

2.将phonegap.js从刚才下载下来的phonegap文档中拷贝到/assets/www目录下。

Copyphonegap.jarfromyourPhoneGapdownloadearlierto/libs

3.将phonegap.jar从刚才下载下来的phonegap文档中拷贝到/libs目录下。

CopyxmlfolderfromyourPhoneGapdownloadearlierto/res

4.将xml文件夹从刚才下载下来的phonegap文档中拷贝到/res目录下。

Makeafewadjustmentstootheproject'smainJavafilefoundinthesrcfolderinEclipse:(viewimagebelow)

在src源代码文件中的mainjava源代码文件中做做一些修改。

Changetheclass'sextendfromActivitytoDroidGap

将类由继承Activity改成继承DroidGap。

ReplacethesetContentView()linewithsuper.loadUrl("file:///android_asset/www/index.html");

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

Addimportcom.phonegap.*;

添加:importcom.phonegap.*;

Removeimportandroid.app.Activity;

删除importandroid.app.Activity

下面是项目截图:

用phonegap和jquery-mobile写android应用!

对照上面的项目截图。如果还没有jquery-mobile,没关系。

注意

然后。

 1.在AndroidManifest.xml中添加如下xml代码:

<supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="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.READ_PHONE_STATE" />
<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.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" />

2.将如下 android:configChanges="orientation|keyboardHidden"添加到默认的activity标签中。

3. 添加另外一个activity如下。:

<activity android:name="com.phonegap.DroidGap" android:label="@string/app_name" android:configChanges="orientation|keyboardHidden">
<intent-filter> </intent-filter> 
</activity>

 4.然后在/assets/www/目录下创建一个index.html文档内容如下:

<!DOCTYPE HTML>
<html>
<head>
<title>PhoneGap</title>
<script type="text/javascript" charset="utf-8" src="phonegap.js"></script>
</head>
<body>
<h1>Hello World</h1>
</body>
</html>

加入jquery-moblie支持。

很简单了。把jquery-moblie和jquery下载下来就可以了。

修改index.html如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>html app</title>
<script type="text/javascript" charset="utf-8"
	src="js/phonegap-1.2.0.js"></script>

<!--<link rel="stylesheet"
	href="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.css" />
<script type="text/javascript"
	src="http://code.jquery.com/jquery-1.6.4.min.js"></script>
<script type="text/javascript"
	src="http://code.jquery.com/mobile/1.0/jquery.mobile-1.0.min.js"></script>
-->
<link rel="stylesheet"
	href="css/jquery.mobile-1.0.min.css" />
<script type="text/javascript"
	src="js/jquery-1.6.4.min.js"></script>
<script type="text/javascript"
	src="js/jquery.mobile-1.0.min.js"></script>
</head>
<body>
<div data-role="page">

	<div data-role="header">
		<h1>My Title</h1>
	</div><!-- /header -->

	<div data-role="content">	
		<p>Hello world</p>		
	</div><!-- /content -->
	<ul data-role="listview" data-inset="true" data-filter="true">
	<li><a href="#">Acura</a></li>
	<li><a href="#">Audi</a></li>
	<li><a href="#">BMW</a></li>
	<li><a href="#">Cadillac</a></li>
	<li><a href="#">Ferrari</a></li>
</ul>

</div><!-- /page -->
</body>
</html>

   好了运行一下:

 用phonegap和jquery-mobile写android应用!

嗯,成功了,学习正式开始吧!

相关推荐