android PhoneGap 入门
16lz
2021-01-25
最终效果:
项目结构图:
需要用到PhoneGap官方包
phonegap.js、xml/plugins.xml、phonegap-*.jar都是从官方压缩包得来的。
(附件:phonegap-phonegap-1.0.0-0-g80cc6dd.zip)
项目根目录下,创建两个新目录:
/libs
/assets/www
复制 phonegap.js 到 /assets/www
复制 phonegap.jar 到 /libs
复制 xml 整个目录(包括plugins.xml)到 /res
对 src 下的主要java文件进行少量调整:
---将 class的继承由Activity改为DroidGap
---将 setContentView()替换为super.loadUrl("file:///android_asset/www/index.html");
HelloPhoneGapActivity.java
package com.royal.helloPhoneGap;import android.os.Bundle;import com.phonegap.DroidGap;public class HelloPhoneGapActivity extends DroidGap {@Overridepublic void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);super.loadUrl("file:///android_asset/www/index.html");}}
---修改AndroidManifest.xml , 将下面的权限设置复制到指定位置:
<!-- PhoneGap权限 --> <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="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" />
----在AndroidManifest 的activity 标签中添加: android:configChanges="orentation|keyboardHidden"
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?><manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.royal.helloPhoneGap" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="8" /> <!-- PhoneGap权限 --> <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="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" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".HelloPhoneGapActivity" android:configChanges="orientation|keyboardHidden" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application></manifest>
---在 /assets/www 目录中新建 index.html
index.html
<!DOCTYPE HTML><html><head><title>PhoneGap</title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <script type="text/javascript" charset="utf-8" src="phonegap.js"></script></head><body><h2>萧_瑟 Hello World</h2></body></html>
注意:确保各文件的编码格式保持一致,否则可能会出现中文乱码。
OK. 至此完成,运行。
参考 及 官方:
http://www.phonegap.cn/?page_id=442#android
http://www.phonegap.cn/
更多相关文章
- 一款常用的 Squid 日志分析工具
- GitHub 标星 8K+!一款开源替代 ls 的工具你值得拥有!
- RHEL 6 下 DHCP+TFTP+FTP+PXE+Kickstart 实现无人值守安装
- Linux 环境下实战 Rsync 备份工具及配置 rsync+inotify 实时同步
- android移植(0)-热身
- 修改android4.4图库系列二——自定义菜单
- Android(安卓)SharedPreferences
- MyEclipse本地搭建Android环境
- cocos2dx使用Jsoncpp在android运行的问题