首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Appcelerator Hyperloop -使用第三方快速库

Appcelerator Hyperloop -使用第三方快速库
EN

Stack Overflow用户
提问于 2017-06-29 05:06:34
回答 1查看 437关注 0票数 1

为了使用第三方开源库,我尝试使用Hyperloop。我想使用的库是甜警报iOS

这个图书馆有一个swift文件。我已经把这个文件放在我的项目主文件夹中的src目录中(它必须在src文件夹中吗?)我可以在我的项目中使用其他文件夹吗?子目录呢?)。

根据钛的文件:

在src目录中找到的任何*.swift文件都将自动编译。

在我的应用程序中,当我做这样的事情时:

代码语言:javascript
复制
var UIView = require('UIKit/UIView');
Ti.API.info('UIView => ' + UIView);

它起作用了。但是,如果我试图要求在快速文件中的任何类,我会得到一个错误,它找不到体系结构x86_64模块。

代码语言:javascript
复制
var sweetAlert = require('SweetAlert');
var cancelAnimatedView = require('CancelAnimatedView');

在查看SweetAlert源代码时,我还注意到SweetAlert类是open,而其他类只是普通类:

代码语言:javascript
复制
open class SweetAlert

我不是一个快速的开发人员,所以我不知道这意味着什么。

我在这里错过了什么?

编辑

一些进展..。因此,我发现我需要一个appc.js文件来定义src框架工作和MyFramework的名称。而且,我所做的require应该与快速文件的文件名相匹配。现在,当我编译时,我看到了一些关于快速编译的更有趣的输出,但是得到了一个错误:

代码语言:javascript
复制
[INFO]  Generating metabase for swift MyFramework /Users/ophir/Documents/Appcelerator_Studio_Workspace/HyperloopTest1/src/SweetAlert.swift

2017-06-29T14:43:44.061Z | ERROR  | An uncaught exception was thrown!
Cannot read property '1' of null

2017-06-29T14:43:44.064Z | ERROR  | Cannot read property '1' of null 

编辑2

我已经清除了快速文件中的所有脚本,并将其缩小为以下失败脚本:

导入基础导入UIKit导入QuartzCore

代码语言:javascript
复制
public enum AlertStyle {
    case success,error,warning,none
    case customImag(imageFile:String)
}

class SweetAlert: UIViewController {
}

class AnimatableView: UIView {
    func animate(){

    }
}

如果我删除func animate() { },它不会失败。即使这个函数在那个SweetAlert类中,它也会失败。据我所知,这是一个非常标准的快速代码。

所以这让我怀疑-是Hyperloop 2.0.0(!)准备好生产应用了吗?

EN

回答 1

Stack Overflow用户

发布于 2017-09-12 16:14:37

当我创建一个简单的Swift类并将其包含在一个钛/Appcelerator项目中时,我会收到一个类似的错误,而appc.js文件正是如何在稀疏文档中显示出来的。只要我不引用Swift文件中的类,该项目将在没有问题的情况下编译并在Xcode模拟器中运行。如果我在项目中引用该类,则会出现错误。基于编译日志,Swift文件确实编译到项目中,但是类似乎没有正确地链接到“需要”-ing到JavaScript代码中。

当我在网上搜索解决方案时,同样的问题到处都会出现,钛/Appcelerator团队从未提出过解决方案。我尝试过TitleSDK6.0.1、6.1.2和6.2.0,结果都是一样的;我尝试将Swift代码添加到现有的项目和新的项目中;我还卸载和重新安装了钛/Appcelerator。(我甚至尝试过在没有运气的情况下运行他们的示例应用程序!)

当我使用本机框架(如UIKit )时,Hyperloop确实可以工作,但它似乎还没有为第三方框架和类的生产应用做好准备。

我希望我的发现能帮助您和其他人调试项目,但不幸的是,我认为我将无法在此之外提供太多帮助。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44816745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档