我正在为trigger.io构建iOS模块。我在ios-inspector
应用程序中按照需要运行它。
我已尝试按照此处的文档构建模块: https://trigger.io/docs/current/api/native_modules/the_basics.html#ios_2
我收到了生成的inspector/ios-inspector/build/module.a
我然后将module.a
复制到module/ios/module.a
然后我进入触发工具包并提出版本号并上传新模块。然后在工具包应用程序部分中,我选择新版本的模块并构建应用程序。
在我的应用代码中
for(var prop in forge.my_module){
console.log("prop==", prop, forge.my_module[prop]);
}
我得到的唯一属性是:
[ INFO] Console.log: prop==,showAlert,function (c, b, a) {forge.internal.call("my_module.showAlert",{text:c},b,a);}
原始showAlert
项目中的ios-inspector
方法。但是,我不再拥有该方法的任何Objective C代码。
我觉得我在这里错过了一个明显的步骤。
答案 0 :(得分:1)
添加客观的C API方法将允许您像这样调用它们:
forge.internal.call('my_module.my_method', {my_param: 2});
没有为您生成JavaScript方法,它们实际上是在module/javascript/module.js
中明确定义的。制作模块时生成的默认module.js
包含以下内容:
// Expose the native API to javascript
forge.my_module = {
showAlert: function (text, success, error) {
forge.internal.call('my_module.showAlert', {text: text}, success, error);
}
};
您应该可以在那里添加API。有关详细信息,请参阅https://trigger.io/docs/current/api/native_modules/adding_javascript.html。