हम कैसे फ़ाइलें, फ़ोटो, एक सरल स्ट्रिंग आदि, जैसे किसी कैलेंडर ईवेंट में कुछ अतिरिक्त डेटा संलग्न कर सकते हैं करने के लिए निजी डेटा देते हैं ..कैसे एंड्रॉयड कैलेंडर इवेंट
मैं बढ़ाया गुण और के माध्यम से कुछ अतिरिक्त डेटा डालने में समर्थ इस्तेमाल किया विस्तारित गुण
Uri extendedProperties=Uri.parse("content://com.android.calendar/extendedproperties");
ContentValues extendedValues=new ContentValues();
extendedValues.put("event_id", id);
extendedValues.put("name",key);
extendedValues.put("value",value);
getApplicationContext().getContentResolver().insert(extendedProperties, extendedValues);
और बाद में जैसे
नीचेUri extentdedProperties=Uri.parse("content://com.android.calendar/extendedproperties");
CursorextendedPropertires Cursor=getContentResolver().query(extentdedProperties,null,"event_id = "+Id +",null,null);
यह एंड्रॉयड 2.2 के साथ ठीक काम करता है कि डेटा पुनः प्राप्त करने में सक्षम ... अगर Android 4.0 (Ice करोड़ में परीक्षण किया गया एक ही कोड ईम सैंडविच)। यह एक त्रुटि फेंक रहा है कि केवल सिंक एडेप्टर सामग्री तक पहुंच सकते हैं: //com.android.calendar/extendedproperties।
इसलिए मैंने क्वेरी को "callerissyncadapter" के रूप में निकाला। अब मैं विस्तारित गुणों को सम्मिलित करने में सक्षम हूं। लेकिन एक बार घटना सर्वर से समन्वयित हो जाती है, सर्वर द्वारा विस्तारित गुण हटाए जा रहे हैं।
यहां तक कि इन बढ़ाया गुण पूरी तरह से कैलेंडर प्रदाताओं द्वारा समर्थित नहीं हैं (गूगल के अलावा अन्य)
वहाँ अन्य घटना कैलेंडर extendedproperties से कुछ अतिरिक्त डेटा संलग्न करने के लिए कोई तरीका है या हम एक में इस विस्तारित गुण का उपयोग कर सकते अधिक बेहतर तरीका।
निजी स्टोर में किसी ईवेंट को कुंजी रखने का कोई विश्वसनीय तरीका नहीं है। यदि आप ईवेंट का खाता फिर से हटाते हैं और जोड़ते हैं, तो दोनों ईवेंट का _id और _sync_id बदल सकता है, उदा। एक्सचेंज-टाइप खाता। – OferR