我正在尝试在onStart()事件上运行一些插件初始化代码,但是从我的应用程序运行时它没有被调用。
例如,以下内容未运行:
public class EventListener extends ForgeEventListener implements PluginClient {
@Override
public void onStart()
{
super.onStart();
// Some init code here
logOutput("Plugin initialized");
}
奇怪的是,事件在ForgeInspector上运行正常,我们可以在LogCat上看到:
07-03 16:26:00.622: D/Forge(25867): Returned: {"event":"inspector.eventInvoked","params":{"name":"onStart","class":"io.trigger.forge.android.modules.myplugin.EventListener"}}
07-03 16:26:01.052: D/SNP(25867): Plugin initialized
我错过了什么或者我是否需要从JS方面调用它?
更新
事实证明onStart()是被调用的,但是我的插件初始化代码出错了它没有运行。我很难在App / outside Inspector上调试它。
更新2:
我设法调试了问题,结果发现我正在使用的lib中的一段代码导致了问题:
localProperties.load(mySDK.class.getResourceAsStream("/sdk.properties"));
再一次,它在Inspector上读取了sdk.properties,但是在我的应用程序上它会抛出这个错误:
07-12 11:01:39.736: D/SNP(10848): java.lang.NullPointerException: in == null
07-12 11:01:39.736: D/SNP(10848): java.util.Properties.load(Properties.java:246)
更新3:
知道了!问题在于Trigger.IO在最终版本中不包含SDK属性文件。有办法解决这个问题吗?
谢谢!