集成Pusher Android Titanium Module时出现运行时错误

时间:2014-08-25 12:28:43

标签: android titanium runtime-error titanium-modules

我一直在尝试将Pusher Android模块集成到我的应用中。经过多次努力,我能够编译模块并将其与我的应用程序打包在一起。但是现在当我尝试在我的应用程序中要求添加模块时,我收到RunTime错误。 我对Android的经验有限。有人可以说我在这里做错了什么。 环境:

  • 申请类型:手机
  • Titanium SDK:3.3.0.GA
  • 平台&版本:Android 16,
  • 设备:Android模拟器
  • 主机操作系统:Windows 7
  • Titanium Studio:3.3.0.201407100905
  • 日志:

    [ERROR] :  TiApplication: (KrollRuntimeThread) [1375,1375] Sending event: exception on thread: KrollRuntimeThread msg:java.lang.UnsatisfiedLinkError: Cannot load library: reloc_library[1306]:    37 cannot locate '__cxa_end_cleanup'...
    [ERROR] :  TiApplication: ; Titanium 3.3.0,2014/07/11 12:36,787cd39
    [ERROR] :  TiApplication: java.lang.UnsatisfiedLinkError: Cannot load library: reloc_library[1306]:    37 cannot locate '__cxa_end_cleanup'...
    [ERROR] :  TiApplication:
    [ERROR] :  TiApplication:   at java.lang.Runtime.loadLibrary(Runtime.java:370)
    [ERROR] :  TiApplication:   at java.lang.System.loadLibrary(System.java:535)
    [ERROR] :  TiApplication:   at org.appcelerator.kroll.runtime.v8.V8Runtime.loadExternalModules(V8Runtime.java:114)
    [ERROR] :  TiApplication:   at org.appcelerator.kroll.runtime.v8.V8Runtime.initRuntime(V8Runtime.java:81)
    [ERROR] :  TiApplication:   at org.appcelerator.kroll.KrollRuntime.doInit(KrollRuntime.java:175)
    [ERROR] :  TiApplication:   at org.appcelerator.kroll.KrollRuntime$KrollRuntimeThread.run(KrollRuntime.java:109)
    [ERROR] :  AndroidRuntime: FATAL EXCEPTION: KrollRuntimeThread
    [ERROR] :  AndroidRuntime: java.lang.UnsatisfiedLinkError: Cannot load library: reloc_library[1306]:    37 cannot locate '__cxa_end_cleanup'...
    [ERROR] :  AndroidRuntime:
    [ERROR] :  AndroidRuntime:  at java.lang.Runtime.loadLibrary(Runtime.java:370)
    [ERROR] :  AndroidRuntime:  at java.lang.System.loadLibrary(System.java:535)
    [ERROR] :  AndroidRuntime:  at org.appcelerator.kroll.runtime.v8.V8Runtime.loadExternalModules(V8Runtime.java:114)
    [ERROR] :  AndroidRuntime:  at org.appcelerator.kroll.runtime.v8.V8Runtime.initRuntime(V8Runtime.java:81)
    [ERROR] :  AndroidRuntime:  at org.appcelerator.kroll.KrollRuntime.doInit(KrollRuntime.java:175)
    [ERROR] :  AndroidRuntime:  at org.appcelerator.kroll.KrollRuntime$KrollRuntimeThread.run(KrollRuntime.java:109)
    

1 个答案:

答案 0 :(得分:1)

您应该检查NDK路径并添加编译器选项“-lsupc ++”,因为您的代码可能正在使用C ++异常机制并在某处调用__cxa_end_cleanup。 lsupc ++(libsupc ++。a)

另外,你应该添加-fno-rtti以避免其他可能遇到的编译错误,这是因为在类内存布局中没有动态类型信息编译所有android的C ++类。

我希望我的回答可以帮助你;)