Trigger.io执行API方法时出错:forge.contact.selectById

时间:2012-12-16 22:41:31

标签: android trigger.io

我正在将Trigger.io用于iOS / Android应用,并尝试获取电话簿中所有电子邮件的列表。

我打电话

forge.contact.selectAll(selectAllSuccessCb, selectAllErrorCb);

然后迭代返回的每个联系人以获取完整的联系人详细信息,并提取电子邮件地址:

forge.contact.selectById(contactRef.id, function (contact) {
    // do stuff with contact email address(es) here
}

我正在测试的两个设备上有大约1400个联系人(应该是相同的 - 都签署在同一个Google帐户中)。三星Galaxy S Android 2.3.6工作正常。

Samsung Galaxy Nexus Android 4.1在8个联系人上失败,出现以下错误:

[WARNING] Error while executing API method: contact.selectById
[DEBUG] Returning: {"content":{"type":"UNEXPECTED_FAILURE","message":
"Forge Java error: NumberFormatException: Invalid int: \"null\"",
"full_error":"java.lang.NumberFormatException: Invalid int: \"null\"\n\tat 
java.lang.Integer.invalidInt(Integer.java:138)\n\tat java.lang.Integer.parseInt(Integer.java:355)\n\tat 
java.lang.Integer.parseInt(Integer.java:332)\n\tat 
io.trigger.forge.android.modules.contact.Util.contactToJSON(Util.java:340)\n\tat 
io.trigger.forge.android.modules.contact.API.contactIdToJSONObject(API.java:70)\n\tat 
io.trigger.forge.android.modules.contact.API.selectById(API.java:80)\n\tat 
java.lang.reflect.Method.invokeNative(Native Method)\n\tat java.lang.reflect.Method.invoke(Method.java:511)\n\tat 
io.trigger.forge.android.core.ForgeApp.callJavaFromJavaScript(ForgeApp.java:194)\n\tat 
io.trigger.forge.android.core.ForgeJSBridge.callJavaFromJavaScript(ForgeJSBridge.java:8)\n\tat 
android.webkit.BrowserFrame.stringByEvaluatingJavaScriptFromString(Native Method)\n\tat 
android.webkit.BrowserFrame.stringByEvaluatingJavaScriptFromString(Native Method)\n\tat 
android.webkit.BrowserFrame.loadUrl(BrowserFrame.java:271)\n\tat 
android.webkit.WebViewCore.loadUrl(WebViewCore.java:2029)\n\tat 
android.webkit.WebViewCore.access$1900(WebViewCore.java:57)\n\tat 
android.webkit.WebViewCore$EventHub$1.handleMessage(WebViewCore.java:1321)
android.os.Handler.dispatchMessage(Handler.java:99)\n\tat android.os.Looper.loop(Looper.java:137)
android.webkit.WebViewCore$WebCoreThread.run(WebViewCore.java:827)
java.lang.Thread.run(Thread.java:856)\n"},"status":"error","callid":"B40384E4-62A1-4460-866D-924855F3930F"}

这里有什么问题,我该如何解决这个问题?感谢

1 个答案:

答案 0 :(得分:1)

这是因为您的联系人数据库中的电子邮件或电话条目具有空类型...不太确定这是怎么发生的!但它已在平台的v1.4.25中修复。

http://docs.trigger.io/en/v1.4/release-notes.html#v1-4-25