我正在尝试构建自己的钛模块。为此,我创建了一个 UncloudedModule.java 文件:
@Kroll.module(name="Unclouded", id="vub.ac.be.unclouded")
public class UncloudedModule extends KrollModule {
// Standard Debugging variables
private static final String TAG = "UncloudedModule";
public UncloudedModule() {
super();
}
public UncloudedModule(TiContext context) {
super(context);
}
@Kroll.onAppCreate
public static void onAppCreate(TiApplication app) {
}
}
和一个 UncloudedProxy.java 文件:
@Kroll.proxy(creatableInModule = UncloudedModule.class)
public class UncloudedProxy extends KrollProxy {
private final Unclouded unclouded;
// Constructor
public UncloudedProxy() {
super();
unclouded = Unclouded.getInstance();
}
@Kroll.method
public Network goOnline() {
return unclouded.goOnline();
}
@Kroll.method
public void goOffline() {
unclouded.goOffline();
}
}
正如在 Android Module 开发指南中可以读到的那样,可创建的 InModule 注释应该自动将> createUnclouded> 方法添加到 UncloudedModule 中。但是,这不会发生,因为找不到.createUnclouded方法,而可以使用其他方法(在UncloudedModule中定义)。我的设置:
一些附加信息:
- 应用类型:移动
- 钛合金SDK:3.1.3 (13-09-18 12:00 222f4d1)
- 平台和版本:Android 4.2.2
- 主机操作系统:OSX 10.8.4 钛
- 工作室:钛命令行界面,CLI 版本 3.2.1,钛 SDK 版本 3.2.1.GA
对于那些有同样问题的人,这篇文章帮助我解决了它:http://developer.appcelerator.com/question/153993/how-to-create-a-proxy#answer-264746
需要删除 bin、库和构建文件夹中的文件。然后做一个 干净,在日食中。毕竟,它往往会建立起来。
就我而言,只需删除build/*和libs/*然后干净就可以了!