Ⅰ 如何用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自带的一个例子,但只保留了最少的部分。
Ⅱ 求助phonegap高手,phonegap3.4在mac10.9.1下编译出错的问题
楼主你好,我也遇到这个问题了,后来看了些资料,最终解决方案如下: 进入“C:\Windows\System32”,找到cmd.exe,以管理员运行,这样就会安装成功不会再报错。我也是遇到errno -4048,然后解决的。
Ⅲ 求教phoneGap怎么获取 安卓6.0以上的mac地址
如果你做的是android的应用,使用了webview,IMEI还是可以获取的。使用addJavascriptInterface(object,"test");可以用来让web中的js调用本地Java对象,而获取的IMEI可以在这个本地Java对象中实现。试试搜一下androidwebviewjs调用本地java,androidjsjava交互等关键词。
Ⅳ phonegap与cordova跨平台移动app的布局怎么编辑
1、第一步,要先建立一个支持PhoneGap(Cordova)的android工程
因为这个插件本质上是安卓插件,用于PhoneGap,因此,要二者支持才行,所以我们要建立一个支持PhoneGap(Cordova)的android工程,插件在这个工程里面编写。
我们采用cordova cli来进行工程创建。这样会比较方便。否则要先创建安卓工程,然后手动将cordova的东西拷到工程文件夹内,还要修改代码,麻烦得很。
1)先创建一个cordova项目
在命令行方式下:
[plain] view
plainprint?
cordova create hello com.example.test HelloWorld
cordova create hello com.example.test HelloWorld
这样就在当前路径,创建了一个名为hello的文件夹,里面是cordova的各种文件
2)设置cordova支持android平台
在命令行方式下:
[plain] view
plainprint?
cd hello
cordova platform add android
cd hello
cordova platform add android
这样在hello\platforms文件夹下,多了一个android子目录,这个就是我们要的支持phoegap的安卓工程了,插件可以在这个工程里面编写。
2、编写插件
1)Hello.java
用eclipse打开该工程
在src下新建包及class
Hello.java:
2)config.xml
修改res/xml/config.xml
在节点<widget>里加入:
[html] view
plainprint?
<feature name="Hello">
<param name="android-package" value="com.example.test.plugin.Hello" />
</feature>
3、调用插件
调用是javascript唱独角戏。
1)添加 js/plugin.js
var helloPlugin = {
say: function(successCallback, errorCallback) {
cordova.exec(
successCallback, // success callback function
errorCallback, // error callback function
'Hello', // mapped to our native java class called "CalendarPlugin"
'sayHello', // with this action name
[] // and this array of custom arguments to create our entry
);
}
}
2)修改js/index.js
修改部分主要在结尾部分
3)修改首页index.html
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript" src="js/plugin.js"></script>
<script type="text/javascript">
app.initialize();
</script>
至此,我们就完成了一个for phonegap的安卓插件的编写和调用过程。
按道理,插件应该独立于具体工程,可以供多个工程调用,但本示例是插件直接写于工程内。独立的方式,我还不知道怎么写。
Ⅳ mac 怎么开发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才可以,安装过程其实非常简单,第一个就是下载,选择适合自己的版本。
Ⅵ phonegap+Android写了原生态的引导页,在退出的时候。。
自定义一个java函数, JS调用自定义的java函数。。这个java函数中,关键代码是:System.exit(0);
Ⅶ 如何使用PhoneGap打包Web App-Android
使用PhoneGap搭建Android开发的项目整体步骤如下:
安装java环境。
安装ant构建工具。
安装android的开发环境并配置环境变量。
安装Node.js环境并配置环境变量。
安装git
使用npm安装PhoneGap全局环境。
使用PhoneGap命令创建PhoneGap项目。
将PhoneGap编译为android项目。
将上述项目导入ADT进行后续开发。
安装.apk文件
其实官网给出的安装过程忽略了很多步骤(因为这里是Andriod环境,所以才会比官网的例子多出不少步骤),像我这种前端开发人员,电脑里可是连java都没装的,下面就详细讲解这些步骤,并最终生成apk文件。
Ⅷ phonegap3.0在命令行下运行phonegap run android后,如何选择本地设备
phonegap环境配置比较复杂,建议你下载phonegap3.0的zip包后解压缩,里面有android的事例源代码,用ADT打开然后在示例代码里面修改就可以了,手机连接的话要确认手机与ADT连接的端口没有被占用,建议用豌豆荚脸上手机后run az android application,然后就可以选择在你的手机上运行啦
Ⅸ 如何利用PhoneGap制作地图APP
一、安装平台
PhoneGap支持5种平台,IOS,安卓,黑莓,WebOS,塞班。
我们下面以IOS为例,开发一个定位的APP。
1、下载xCode
注意看清楚,狮子系统和雪豹系统的安装程序是不一样的。
a.可以到苹果应用商店app store上下载,不过速度非常的慢,一通宵都下载不到20%……优点是免费。
b.也可以到macx上下载,速度快,非会员收费。
c.其实也可以找有安装程序的人拷贝,速度快,也免费……
2、下载PhoneGap
到官网上下载,免费的,
二、项目配置
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啦~
Ⅹ 求教phoneGap怎么获取 安卓6.0以上的mac地址
gethostname获取本机名字,gethostbyname通过前面的名字获取主机具体信息,包括IP地址。
MAC地址可以用Netbios,以上用到的函数都是WIN32API,具体代码请留联系方式(email或者企鹅)也可以自己网络有现成的VB代码