यदि मेरे पास मेरे फायरबेस संदर्भ में संग्रहीत 50,000 आइटमों की एक सूची है, और क्लाइंट ऑनलाइन और सुनने के आखिरी बार से 5 आइटम उस सूची में जोड़े गए हैं, तो मुझे किस कॉलबैक का उपयोग करना होगा कि यह केवल 5 नई वस्तुओं के लिए ट्रिगर किया गया है जो जोड़ा गया है?फायरबेस ऑन चाइल्ड नए डेटा के लिए जोड़ा गया
मेरे पास ऑफ़लाइन दृढ़ता है मेरे क्लाइंट पर Firebase.getDefaultConfig().setPersistenceEnabled(true);
के साथ। मेरे पास संदर्भ में जोड़े गए बच्चों के लिए एक गतिविधि सुनने के लिए एक श्रोता है। प्रत्येक बार गतिविधि बनाई जाती है onChildAdded
संदर्भ में सभी डेटा के लिए बुलाया जाता है। क्या onChildAdded
और onChildRemoved
को अपने स्थानीय कैश और फायरबेस सर्वर पर डेटा के बीच केवल "diff" के लिए बुलाया जा सकता है? या यदि यह संभव नहीं है, तो फायरबेस से सबसे हालिया अपडेट के बाद केवल उन onChild*
कॉलबैक को ट्रिगर करने के लिए?
आप पहले से ही onComplete कॉलबैक का उपयोग कर की कोशिश की है:
तो प्रत्येक आइटम और उसके बाद के लिए
Firebase.ServerValue.TIMESTAMP
के साथ एकtimestamp
जोड़ने [अपडेट()] के लिए (https://www.firebase.com/docs/web/api/firebase/update.html)? –एंड्रॉइड प्रलेखन से, ऐसा लगता है कि अपडेटChildren() setValue() के समान है। मैं नहीं जानता कि इसका उपयोग कैसे किया जा रहा है यह जानने के लिए कि मैं क्या करने की कोशिश कर रहा हूं। मैंने इस प्रश्न में एक उदाहरण जोड़ा है जो स्पष्ट हो सकता है कि मैं स्पष्ट करने की कोशिश कर रहा हूं। –