1

サードパーティのオープン ソース ライブラリを使用するために、Hyperloop を使用しようとしています。使いたいライブラリはSweet Alert iOSです。

ライブラリには迅速なファイルがあります。このファイルをプロジェクトのメイン フォルダー内の src ディレクトリ内に配置しました (src フォルダー内にある必要がありますか? プロジェクトで他のフォルダーを使用できますか? サブディレクトリはどうですか?)。

チタンのドキュメントによると:

src ディレクトリにある *.swift ファイルはすべて自動的にコンパイルされます

私のアプリでは、次のようなことをすると:

var UIView = require('UIKit/UIView');
Ti.API.info('UIView => ' + UIView);

できます。しかし、swift ファイル内のいずれかのクラスを要求しようとすると、アーキテクチャ x86_64 モジュールが見つからないというエラーが表示されます。

var sweetAlert = require('SweetAlert');
var cancelAnimatedView = require('CancelAnimatedView');

SweetAlert のソース コードを見ると、SweetAlert クラスはopen他のクラスが単なる通常のクラスであることにも気付きます。

open class SweetAlert

私は迅速な開発者ではないので、それが何を意味するのかよくわかりません。

ここで何が欠けていますか?

編集

いくつかの進歩...フレームワークとMyFrameworkの名前をappc.js定義しているファイルが必要であることがわかりました。srcそして、require私が行うことは、迅速なファイルのファイル名と一致する必要があります。コンパイルすると、迅速なコンパイルに関する興味深い出力が表示されますが、エラーが発生します。

[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

Swift ファイル内のすべてのスクリプトをクリアし、次の失敗したスクリプトに絞り込みました。

import Foundation インポート UIKit インポート QuartzCore

public enum AlertStyle {
    case success,error,warning,none
    case customImag(imageFile:String)
}

class SweetAlert: UIViewController {
}

class AnimatableView: UIView {
    func animate(){

    }
}

を削除しfunc animate() { }ても失敗しません。この関数がその 1 つの SweetAlert クラス内にある場合でも、失敗します。そして、私が読んだことから、これはかなり標準的な迅速なコードです。

これは私が疑問に思うことです.Hyperloop 2.0.0(!) は本番アプリの準備ができていますか?

4

1 に答える 1