जो मैं समझता हूं, UIDocument
कक्षा फ़ाइल में सहेजे गए परिवर्तनों को ट्रैक कर सकती है और फ़ाइल को लॉक भी कर सकती है ताकि इसे एक से अधिक व्यक्ति द्वारा चेक आउट नहीं किया जा सके। लेकिन क्या होता है यदि उपयोगकर्ता बल ऐप को सहेजने के बिना छोड़ देता है या ऐप क्रैश हो जाता है? मैं UIDocument
में सहेजे गए परिवर्तनों को पुनर्प्राप्त करने के बारे में कैसे जाउंगा ताकि जब ऐप फिर से लॉन्च हो जाए तो यह हाल ही में सहेजे गए परिवर्तनों के साथ UIDocument
को फिर से खोल देगा? क्या मुझे बदलने से पहले प्रत्येक फ़ाइल की डुप्लिकेट प्रतियां बनाने की आवश्यकता है और जब तक उपयोगकर्ता परिवर्तनों को सहेजता है तब तक अस्थायी डुप्लिकेट को बदलता है? या ऐप्पल एक सरल कार्यान्वयन प्रदान करता है? मैंने एन्कोडिंग और Data
फ़ाइल सामग्री और undoManager
प्रत्येक UIDocument
आवृत्ति को कैश के रूप में समय-समय पर संग्रहीत करने पर भी विचार किया है। क्या इससे काम हो जायेगा?यूआईडी दस्तावेज ऐप क्रैश/फोर्स पर असुरक्षित परिवर्तनों को पुनर्प्राप्त करें
उत्तर
UIDocument
और UIManagedDocument
अन्य प्रणाली की कमी (उदाहरण के लिए सम्मान से ट्रैकिंग (एक समारोह जहां सच लौटा सकते हैं या दस्तावेज़ बदल गया है बुला) और बचत डिस्क में परिवर्तन automagic परिवर्तन कार्य करें: यदि किसी अन्य प्रक्रिया को पढ़ने के लिए कोशिश कर रहा है फ़ाइल)। यदि ऐप्पल बचत करता है, तो वह बहुत ही सुरक्षित तरीके से है, यदि आप बेस क्लास विधियों को ओवरराइड नहीं करते हैं। जब सेव ऑपरेशन ट्रिगर होता है, तो ऐप्पल एक अस्थायी फ़ाइल में सहेजता है और यदि सहेजना सफलतापूर्वक एक त्वरित नाम बदल जाता है और मूल फ़ाइल को हटा दिया जाता है (आईआईआरसी का नाम बदलना/हटाना परमाणु है, या परमाणु के पास है)। आप मान सकते हैं कि सहेजने का ऑपरेशन सभी मामलों के 99.99% के लिए फाइल सिस्टम में दूषित फ़ाइल नहीं छोड़ता है।
ऐप्पल ट्रिगर्स विशिष्ट बिंदुओं पर पृष्ठभूमि में संचालन को सहेजता है (जैसे: टाइम आधारित, ऐप पृष्ठभूमि में स्विच किया जाता है, इससे पहले कि अन्य प्रक्रिया फ़ाइल तक पहुंचने का प्रयास करे, ...), लेकिन मुझे कोई स्पष्ट बयान नहीं मिला कि क्या होता है जब आवेदन बल छोड़ दिया जाता है।
उसने कहा, तर्क और सामान्य ज्ञान मुझे बताता है कि यदि आप किसी एप्लिकेशन को छोड़ने के लिए मजबूर करते हैं, तो वर्तमान दस्तावेज़ स्थिति सहेजा नहीं जा सकता है। बल-छोड़ने के लिए मैन्युअल रूप से "त्वरित बचत" को लागू करने से तकनीकी रूप से व्यवहार्य नहीं हो सकता है। आवधिक पृष्ठभूमि सहेजने का ऑपरेशन (जैसे यूआईडी दस्तावेज पहले से ही करता है) सबसे अच्छी रणनीति हो सकती है।
पूर्ववत प्रबंधक की स्थिति को सहेजने के बारे में: यह UIDocument को सहेजने के समान तकनीकी समस्या होगी। कोई घटना या कुछ भी नहीं है जो एप्लिकेशन को बताता है कि यह बल-छोड़ने वाला है।
आपको Apple Documentation पढ़ना चाहिए। यह बहुत लंबा है लेकिन यह प्रक्रिया को और विस्तार से बताता है। ऐप्पल लगाए गए रणनीति को लागू करने के लिए आपकी सलाह होगी। ये रणनीतियों ध्वनि हैं, और ऐप्पल पारिस्थितिक तंत्र में और उनके उपयोगकर्ताओं के लिए कई अनुप्रयोगों के लिए काम करते हैं। इसके शीर्ष पर, आपके पास कम कार्यान्वयन लागत और स्वैच्छिक सुधार (जब ऐप्पल उनके कार्यान्वयन को अपडेट करता है)।
- 1. गिट असम्बद्ध परिवर्तनों को पुनर्प्राप्त करें
- 2. असुरक्षित परिवर्तनों का पता लगाना
- 3. AngularJS ऐप का नाम पुनर्प्राप्त करें
- 4. यूआईडी
- 5. आईओएस आईफोन हुक खुले इंस्टाग्राम को सीधे बिना दिखाए यूआईडी दस्तावेज इंटरैक्शन कंट्रोलर
- 6. निश्चित यूआईडी
- 7. पेज यूआईडी
- 8. यूआईडी कन्स्ट्रक्टर
- 9. वेब.config से मूल्यों को पुनर्प्राप्त करें और पुनर्प्राप्त करें
- 10. jslint संदेश को कैसे ठीक करें असुरक्षित '।'
- 11. अनुमति सूची पुनर्प्राप्त करें
- 12. Google फिट पर डेटा डालने वाले ऐप के पैकेज नाम को ठीक से कैसे पुनर्प्राप्त करें?
- 13. स्मार्ट कार्ड यूआईडी
- 14. मूल्यों को पुनर्प्राप्त करें mysqli_fetch
- 15. लेआउट परिवर्तनों पर एनीमेशन
- 16. डेटाबेस परिवर्तनों को सत्यापित करें (संस्करण-नियंत्रण)
- 17. एंड्रॉइड सुरक्षा बदलना यूआईडी
- 18. परिवर्तनों के बीच चेक-इन किए गए परिवर्तनों (या कार्य आइटम) की एक सूची कैसे पुनर्प्राप्त करें?
- 19. संतुष्ट पर विशिष्ट परिवर्तनों को सुनें?
- 20. प्रोटोबफ दस्तावेज जेनरेट करें?
- 21. symfony2 पर मौजूदा प्रोजेक्ट द्वारा composer.json को कैसे पुनर्प्राप्त करें?
- 22. रेल पर रूबी - कनेक्शन तारों को कैसे पुनर्प्राप्त करें
- 23. इकाई फ्रेमवर्क (3.5) - परिवर्तनों को अस्वीकार करें
- 24. असुरक्षित कोड
- 25. टीएफएस में हटाई गई शाखा को कैसे पुनर्प्राप्त करें?
- 26. nodemon - json फ़ाइलों में परिवर्तनों पर पुनरारंभ करें
- 27. एक पायथन पैकेज को कैसे दस्तावेज करें
- 28. एक और ऐप से स्ट्रिंग संसाधन पुनर्प्राप्त करें
- 29. strncpy असुरक्षित क्यों है?
- 30. असुरक्षित पैरामीटर को हैश में कनवर्ट करने में असमर्थ - रेल ऐप त्रुटि पर रूबी
आपकी सिफारिशें एक तरफ- मैं उपयोगकर्ता को सहेजने का विकल्प चुनने तक दस्तावेज़ में सहेजे गए परिवर्तनों को अनुमति देने के बारे में कैसे जाउंगा, जबकि किसी भी सहेजे गए परिवर्तनों को पुनर्प्राप्त नहीं कर रहा हूं, जैसे कंप्यूटर बंद हो जाता है? –