हर कोई शायद iPhone उपयोगकर्ताओं के "निगरानी" के आसपास हाल के दिनों के
प्रचार पर ध्यान देता है। ओ'रेली वाले लोग, जिन्होंने कुख्यात समेकित। डीबी फ़ाइल के बारे में जानकारी प्रकाशित की,
वे खुद आश्चर्यचकित हैं कि टेलीविजन और अन्य मीडिया पर कहानी कितनी गूंजती है।
लेकिन इस कहानी का जारी रहना और भी दिलचस्प है। यह संभव है कि आईओएस 4 के डेवलपर्स ने एंड्रॉइड के उदाहरण के बाद इस फ़ंक्शन को लागू किया, लेकिन असंगत कारणों की
वक्रता के कारण, उन्होंने इसे सही ढंग से लागू नहीं किया।
एक निश्चित डेवलपर मैग्नस एरिकसन ने आईफ़ोन के साथ घोटाले के बारे में सुना, अपने एंड्रॉइड स्मार्टफोन के कैश में तल्लीन करने का फैसला किया। और कुछ शोधों के बाद मुझे फाइल्स
cache.cell
और
cache.wifi
, जो कि ऊपर के
consolidated.db
cache.wifi
समान है। फाइलें
/data/data/com.google.android.location/files
फ़ोल्डर में स्थित हैं।
यहां डेटा का एक उदाहरण है जो वहां संग्रहीत है (असुरक्षित रूप में भी): ये निर्देशांक (देशांतर और अक्षांश) हैं, साथ ही समय और तारीख भी।
$ ./parse.py cache.cell
db संस्करण: १
कुल: 41
कुंजी सटीकता आत्मविश्वास। अक्षांश देशांतर समय
240: 5: 15: 983885 1186 75 57.704031 11.910801 04/11/11 20:03:14 +0200
240: 5: 15: 983882 883 75 57.706322 11.911692 04/13/11 01:41:29 +0200
240: 5: 75: 4915956 678 75 57.700175 11.976824 04/13/11 11:52:37 +0200
240: 5: 75: 4915953 678 75 57.700064 11.976629 04/13/11 11:53:09 +0200
240: 7: 61954: 58929 1406 75 57.710205 11.921849 04/15/11 19:46:31 # 0200
240: 7: 15: 58929 -1 0 0.000000 0.000000 04/15/11 19:46:32 +0200
240: 5: 75: 4915832 831 75 57.690024 11.998419 04/15/11 16:13:53 +0200
एरिकसन ने एक
प्रोग्राम लिखा जो इन फाइलों के निर्देशांक के साथ डेटा को खोजता और प्रदर्शित करता है। आप अपने फोन पर इंस्टॉल और देख सकते हैं।
हालांकि, एंड्रॉइड डिवाइस पर यह सुविधा कैसे काम करती है, इसमें एक महत्वपूर्ण अंतर है।
// Maximum time (in millis) that a record is valid for, before it needs
// to be refreshed from the server.
private static final long MAX_CELL_REFRESH_RECORD_AGE = 12 * 60 * 60 * 1000; // 12 hours
private static final long MAX_WIFI_REFRESH_RECORD_AGE = 48 * 60 * 60 * 1000; // 48 hours
// Cache sizes
private static final int MAX_CELL_RECORDS = 50;
private static final int MAX_WIFI_RECORDS = 200;
यहां, संग्रहीत डेटा की अधिकतम मात्रा क्रमशः कोशिकाओं के लिए 50 प्रविष्टियों और वाईफाई अंकों के लिए 200 प्रविष्टियों तक सीमित है। एक समय सीमा भी है: मधुकोश के लिए 12 घंटे और वाईफाई के लिए 48 घंटे, जबकि iPhone में
महीनों के लिए एक पूर्ण संग्रह है (चूंकि iOS 4 स्थापित किया गया था)।
जैसा कि आईफोन के मामले में, यदि ग्राहक उस सेल के कवरेज क्षेत्र में है जहां वह पहले था, तो
पुरानी जानकारी को नए के साथ बदल दिया जाता है । वैसे, इस कारण से, iPhone से "जासूस" उतना डरावना नहीं है जितना पहले लगता था। ज्यादातर मामलों में, यह डेटा आमतौर पर उपयोगकर्ता के आंदोलनों के इतिहास को संकलित करने के लिए उपयुक्त नहीं है, जब तक कि आप केवल अद्वितीय मार्गों के साथ व्यक्तिगत यात्राएं नहीं देख सकते हैं।
एरिक्सन के अनुसार, यह सुविधा एंड्रॉइड में उसी तरह से काम करती है जैसे आईफोन में: निर्देशांक की गणना उसी तरह से की जाती है, जो निकटतम कोशिकाओं के निर्देशांक के अनुसार की जाती है, और संभवतः, समय-समय पर Apple / Google को भेजी जाती है। अंतर यह है कि Google ने बड़े पैमाने पर डेटा सुरक्षा के लिए संपर्क किया, और Apple डेवलपर्स ने डेटा विनाश की स्थितियों के बारे में चिंता किए बिना स्पष्ट रूप से एक बुरा बग बनाया, और अब वे
कर्म के साथ
अपनी ब्रांड प्रतिष्ठा की
कीमत चुका रहे
हैं । जाहिर है, बग आईओएस के लिए अगले पैच में तय किया जाएगा।