Phonegap怎么用来做安卓APP

供稿:hz-xin.com     日期:2024-05-04
如何利用PhoneGap制作地图APP

一、安装平台

PhoneGap支持5种平台,IOS,安卓,黑莓,WebOS,塞班。

我们下面以IOS为例,开发一个定位的APP。



1、下载xCode

注意看清楚,狮子系统和雪豹系统的安装程序是不一样的。

a.可以到苹果应用商店app store上下载,不过速度非常的慢,一通宵都下载不到20%……优点是免费。

b.也可以到macx上下载,速度快,非会员收费。

c.其实也可以找有安装程序的人拷贝,速度快,也免费……

2、下载PhoneGap

到官网上下载,免费的,https://github.com/phonegap/phonegap/zipball/1.0.0



二、项目配置

1、启动xCode,在菜单那里选择“create a new xcode project”





2、从模板列表里选择“phonegap-based application”,然后next





3、输入公司名称、项目名称





4、选择储存目录。

我一般就放到桌面上,哈哈。



5、右键单击(触控板2个手指按)项目左侧的导航窗口,点击“show in Finder”。





6、找到www文件夹。





7、把www文件夹拖动到蓝色项目条上





8、把你的地图htm文件拷贝到index.html里面。点击运行,就OK啦~

另外,最好部署到真机上,虚拟机上很多功能不是很好用。







全部源代码:










冀兴驾校--手机版













body,html,#jx_map{height:100%;width:100%;padding:0;margin:0;font-size:14px;}













var map = new BMap.Map("jx_map");

map.centerAndZoom("北京", 14);

map.addControl(new BMap.MapTypeControl({mapTypes:[BMAP_NORMAL_MAP, BMAP_HYBRID_MAP], anchor:BMAP_ANCHOR_TOP_LEFT}));

map.addControl(new BMap.NavigationControl({type:BMAP_NAVIGATION_CONTROL_ZOOM, anchor:BMAP_ANCHOR_BOTTOM_RIGHT}));


// 定义一个控件类

function MyLocation(){

this.defaultAnchor = BMAP_ANCHOR_TOP_RIGHT;

this.defaultOffset = new BMap.Size(10, 10);

}

MyLocation.prototype = new BMap.Control();

MyLocation.prototype.initialize = function(map){

var div = document.createElement("div");

div.appendChild(document.createTextNode("定位"));

// 设置样式

div.style.cursor = "pointer";

div.style.border = "1px solid gray";

div.style.backgroundColor = "white";

div.style.padding = "10px";

div.style.borderRadius = "5px";

div.onclick = function(e){

var geolocation = new BMap.Geolocation();

geolocation.getCurrentPosition(function(r){

if(this.getStatus() == BMAP_STATUS_SUCCESS){

var mk = new BMap.Marker(r.point);

map.addOverlay(mk);

map.panTo(r.point);

gc.getLocation(r.point, function(rs){

var sContent = "您的位置是:" + rs.address;

var infoWindow = new BMap.InfoWindow(sContent, {width:150, offset:new BMap.Size(0,-20)});

map.openInfoWindow(infoWindow, r.point);

});

}

else {

alert("网络不通,请稍后再试。");

}

})

}

map.getContainer().appendChild(div);

return div;

}

var mylocation = new MyLocation(); //定位

map.addControl(mylocation);



var gc = new BMap.Geocoder(); //地址解析





var _bdhmProtocol = (("https:" == document.location.protocol) ? " https://" : " http://");

document.write(unescape("%3Cscript src='" + _bdhmProtocol + "hm.baidu.com/h.js%3Fc20b7442b4e0e7b9e42e799fae5f60bd' type='text/javascript'%3E%3C/script%3E"));



这个应该是在index页面里改代码就好了。

在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.javapackage com.phonegap.Sample; import android.app.Activity; import android.os.Bundle; import com.phonegap.*; public class Sample extends DroidGap { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.loadUrl("file:///android_asset/www/index.html"); } } (2)网页代码: index.html > <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script type="text/javascript" charset="utf-8" src="phonegap.0.9.4.js">script> <title>Testtitle> head> <body> <a href="javascript:navigator.notification.alert('hello');">click mea> 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-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" /> (2)在此可下载完整的工程文件,此例子基于phonegap自带的一个例子,但只保留了最少的部分。小结:的内容介绍完了,希望通过PhoneGap内容的学习能对你有所帮助!

