बस दूसरों के संदर्भ के लिए, यहाँ .ab फ़ाइल प्रारूप पर कुछ पृष्ठभूमि है।
Android बैकअप (* .ab) फ़ाइल एक संकुचित TAR फ़ाइल है। यह DEFLATE एल्गोरिथम का उपयोग करके संपीड़ित है। उसके शीर्ष पर, एईएस एन्क्रिप्शन का उपयोग किया जा सकता है। यह तब निर्धारित किया जाता है जब आप बैकअप बनाते हैं, यदि आप एक पासवर्ड दर्ज करते हैं तो बैकअप एन्क्रिप्ट किया गया है, अन्यथा; कोई एन्क्रिप्शन नहीं है, यह केवल संपीड़ित है।
फ़ाइल का HEADER एक सामान्य DEFLATE आर्काइव से थोड़ा अलग है। इसमें बैकअप के बारे में जानकारी शामिल है और निम्नलिखित की तरह दिखता है:
ANDROID BACKUP
1
1
none
पहली पंक्ति "मैजिक" लाइन है । अगली पंक्ति एंड्रॉइड बैकअप फ़ाइल प्रारूप का संस्करण है। अगली पंक्ति एक बूलियन है (सही या गलत, 1 या 0) जो यह दर्शाता है कि फ़ाइल संपीड़ित है। अंतिम पंक्ति एन्क्रिप्शन का प्रकार है। यह उदाहरण किसी एन्क्रिप्शन का उपयोग नहीं कर रहा है। यदि कोई पासवर्ड था, तो लाइन "एईएस -256" पढ़ेगी। उसके बाद एन्क्रिप्शन सिफर है। यदि कोई पासवर्ड नहीं है, तो DEFLATE "संग्रह" शुरू होता है।
इसे Java Deflater का उपयोग करके संपीड़ित किया जाता है । जो कि, डेवलपर्स के नजरिए से, मुद्दों का कारण बनता है अगर आप इसे निकालने के लिए जावा के अलावा कुछ भी उपयोग करना चाहते हैं। मुझे ऐसा कुछ भी नहीं मिला है जो समान एल्गोरिथ्म का उपयोग करके इसे अपवित्र कर सके, भले ही मुझे जो कुछ भी मिला हो (जैसे सी # के लिए) "युक्ति" का पालन करना चाहिए।
उस के साथ, अपाचे 2.0 लाइसेंस के तहत एक खुला स्रोत परियोजना है , जो निकोले एलेनकोव द्वारा लिखित है जो टार फ़ाइल में .ab को निकालने की अनुमति देगा।
उपयोग:
java -jar abe.jar unpack <backup.ab> <backup.tar> <password>
यदि आप सुनिश्चित नहीं हैं कि वास्तव में इसका उपयोग कैसे करें (जो कि इस उत्तर के दायरे से परे है) Droid एक्सप्लोरर का अगला संस्करण v0.8.8.7 ( यहां उपलब्ध है ) आपको ठीक यही करने की अनुमति देगा, और अधिक, एक्सप्लोरर से सही। आप मेरे ब्लॉग पर सुविधाओं के बारे में अधिक पढ़ सकते हैं (हां, मुझे पता है, बेशर्म प्लग। मैं ऐसा करता हूं जब यह सवाल फिट बैठता है)