Android项目实践系列(三) -细谈PhoneGap (整合篇)
2012-10-12 10:53
267 查看
[b]前言[/b] 相信大家对大名鼎鼎的 PhoneGap 略有所闻了吧,至于它的强大我就不详细介绍了,大家可以在网上搜索一下。这里我想着重强调下 PhoneGap 提供了Android, iPhone, Palm, 和 Blackberry 平台的原生包装软件(Wrapper),让行动网页可以被包装成原生软件的样子,而不需要透过浏览器作为入口。
本文章将会从应用的角度探讨如何使用PhoneGap以及如何使用PhoneGap的第三方插件。 我将会介绍PhoneGap的第三方插件ChildBrowser。
[b]项目实践[/b]项目准备:
0. Android开发环境(Eclipse + ADT + AndroidSDK + ...)
1. 下载 好 PhoneGap 所需要的包(cordova-2.1.0.jar, cordova-2.1.0.js, xml/config.xml)
2. 下载 好 PhoneGap 的第三方插件 ChildBrowser 所需要的文件(childbrowser.js, ChildBrowser.java, ...)
项目说明:
该项目中,我首先创建一个Android Project - Android-PhoneGap,将 PhoneGap 整合进去,然后将 ChildBrowser 整合到项目中,最后定制一个 AppShell 插件。
创建Android-PhoneGap项目
此章节我就不详细介绍了,你可以参考 官方教程
创建后的结构图如下
config.xml 1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3 Licensed to the Apache Software Foundation (ASF) under one
4 or more contributor license agreements. See the NOTICE file
5 distributed with this work for additional information
6 regarding copyright ownership. The ASF licenses this file
7 to you under the Apache License, Version 2.0 (the
8 "License"); you may not use this file except in compliance
9 with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<cordova>
<!--
access elements control the Android whitelist.
Domains are assumed blocked unless set otherwise
-->
<access origin="http://127.0.0.1*"/> <!-- allow local pages -->
<!-- <access origin="https://example.com" /> allow any secure requests to example.com -->
<!-- <access origin="https://example.com" subdomains="true" /> such as above, but including subdomains, such as www -->
<access origin=".*"/>
<log level="DEBUG"/>
<preference name="useBrowserHistory" value="false" />
<preference name="exit-on-suspend" value="false" />
<plugins>
<plugin name="App" value="org.apache.cordova.App"/>
<plugin name="Geolocation" value="org.apache.cordova.GeoBroker"/>
<plugin name="Device" value="org.apache.cordova.Device"/>
<plugin name="Accelerometer" value="org.apache.cordova.AccelListener"/>
<plugin name="Compass" value="org.apache.cordova.CompassListener"/>
<plugin name="Media" value="org.apache.cordova.AudioHandler"/>
<plugin name="Camera" value="org.apache.cordova.CameraLauncher"/>
<plugin name="Contacts" value="org.apache.cordova.ContactManager"/>
<plugin name="File" value="org.apache.cordova.FileUtils"/>
<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager"/>
<plugin name="Notification" value="org.apache.cordova.Notification"/>
<plugin name="Storage" value="org.apache.cordova.Storage"/>
<plugin name="Temperature" value="org.apache.cordova.TempListener"/>
<plugin name="FileTransfer" value="org.apache.cordova.FileTransfer"/>
<plugin name="Capture" value="org.apache.cordova.Capture"/>
<plugin name="Battery" value="org.apache.cordova.BatteryListener"/>
<plugin name="SplashScreen" value="org.apache.cordova.SplashScreen"/>
<plugin name="Echo" value="org.apache.cordova.Echo" />
<!-- Start Customized plugins -->
<plugin name="ChildBrowser" value="com.cc.mobile.phonegap.plugins.ChildBrowser"></plugin>
</plugins>
</cordova> 如此即整合完毕。
[b]后续[/b]
下面章节,我将详细介绍如何使用PhoneGap进行实际开发,以及如何使用ChildBrowser插件以及如何定制自己的第三方插件。
[b]文章参考链接[/b]http://docs.phonegap.com/en/2.1.0/guide_getting-started_android_index.md.html#Getting%20Started%20with%20Android
https://github.com/phonegap/phonegap-plugins/tree/master/Android/ChildBrowserhttp://www.inside.com.tw/2010/08/15/phonegap-eliminates-the-gap-between-mobile-web-and-native-app http://www.inside.com.tw/2011/01/29/hello-inside-phonegap 作者信息:
QQ: 1321518080
Email: hucaijun520.ok@163.com
本文章将会从应用的角度探讨如何使用PhoneGap以及如何使用PhoneGap的第三方插件。 我将会介绍PhoneGap的第三方插件ChildBrowser。
[b]项目实践[/b]项目准备:
0. Android开发环境(Eclipse + ADT + AndroidSDK + ...)
1. 下载 好 PhoneGap 所需要的包(cordova-2.1.0.jar, cordova-2.1.0.js, xml/config.xml)
2. 下载 好 PhoneGap 的第三方插件 ChildBrowser 所需要的文件(childbrowser.js, ChildBrowser.java, ...)
项目说明:
该项目中,我首先创建一个Android Project - Android-PhoneGap,将 PhoneGap 整合进去,然后将 ChildBrowser 整合到项目中,最后定制一个 AppShell 插件。
创建Android-PhoneGap项目
此章节我就不详细介绍了,你可以参考 官方教程
创建后的结构图如下
config.xml 1 <?xml version="1.0" encoding="utf-8"?>
2 <!--
3 Licensed to the Apache Software Foundation (ASF) under one
4 or more contributor license agreements. See the NOTICE file
5 distributed with this work for additional information
6 regarding copyright ownership. The ASF licenses this file
7 to you under the Apache License, Version 2.0 (the
8 "License"); you may not use this file except in compliance
9 with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<cordova>
<!--
access elements control the Android whitelist.
Domains are assumed blocked unless set otherwise
-->
<access origin="http://127.0.0.1*"/> <!-- allow local pages -->
<!-- <access origin="https://example.com" /> allow any secure requests to example.com -->
<!-- <access origin="https://example.com" subdomains="true" /> such as above, but including subdomains, such as www -->
<access origin=".*"/>
<log level="DEBUG"/>
<preference name="useBrowserHistory" value="false" />
<preference name="exit-on-suspend" value="false" />
<plugins>
<plugin name="App" value="org.apache.cordova.App"/>
<plugin name="Geolocation" value="org.apache.cordova.GeoBroker"/>
<plugin name="Device" value="org.apache.cordova.Device"/>
<plugin name="Accelerometer" value="org.apache.cordova.AccelListener"/>
<plugin name="Compass" value="org.apache.cordova.CompassListener"/>
<plugin name="Media" value="org.apache.cordova.AudioHandler"/>
<plugin name="Camera" value="org.apache.cordova.CameraLauncher"/>
<plugin name="Contacts" value="org.apache.cordova.ContactManager"/>
<plugin name="File" value="org.apache.cordova.FileUtils"/>
<plugin name="NetworkStatus" value="org.apache.cordova.NetworkManager"/>
<plugin name="Notification" value="org.apache.cordova.Notification"/>
<plugin name="Storage" value="org.apache.cordova.Storage"/>
<plugin name="Temperature" value="org.apache.cordova.TempListener"/>
<plugin name="FileTransfer" value="org.apache.cordova.FileTransfer"/>
<plugin name="Capture" value="org.apache.cordova.Capture"/>
<plugin name="Battery" value="org.apache.cordova.BatteryListener"/>
<plugin name="SplashScreen" value="org.apache.cordova.SplashScreen"/>
<plugin name="Echo" value="org.apache.cordova.Echo" />
<!-- Start Customized plugins -->
<plugin name="ChildBrowser" value="com.cc.mobile.phonegap.plugins.ChildBrowser"></plugin>
</plugins>
</cordova> 如此即整合完毕。
[b]后续[/b]
下面章节,我将详细介绍如何使用PhoneGap进行实际开发,以及如何使用ChildBrowser插件以及如何定制自己的第三方插件。
[b]文章参考链接[/b]http://docs.phonegap.com/en/2.1.0/guide_getting-started_android_index.md.html#Getting%20Started%20with%20Android
https://github.com/phonegap/phonegap-plugins/tree/master/Android/ChildBrowserhttp://www.inside.com.tw/2010/08/15/phonegap-eliminates-the-gap-between-mobile-web-and-native-app http://www.inside.com.tw/2011/01/29/hello-inside-phonegap 作者信息:
QQ: 1321518080
Email: hucaijun520.ok@163.com
相关文章推荐
- Android项目实践系列(一) - 探讨ACRA
- Android提升篇系列:Android项目代码优化实践
- Android项目实践系列(二) - 深度定制Logger
- eclipse使用Maven架构Android项目实践
- 在开发Android项目过程中遇到的常见问题整合
- Android仿qq下拉刷新及向左滑动列表----PullToRefresh, SwipeMenuListView开源项目整合
- 搭建高质量的Android项目框架系列一
- Android单排上王者系列之Android MVP解析实践
- Asp.Net大型项目实践系列导航
- Android 项目实践(三)——数据库封装
- 【iOS-cocos2d-X 游戏开发之七】整合Cocos2dX的Android项目到Xcode项目中,Android导入打包运行即可!
- Android---NDK开发系列之环境搭建和第一个NDK项目
- 关于React Native项目在android上UI性能调试实践
- Android项目实践——自定义RecyclerViewAdapter模板代码
- Android 实践项目开发 总结
- Phonegap Android 项目使用Cordova
- Android + Eclipse + PhoneGap 3.4 安卓最新环境配置,部分资料整合网上资料,已成功安装.
- 徽章系列1: Top 30 android 开源项目徽章
- Android 快速开发系列 ORMLite 框架最佳实践
- 【实践驱动开发2-001】wifi 在android 下的实现 - AR6000 系列移植详细步骤