我在5.4.0GA sdk上使用appcelerator的facebook模块的5.2.0版本。我能够发布一个链接到facebook与以下代码:
var data = {link: "http://www.stackfish.com" };
fb.requestWithGraphPath('me/feed', data,"POST",showRequestResult);
但是当我尝试使用示例代码发布照片时,我发现我得到一个数组突变错误。以下是在IOS上导致错误的代码(在android上可以正常工作):
if ( fb.getLoggedIn() == true )
{
// Ti.API.info('1.5.5 PostTo FacebookLogged In Perissions = ' + fb.permissions);
Titanium.Media.openPhotoGallery({
success:function(event)
{
var data = {picture: event.media, caption: 'test'};
Titanium.Facebook.requestWithGraphPath('me/photos', data, "POST", showRequestResult);
},
cancel:function()
{
},
error:function(error)
{
},
allowEditing:true
});
错误如下:
[ERROR] : Script Error {
[ERROR] : column = 2506;
[ERROR] : line = 1;
[ERROR] : message = "*** Collection <__NSDictionaryM: 0x14ee27430> was mutated while being enumerated.";
[ERROR] : sourceURL = "file:///var/containers/Bundle/Application/110C8EFE-A325-4D3C-A15C-AC0FFA89C418/Stackfish.app/alloy/controllers/PostReview.js";
[ERROR] : stack = "[native code]nsuccess@file:///var/containers/Bundle/Application/110C8EFE-A325-4D3C-A15C-AC0FFA89C418/Stackfish.app/alloy/controllers/PostReview.js:1:2506";
[ERROR] : }
有人知道我做错了什么吗?由于
看起来对我有效。我在这里为你创建了一个JIRA-ticket: MOD-2286
我们需要将快速迭代删除为经典迭代,以避免突变问题。请关注票务并在那里给予反馈,谢谢!