使用PhoneGap搭建Android开发的项目整体步骤如下:
1安装java环境。
2安装ant构建工具。
3安装android的开发环境并配置环境变量。
4安装Node.js环境并配置环境变量。
5安装git
6使用npm安装PhoneGap全局环境。
7使用PhoneGap命令创建PhoneGap项目。
8将PhoneGap编译为android项目。
9将上述项目导入ADT进行后续开发。
10安装.apk文件

其实官网给出的安装过程忽略了很多步骤(因为这里是Andriod环境,所以才会比官网的例子多出不少步骤),下面就详细讲解这些步骤,并最终生成apk文件。
1安装Java环境
需要强调的是安装java的环境要和后面下载andriod开发环境一致,不然会报错,要保证都是32位或64位,否则运行不成功。
2配置java环境

3安装Ant构建工具
Adobe将PhoneGap已经放到Apache名下进行开源,并且还改了个名字,ant可以apache下的构建工具,所以需要先安装ant才可以,安装过程其实非常简单,第一个就是下载,选择适合自己的版本。

knc mid708a安卓平板怎么刷机?
答:安卓平板和手机的刷机方法是一样的。用软件一键在线刷机步骤:1、这个需要安装一款刷机软件。百度搜索“刷机大师(安卓系统)”,然后点击下载安装。2、然后进入自己的手机,点击设置,然后点击开发人员选项。把USB调试打开。不同...

安卓平板电脑联想a2207h,怎么刷机呢
答:刷机准备工作:1、保证手机 有充足的电量(70%以上);2、备份手机中的个人数据(联系人、短信、应用程序等);3、下载官方包或 其它刷机包(可以到官网论坛,ROM基地下载)。方法步骤:1、首先将包拷贝到手机 存储卡...

安卓,手机变成另一个手机的摄像头 就是说一个手机A做摄像头,另一个手机...
答:一个手机做另一个手机的摄像头,这技术上可以做到,但这种功能很少用到,或者需求不旺,所以,没有人去编这样的应用的;如果要看到拍摄的文件可以做到,双方手机上只要都安装有ES文件浏览器,就可以用FTP功 能访问到,一个...

怎么在安卓上做汤姆猫直播?
答:第一步,打开安卓模拟器,它相当于我们的安卓手机,把准备好的汤姆猫APP安装到模拟器上,打开APP一看,效果就出来了。然后在模拟器右上角点击按键设置,设置好按键和汤姆猫相对应动作,比如设置拍脸效果对应按键A,拍肚子对应...

安卓手机浏览器和APP下面出现一个蓝色的方框里面有个A然后弹出视频恶意...
答:像这种情况是手机上下载的软件中带有的恶意插件软件的,可以先把软件卸载掉。如果卸载不掉的话就在手机上下载个应用宝吧,它里面的工具箱中有一键root的功能,卸载掉恶意的软件。里面的软件都是正版的,再下载手机查杀和保护...

oppoa59s最高安卓版本
答:手机固件升级教程随着手机系统的更新换代,大家对安卓系统升级也比较感兴趣,而安卓系统升级一般指通过刷机来升级。接下来向您介绍一下安卓手机系统的固件刷机升级方法吧~固件刷机时建议按照以下步骤操作:1、刷机前准备工作:(1...

...安卓版本是3.1,我想升级到最新版本请问我该怎么做?
答:p7510目前最新的官方安卓系统版本是4.0.4如需升级,您可以:1、通过平板中的系统更新:http://skp.samsungcsportal.com/integrated/popup/HtgDetailGuide3.jsp?seq=9722&cdsite=cn 2、通过Kies软件升级平板:http://skp...

HTC HD2用的安卓2.3.7a的系统!怎么在电脑上打开备份的短信?
答:这个只有恢复到手机里才可以打开

我的平板电脑是爱魅a76时尚版怎么重装安卓系统呀
答:升级前的准备工作:1、在爱魅官网下载相对应机器的固件并解压。2、升级前请您先将本机里面的重要文件备份好,以免刷机/升级时系统格式化造成数据掉失给您带来不必要的损失和麻烦。升级步骤:1、打开已下载被解压的升级工具...

nufa安卓版怎么下载
答:1、首先打开手机设备上的应用商店,例如GooglePlay商店或应用宝。2、其次在搜索栏中输入“Nufa”,可以看到Nufa应用。3、最后点击“安装”按钮,开始下载和安装Nufa安卓版应用,安装完成后,即可使用Nufa安卓版应用。