1.使用命令生成项目
例:cordova create jy110 com.example.jy110 jy110
2.使用命令添加插件(如果报错,可能是网络问题,可以多试几次,直到成功)
例:cordova plugin add orgclass="pun">.apache.cordova.inappbrowser
3.检查插件是否安装成功
例:cordova plugin ls ['org.apache.cordova.inappbrowser']
4.生成安卓项目
例:cordova platform add android
如图:
在assets\www文件加中会如下生成:
我们要整合sencha-touch进来,所以需要删除无关的文件,只保留以下三项
sencha-touch项目结构不变
app.json添加以下配置
"js": [{ "path": "touch/sencha-touch.js", "x-bootstrap": true }, { "path": "bootstrap.js", "x-bootstrap": true }, { "path": "cordova.js", "update": "delta" }, { "path": "cordova_plugins.js", "update": "delta" }, { "path": "app.js", /* 表示所有的类生成到这个文件 */ "bundle": true, "update": "delta" }],
5.通过cmd生成项目:
找到生成的包:
将生成的文件复制到安卓项目中:
6.开始打包测试
参考:http://www.cnblogs.com/mlzs/p/3437445.html进行操作
config.xml:
1 <?xml version='1.0' encoding='utf-8'?> 2 <!-- <widget>元素的 id 属性提供了应用程式的反向域识别码和 version 主要/次要/修补程式符号表示其完整版本号码。 --> 3 <widget xmlns:cdv="http://cordova.apache.org/ns/1.0" 4 id="com.example.jy110" 5 version="0.0.1" 6 xmlns="http://www.w3.org/ns/widgets" > 7 8 <!-- <name>元素指定应用程式的正式名称,因为它出现在设备的主画面上和在应用程式商店介面内。 --> 9 <name> 10 江油一网 11 </name> 12 <!-- <description>和 <author> 的元素指定的中继资料和联繫资讯,可能会出现在应用程式商店清单内。 --> 13 <description> 14 江油一网 15 </description> 16 17 <author 18 email="534502520@qq.com" 19 href="http://www.cnblogs.com/mlzs/" > 20 我的联系方式 21 </author> 22 <!-- 可选的<content>元素在顶级的网络资产目录中定义应用程式的起始页。预设值是index.html的,其中通常出现在一个专案中的顶级万维网目录。 --> 23 <content src="index.html" /> 24 <!-- <access>元素定义应用程式能够与进行通信的外部域的集。如上所示的预设值允许它访问任何伺服器。请参阅域白名单指南的详细资讯。 --> 25 <access origin="*" /> 26 <!-- <preference>标记设置各种选项作为对名称/值属性。每个首选项的名称是不区分大小写。很多优惠是独有的特定平台上,如列于此页的顶部。以下各节详细介绍了适用于多个平台的首选项。 --> 27 <!-- fullscreen使您可以隐藏在萤幕顶部的状态列。 --> 28 <preference 29 name="fullscreen" 30 value="true" /> 31 <preference 32 name="webviewbounce" 33 value="true" /> 34 <!-- 设置为初始萤幕显示的图像。如果您的图像名称为 splash.png ,您需要如此设置。 --> 35 <preference 36 name="splashscreen" 37 value="splash" /> 38 <!-- 设置启动画面显示时间,一旦接收到 app deviceready 事件,将调用 navigator.splashscreen.hide() 方法。 --> 39 <preference 40 name="splashScreenDelay" 41 value="3000" /> 42 <!-- 不如此不能监听事件 --> 43 <feature name="App" > 44 <param 45 name="android-package" 46 value="org.apache.cordova.App" /> 47 </feature> 48 <feature name="InAppBrowser" > 49 <param 50 name="android-package" 51 value="org.apache.cordova.inappbrowser.InAppBrowser" /> 52 </feature> 53 54 </widget>
AndroidManifest.xml:
1 <?xml version='1.0' encoding='utf-8'?> 2 <manifest xmlns:android="http://schemas.android.com/apk/res/android" 3 package="com.example.jy110" 4 android:hardwareAccelerated="true" 5 android:versionCode="1" 6 android:versionName="1.0.1" 7 android:windowSoftInputMode="adjustPan" > 8 9 <supports-screens 10 android:anyDensity="true" 11 android:largeScreens="true" 12 android:normalScreens="true" 13 android:resizeable="true" 14 android:smallScreens="true" 15 android:xlargeScreens="true" /> 16 17 18 <application 19 android:debuggable="true" 20 android:hardwareAccelerated="true" 21 android:icon="@drawable/icon" 22 android:label="@string/app_name" > 23 <!-- <screenOrientation>使程序始终竖向,不相应屏幕旋转以免程序崩溃 --> 24 <activity 25 android:name="jy110" 26 android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" 27 android:label="@string/app_name" 28 android:screenOrientation="portrait" 29 android:theme="@android:style/Theme.Black.NoTitleBar" > 30 <intent-filter> 31 <action android:name="android.intent.action.MAIN" /> 32 33 <category android:name="android.intent.category.LAUNCHER" /> 34 </intent-filter> 35 </activity> 36 </application> 37 38 <uses-sdk 39 android:minSdkVersion="10" 40 android:targetSdkVersion="17" /> 41 <!-- 配置访问网络权限 --> 42 <uses-permission android:name="android.permission.INTERNET" /> 43 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 44 <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 45 46 </manifest>