Xcode和iOS模拟器版本拉动了过时的Cordova

时间:2014-08-06 13:01:49

标签: ios cordova sencha-touch

有时当我运行'sencha app build -run native'时,它会拉出我项目过时的Cordova版本。 当我双击/project/cordova/platforms/ios/project.xcodeproj时会发生同样的情况。

我试过'sencha app refresh'但它仍然过时了。

我不认为这与Cordova有关,因为我的制作版本('sencha app build production')也一直过时。

自从我几周前开始这个项目(我的第一个sencha触摸项目)以来,我正在处理它。

我真的不知道我做了什么或者实际更新我的Cordova版本会发生什么,但我知道经过一段时间它会更新,也许今天,也许明天,我不知道。

当我必须为我的客户展示最新版本时,我真的很讨厌,而我根本不能(或者不知道如何)这样做。 (这就是我在iOS模拟器版本更新后才安排会议的原因)

我是Sencha Touch的新手,我希望我做错了什么。 有谁知道如何解决这个问题?

科尔多瓦 3.5.0-0.2.6

煎茶 2.3.1

Sencha Cmd v4.0.4.84

2 个答案:

答案 0 :(得分:0)

根据我的经验,使用Sencha和Cordova获得非常干净的构建可能有点棘手。以下是检查的几种可能性:(1)确保您的平台版本正确;(2)删除build文件夹以强制构建一个非常干净的文件。

检查您的平台版本

在您的cordova目录中运行cordova platform list命令,以获取您要定位的列表平台,更重要的是,您为每个目标构建的cordova版本。您应该看到如下输出:

velouria:cordova sherb$ cordova platform list
Installed platforms: android 3.5.0, ios 3.5.0
Available platforms: amazon-fireos, blackberry10, firefoxos

您可以使用cordova platform update ios升级每个平台,或使用cordova platform update升级整个项目。

获得真正清洁的构建

导航至[project]/cordova/platforms/ios并删除buildCordovaLib/build。同时删除可能存在的任何其他Xcode项目的build文件夹。 Cordova确实在platforms/ios/cordova/clean中提供了一个可以从命令行运行的干净脚本,但根据我的经验,它并不能完全解决所有问题。

现在cd [project dir]并运行Sencha的构建命令sencha app build -c native(其中-c用于' clean'),然后cd [project]/cordova并运行cordova构建命令cordova build ios

答案 1 :(得分:0)

我发现了我的错误! 我会在这里解释,因为它可能对某人有用。

我在抱怨我的view/home.js已经过时了,对吧? 那是因为我之前有view/home.js并决定彻底改变它。 所以我将其重命名为view/homeOLD.js并创建了一个名为view/home.js的新版本(两个类都称为Ext.define('Shopping.view.Home',

当我浏览http://localhost/shopping时,我的新view/home.js被调用,但我的Xcode(和ios模拟器)似乎搜索了一个名为Shopping.view.Home的类,无论它在哪里(内部视图/文件夹),我想,它首先找到了我的名为homeOLD.js的文件,因此它丢弃了任何可能有一个名为Shopping.view.Home的类的文件。 这就是我的Xcode和Simulator版本从未更新的原因,因为它正在寻找(并找到)一个类view/home.hj以外的文件。

获得的经验教训:评论(或删除),但在我们丢弃文件时不重命名文件。

谢谢你们,抱歉浪费你的时间。