使用forge.flurry.setLocation时的NumberFormatException

时间:2013-05-16 23:52:38

标签: android trigger.io flurry

我正在尝试在我的trigger.io应用中实施Flurry Analytics。在Android设备上执行example for setLocation时:

forge.geolocation.getCurrentPosition(function (position) {
    forge.flurry.setLocation(position.coords);
});

我收到以下错误:

Error while executing API method: flurry.setLocation  

message: "Forge Java error: NumberFormatException: Invalid BigInteger: 45.5150396"  
type: "UNEXPECTED_FAILURE"  
full_error:
java.lang.NumberFormatException: Invalid BigInteger: 45.5150396
  at java.math.BigInt.invalidBigInteger(BigInt.java:124)
  at java.math.BigInt.checkString(BigInt.java:180)
  at java.math.BigInt.putDecString(BigInt.java:128)
  at java.math.BigInteger.<init>(BigInteger.java:183)
  at com.google.gson.internal.LazilyParsedNumber.longValue(LazilyParsedNumber.java:51)
  at com.google.gson.JsonPrimitive.getAsLong(JsonPrimitive.java:233)
  at io.trigger.forge.android.modules.flurry.API.setLocation(API.java:65)
  at java.lang.reflect.Method.invokeNative(Native Method) at java.lang.reflect.Method.invoke(Method.java:511)
  at io.trigger.forge.android.core.ForgeApp.callJavaFromJavaScript(ForgeApp.java:315)
  at io.trigger.forge.android.core.ForgeJSBridge$1.run(ForgeJSBridge.java:25)
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
  at java.lang.Thread.run(Thread.java:856)

我似乎能够通过舍入position.coords的纬度和经度来解决这个问题,但我会牺牲一点准确性。

我在这里做错了什么,或者这是一个可以在将来的版本中修复的错误?

1 个答案:

答案 0 :(得分:2)

这看起来像我们的Flurry集成代码中的一个错误:他们期待浮动,当然,我们只是错误地从参数中提取数据。

我们将在下一个平台版本中修复。