当我尝试在Firebase上保存数据时,我的控制台上会显示以下警告消息,并且数据所在的列表会刷新。大多数情况下,当我在Firebase中保存图像或视频网址然后图像视图调用网址时会发生这种情况,然后应用程序崩溃。
这是警告信息:
[WARN]:1 0x100401320 std :: __ 1 :: __ tree,std :: __ 1 :: allocator&gt ;,std :: __ 1 :: less,std :: __ 1 :: allocator> >,std :: __ 1 :: allocator,std :: __ 1 :: allocator> > > :: destroy(std :: __ 1 :: __ tree_node,std :: __ 1 :: allocator>,void *> ) [WARN]:2 0x100452208 std :: __ 1 :: __ tree,std :: __ 1 :: allocator&gt ;,std :: __ 1 :: less,std :: __ 1 :: allocator> >,std :: __ 1 :: allocator,std :: __ 1 :: allocator> > > :: destroy(std :: __ 1 :: __ tree_node,std :: __ 1 :: allocator>,void *> )
作为我正在使用的参考: - Titanium SDK 5.1.2.GA. - 亚马逊S3。 - 模块com.leftlanelab.firebase 1.1.1
数据存在于包含图像和文本的列表视图中。
这是我在js上的代码
function evalMedia(str) {
var TEMPLATE_TEXT = "messageTemplate";
var TEMPLATE_PHOTO = "imageTemplate";
var TEMPLATE_VIDEO = "videoTemplate";
var PHOTO = "/images/";
var VIDEO = "/videos/";
return (str.indexOf(PHOTO) != -1) ? ((str.indexOf(VIDEO) != -1) ? TEMPLATE_VIDEO : TEMPLATE_PHOTO) : TEMPLATE_TEXT;
}
function showDataUpdates(data) {
var updates = [];
for (i in data) {
updates.push({
message : {
value : data[i].message,
time : data[i].timestamp
},
msg : {
value : data[i].message,
key : i
},
mov : {
key : i,
},
image : {
image : data[i].message,
key : i
},
video : {
url : data[i].message
},
sender : {
text : data[i].sender
},
time : {
text : format(data[i].timestamp)
},
template : evalMedia(data[i].message)
});
}
sort = [];
sort = updates.sort(function(a, b) {
return parseFloat(a.message.time) - parseFloat(b.message.time);
});
$.loading.hide();
var items = [];
for(var k = 0; k < messages; k++){
if(sort[k])
items.push(sort[k]);
}
$.listMessages.sections[0].setItems(items);
updates = null;
}
var listMessages = Firebase.new('updates/' + args.item.post.id);
listMessages.on('value', function(snapshot) {
var _updates = snapshot.val();
if (evalObject(_updates)) {
showDataUpdates(_updates);
}else{
$.loading.hide();
}
});
调用网址的imageview是否存在问题,还是其他问题?