如何将 Sencha Touch 应用程序集成到 Cordova XCode 项目中?
Posted
技术标签:
【中文标题】如何将 Sencha Touch 应用程序集成到 Cordova XCode 项目中?【英文标题】:How to integrate Sencha Touch app into Cordova XCode project? 【发布时间】:2014-04-04 21:14:20 【问题描述】:我想知道如何将 Sencha Touch 项目集成到 Cordova 项目中。
我知道使用当前的 Sencha Cmd 我们可以从 Sencha 代码生成一个 Cordova 项目,但是代码是压缩的并且不能灵活地更改。 (例如,官方的 Facebook sdk 在此构建后不再工作,我将不得不使用 Cordova-facebook-plugin)。
所以我创建了一个新的 Cordova 项目,作为开始,我创建了一个新的 helloWorld sencha touch 应用程序。我把Cordova项目的www/
文件夹里原来的东西去掉了,把这个Sencha Touch项目的所有东西都放到了下面,但是加载不成功。
我找到this post 并意识到需要一些额外的配置,但这篇文章对我来说似乎已经过时了。
任何帮助将不胜感激!
【问题讨论】:
【参考方案1】:分别创建一个sencha touch项目和cordova项目。
在您的 cordova 项目中添加所需的平台。这将为您提供所需的平台特定的 cordova.js 文件。
现在将 cordova.js 文件粘贴到您的 sencha 项目的 app 文件夹下。
打开 app.json 文件并像这样将映射添加到文件中
'Js' : [
'Path' : 'touch / sencha-touch.js' ,
'X-bootstrap' : true
'Path' : 'cordova.js' ,
'X-bootstrap' : true
'Path' : 'app.js' ,
'Bundle' : true ,
'Update' : 'delta'
]
现在您可以在 Chrome 开发者工具中查看项目中是否包含了 cordova.js。
现在通过在 app.js 文件中包含以下函数,仅在加载 cordova 后加载您的应用
launch: function ()
/ / Destroy the # appLoadingIndicator element
Ext.fly ( 'appLoadingIndicator' ). destroy ();
/ / Wait for cord to be ready
document.addEventListener ( 'deviceready' , function ()
Ext.Viewport.add (Ext.create ( 'MyApp.view.Main' ));
, false );
您不能再在浏览器中运行该项目,因为包含了 Cordova。使用手机将您的项目视为一个应用程序
这是帮助我完成项目的详细教程的链接
http://senchadevelopers.blogspot.in/2013/09/integrating-phonegap-with-sencha-touch.html
【讨论】:
她的代码最终得到了压缩代码,正如我们在她给 github.com/loiane/phonegap-projects/blob/master/… 的代码中看到的那样。如何获得未压缩的代码?非常感谢 转到 .sencha/app 文件夹并覆盖 package.default.properties 中指定的默认属性 Sencha 默认在生产模式下缩小代码。请参阅文档中的主题部署应用程序docs.sencha.com/touch/2.1.1/#!/guide/command_app ...用于测试在测试模式下进行...最终构建将在生产模式下...但尝试覆盖属性..它对我有用..但许多人报告它没有 在 package.default.properties 文件中,设置 build.compression.yui=0...这是对我有用的属性。我通过引用此线程 sencha.com/forum/showthread.php?273381-How-do-I-disable-minify 来做到这一点【参考方案2】:试试下面的。
-
与phonegap细节整合here
在您的 build.xml 中添加以下内容
<target name="-before-init"> <property name="build.options.production.debug" value="debug:true"/> </target>
然后运行 sencha app build native。这可能会在您的 phonegap 文件夹中为您提供一个未压缩的版本。
【讨论】:
以上是关于如何将 Sencha Touch 应用程序集成到 Cordova XCode 项目中?的主要内容,如果未能解决你的问题,请参考以下文章
将 sencha touch 2 集成到 phonegap 中,无法启动 'deviceready' 事件
Sencha Touch 2:数据集成或如何在sencha和javascript之间共享动态信息
如何将启动图像添加到 Sencha Touch 2 应用程序?