Android Nextcloud ऐप से गायब हुई फ़ाइल अपलोड सुविधा
(nextcloud.com)- Android के लिए Nextcloud में फ़ाइल अपलोड सीमित होने के बाद, Google ने 15 मई को पूरी फ़ाइल अपलोड permission बहाल करने का प्रस्ताव दिया, और Nextcloud टेस्ट रिलीज़ व रिकवरी अपडेट तैयार कर रहा है
- Google Play Store distribution में सभी फ़ाइल types के लिए read-write permission ब्लॉक हो गई, जिससे सिर्फ़ फ़ोटो और वीडियो जैसे कुछ media ही अपलोड किए जा सकते हैं
- Nextcloud के अनुसार, यह permission 2011 में दी गई थी और सुविधा 2016 से उपलब्ध थी, लेकिन सितंबर 2024 में ऐप अपडेट reject होने के साथ SAF और MediaStore API इस्तेमाल करने की मांग की गई
- Nextcloud का मानना है कि SAF ऐप्स के बीच फ़ाइल शेयरिंग और exposure के लिए है, और MediaStore API सिर्फ़ media files संभालता है, इसलिए पूरी फ़ाइल sync को replace करना मुश्किल है
- करीब 10 लाख Google Play Store users प्रभावित हुए, जबकि F-Droid distribution ने permission बनाए रखने वाला नया version दिया, जिससे समस्या Google Play Store distribution policy पर केंद्रित दिखती है
15 मई का permission बहाली प्रस्ताव
- Google ने 15 मई की सुबह Nextcloud से संपर्क कर, users के लिए गायब हुई functionality वापस लाने हेतु permission बहाल करने का प्रस्ताव दिया
- Nextcloud पहले एक test release तैयार कर रहा है, और अगर कोई समस्या नहीं हुई तो सभी features बहाल करने वाला final update अगले हफ्ते की शुरुआत तक rollout हो सकता है
- यह update notice 15 मई 14:50 CET पर जोड़ा गया
Android फ़ाइल अपलोड restriction का असर
- कई महीनों तक Android users के लिए Nextcloud फ़ाइल अपलोड उम्मीद के मुताबिक काम नहीं कर रहा था
- अपलोड की जा सकने वाली फ़ाइलें फ़ोटो और वीडियो जैसी कुछ media files तक सीमित रहीं
- दूसरे file types अपलोड नहीं किए जा सकते थे, जिससे Nextcloud Files ऐप में फ़ाइल sync का उद्देश्य काफ़ी प्रभावित हुआ
- users की शिकायतें Nextcloud help forum, GitHub, Reddit, ComputerBase forum जैसे कई channels पर आईं
Google Play Store permission बदलाव की प्रक्रिया
- Nextcloud Files ऐप को सभी फ़ाइल types के लिए read-write permission 2011 में दी गई थी
- सितंबर 2024 में Nextcloud Android ऐप update अचानक reject कर दिया गया
- Google ने सभी फ़ाइल access permission हटाने या ज़्यादा privacy-friendly विकल्पों के रूप में Storage Access Framework(SAF) या MediaStore API इस्तेमाल करने को कहा
- Nextcloud ने निष्कर्ष निकाला कि ये दोनों विकल्प पूरी फ़ाइल upload functionality की जगह नहीं ले सकते
- SAF का उपयोग Nextcloud files को दूसरे ऐप्स के साथ share या expose करने के लिए है, इसलिए Nextcloud इसे ऐप workflow को गलत समझकर की गई मांग मानता है
- MediaStore API सिर्फ़ media files तक access दे सकता है, इसलिए दूसरे file types को handle नहीं कर सकता
- Nextcloud का कहना है कि उसने 2024 के मध्य से कई बार आपत्ति दर्ज की और अतिरिक्त background साझा किया, लेकिन Google ने permission बहाली स्वीकार नहीं की
- users और customers को bug-fix updates उपलब्ध कराने की ज़रूरत थी, इसलिए Nextcloud ने Google की नई मांगों के अनुरूप सीमित upload functionality वाला update जारी किया
F-Droid और Google Play Store का अंतर
- Android ऐप खुद उस permission के साथ अब भी काम करता है
- Nextcloud ने बाहरी app store F-Droid पर नया version जारी किया
- feature limitation Google Play Store distribution से जुड़ी समस्या है
- तकनीक-समझ users F-Droid जैसे alternative app stores इस्तेमाल कर सकते हैं, लेकिन Nextcloud के अनुसार app store के करीब 10 लाख users के लिए यह व्यावहारिक विकल्प बनना मुश्किल है
Google पर Nextcloud की आलोचना
- Google ने permission cancellation की वजह security concerns बताई
- Nextcloud का कहना है कि वह 2016 में शुरुआत के बाद से यह feature देता आया है, और इस दौरान Google से उसे कभी security concerns नहीं बताए गए
- Nextcloud का रुख है कि कई Big Tech apps और Google के अपने apps के पास अब भी यह functionality है
- उसने आलोचना की कि platform का मालिक होने के नाते Google खुद को preferential treatment दे सकता है और वास्तव में ऐसा करता है
- Nextcloud इस मामले को छोटा तकनीकी detail नहीं, बल्कि एक छोटे software supplier के competing product की functionality कमजोर करने वाली gatekeeping की मिसाल मानता है
व्यापक competition policy का मुद्दा
- Nextcloud ने पुराने उदाहरण का ज़िक्र किया, जब Microsoft ने WordPerfect user experience खराब करने के लिए Windows की कुछ functionality रोक दी थी, और दावा किया कि आज Google security के नाम पर rules से competing products बनाना मुश्किल कर रहा है
- उसका मानना है कि छोटी कंपनियों के लिए legal action की लागत बड़ी होती है और EU में complaint करने पर भी बहुत समय लगता है, इसलिए प्रभावी remedy लगभग नहीं होती
- Nextcloud का कहना है कि उसने 2021 में करीब 40 कंपनियों और संगठनों के साथ इसी तरह के anti-competitive conduct पर complaint दर्ज की थी, लेकिन 4 साल बाद भी कुछ नहीं हुआ
- EU का Digital Markets Act मई 2023 में लागू होना शुरू हुआ, लेकिन Meta और Apple पर पहली fines अप्रैल 2025 में ही घोषित हुईं
- Nextcloud ने आलोचना की कि Meta और Apple पर क्रमशः 20 करोड़ यूरो और 50 करोड़ यूरो की fines, दुनिया भर के annual revenue के 10% तक संभव sanctions की तुलना में कम हैं, और Big Tech कंपनियों के लिए यह बस हल्की फटकार जैसा है
4 टिप्पणियां
आखिरकार permissions का मकसद तो यही है कि यूज़र अपनी मर्ज़ी से उन्हें अनुमति दे, लेकिन permission system अपनाकर ज़रूरी permissions को ही ब्लॉक कर देना, हाहा..
Hacker News की राय
Nextcloud की स्थिति में होने वाली परेशानी समझ में आती है। Everfind (Drive, OneDrive, Dropbox आदि में unified search) की टीम भी पिछले 1 साल से फ़ाइलें डाउनलोड करने, OCR चलाने और फिर यूज़र का full-text search index बनाने के लिए drive.readonly scope पाने की लड़ाई लड़ रही है
Google लगातार drive.file + drive.metadata.readonly पर टिके रहने को कहता है, लेकिन यह संयोजन continuous discovery को तोड़ देता है और नए या अपडेटेड documents के search results को बुरी तरह खराब कर देता है। निष्कर्ष यह है कि Google की “least privilege” वाली बयानबाज़ी सुनने में अच्छी लगती है, लेकिन असल में यह Big Tech की first-party apps को privileged access देता है और independent vendors को आधा-अधूरा काम करने वाला product निकालने या Play Store से बाहर कर दिए जाने की स्थिति में डाल देता है। अंततः users features और choices खो देते हैं, और छोटे developers copy-paste policy bots से अंतहीन लड़ाई में अपना समय जलाते रहते हैं
मैंने कई साल Google Workspace में PM के तौर पर काम किया है, और यह बाहर से दिखने की तुलना में कम दुर्भावनापूर्ण है। फैसले revenue के लिए optimize किए जाते हैं, और दूसरे features, खासकर enterprise customers के लिए features, कहीं ज्यादा priority पाते हैं। करीब 2012 से लगभग हर company enterprise revenue पर focus करने लगी, जिसकी कीमत end-user satisfaction ने चुकाई
मैं AOSP platform developer हूँ, और filesystem से जुड़ी राय मेरी निजी राय है, Google का प्रतिनिधित्व नहीं करती।
मैं Nextcloud इस्तेमाल नहीं करता और इस app को खास तौर पर देखा भी नहीं है, लेकिन अंदरूनी हालात को कुछ हद तक जानने वाले नजरिए से देखें तो इस use case में, जैसा दूसरों ने कहा है, SAF काम कर सकता है। Google Drive के पास वे permissions नहीं हैं जिनके बारे में Nextcloud दावा करता है कि Google उन्हें विशेष छूट के रूप में देता है, और Nextcloud app की तरह ही वह Play Store के जरिए distribute होता है। MANAGE_EXTERNAL_STORAGE जैसी permissions का अतीत में बहुत व्यापक रूप से, और कभी-कभी बेहद खराब तरीके से, दुरुपयोग हुआ है
[1] के excerpt के मुताबिक SAF में हर file I/O operation IPC call इस्तेमाल करता है, इसलिए करीब 20–30ms लगते हैं। अगर disk पर बहुत सारी files मौजूद हैं या नहीं यह जांचने और न होने पर बनाने जैसे file operations बढ़ जाएं, तो यह इतना धीमा हो जाता है कि Google के examples तक speed बढ़ाने के लिए workaround लगाते हैं। [3] के example में SAF से 15 सेकंड लगे, जबकि native
lsसे 6 milliseconds, और files सिर्फ 128 थीं।[1] https://github.com/K1rakishou/Fuck-Storage-Access-Framework#...
[2] https://www.reddit.com/r/androiddev/comments/ga5u72/saf_is_s...
[3] https://issuetracker.google.com/issues/73044953#comment5
[4] https://magicbox.imejl.sk/forums/topic/storage-access-framew...
[5] https://issuetracker.google.com/issues/130261278#comment52
ऐसी permission से device से निकाले जा सकने वाले data की मात्रा बहुत बड़ी हो सकती है, और यह सिर्फ “users को खुद से बचाने” वाली बात नहीं है। मुझे नहीं लगता कि किसी भी app के लिए यह permission enable करना सुरक्षित लगेगा। पूरे device data को sync करने की capability उपयोगी है, लेकिन Google के नजरिए से यह ऐसी स्थिति है जहां करे तो भी आलोचना, न करे तो भी आलोचना।
असल में ये लगभग ransomware जैसे हैं जिन्हें लोग predatory loans लेने के लिए “स्वेच्छा से” install करते हैं, लेकिन अक्सर उन्हें पता नहीं होता कि ये सच में कैसे काम करते हैं। अगर वे पैसा नहीं चुका पाते, तो ये सिर्फ phone lock करने तक नहीं रुकते; phone से निकाले गए data का इस्तेमाल करके contacts को nude photos भेजने की धमकी देते हैं, या data से पहचाने गए परिवार वालों को जान से मारने की धमकी तक देते हैं — https://www.welivesecurity.com/en/eset-research/beware-preda...
अगर इसे पूरी तरह phased out करने की योजना है, तो alternative पर्याप्त अच्छा होना चाहिए, लेकिन कुछ sub-comments देखकर ऐसा नहीं लगता। मैंने Android development कभी नहीं किया और ऐसी चीजों की वजह से शायद आगे भी नहीं करूंगा, इसलिए ठीक से judge करना मुश्किल है। लेकिन मेरी समझ में Google Drive app cloud storage के ऊपर एक UI जैसा है, और Backup जैसे दिलचस्प हिस्से उस app के जरिए handle नहीं होते। Google Drive को इस हिस्से में विशेष लाभ मिलता है, और वैसी functionality की नकल करने के लिए extra permissions चाहिए।
[0]: https://support.google.com/googleone/answer/9149304?hl=en&co...
official SyncThing Android app ने distribution बंद किया, इसकी वजह भी यही है। Forks हैं, लेकिन मेरी जानकारी में वे Play Store पर नहीं हैं
इसके बजाय
content://URL मिलता है, और उसे file descriptor में बदलने के लिए Java/Kotlin bridge चाहिए। यह काम SyncThing में ही करना होगा। हालांकि syncthing-fork ने किसी तरह इसे काम करने लायक बना दिया लगता है, इसलिए शायद कोई और workaround भी हो। लेकिन मेरी जानकारी में यह समस्या NextCloud app पर लागू नहीं होती।फिर भी official client का अचानक गायब हो जाना थोड़ा चौंकाने वाला था
“SAF हमारे files को दूसरे apps के साथ share/expose करने के लिए है, इसलिए इसे इस्तेमाल नहीं किया जा सकता” कहना सही नहीं है। SAF इस्तेमाल किया जा सकता है
NextCloud के लिए यह पूरी तरह फिट न होने की कुछ वजहें हैं। उदाहरण के लिए पूरा internal storage, Downloads folder, SD card root share नहीं किए जा सकते। फिर भी NextCloud की अपनी व्याख्या समझना मुश्किल है
https://developer.android.com/training/data-storage/shared/d...
इस पर कल भी चर्चा हुई थी: https://news.ycombinator.com/item?id=43970959
उदाहरण के लिए, क्या Google products में ऐसा कोई है जो NextCloud द्वारा मांगी गई वही permission इस्तेमाल करता हो, या सच में SAF इस्तेमाल करता हो, खासकर उन features में भी जो यहां NextCloud जैसा काम करते हैं। मैं पक्का जानना चाहता हूं कि Google, NextCloud और दूसरे app developers पर लागू नियमों का खुद भी ठीक वैसा ही पालन करता है या नहीं
यह exclusive/monopolistic behaviour है। अगर Google यह सुनिश्चित करने के लिए जरूरी due diligence में investment करने से इनकार करता है कि दूसरी कंपनियां Google के बिल्कुल समान तरीके से operate कर सकें, तो Google उस मैदान को manage करने के योग्य नहीं है
अगर oversight में खर्च आता है तो workload monitor करने के लिए कंपनियों से नाममात्र की fee ली जा सकती है। दूसरे participants को रोक देना उचित प्रतिक्रिया नहीं है
Google ने Nextcloud से संपर्क करके permissions restore करने की पेशकश की है। उत्सुकता है कि यह फैसला technical तर्कों की वजह से था, या antitrust trial और media coverage persuasive factor बने
यही कारण है कि EU का Digital Markets Act मौजूद है, और उस कानून में वास्तविक enforcement power की जरूरत क्यों है
अगर Google Android पर Nextcloud की full file access रोकता है, जबकि अपने apps और बड़े enterprise players को चुपचाप अनुमति देता है, तो वह “security” नहीं बल्कि control है। Nextcloud open standards पर आधारित European privacy-first alternative है और GDPR requirements के साथ पूरी तरह align हो सकता है। core functionality रोकना और अपनी services को preference देना platform power abuse का textbook example है। Android को open होना चाहिए था, लेकिन ऐसी moves दिखाती हैं कि कम से कम Play Services वाला version एक और walled garden है। अगर EU digital sovereignty और fair competition को गंभीरता से लेता है तो उसे इस तरह के behaviour को रोकना होगा। वरना कितनी भी compliant, open और user-friendly European technology हो, उसके जीतने की संभावना नहीं रहेगी
“सिर्फ एक folder sync” feature high-risk permission के बिना भी SAF से संभव है। मौजूदा profile migration में नए API पर switch करते समय user को folder permission फिर से देनी होगी, इसलिए यह झंझट भरा हो सकता है। पूरे virtual storage, Downloads folder, या Samsung जैसे vendors द्वारा blacklist किए गए अतिरिक्त folders की sync नए API से संभव नहीं है, लेकिन Google की अपनी services में भी संभव नहीं है। DMA सिर्फ यह मांगता है कि Google को special position में न रखा जाए, और जब तक Google ऐसी functionality नहीं देता, NextCloud को भी देने की जरूरत नहीं है
दूसरे submitted post में ऐसे लोग पहले से थे
Mobile users रोज popups, malware, DNS hijacking के संपर्क में आते हैं। अगर ऐसा न होता तो mobile advertisers के लिए click revenue लाने वाली golden train नहीं होता
ऐसी enforcement न होती तो malicious games और Facebook जैसे apps “full access चाहिए” के नाम पर photos upload करते और EXIF location scan करते। और पिछली चर्चा में यह भी confirm हुआ था कि बेहतर privacy-preserving API मौजूद है, बस Nextcloud उसे इस्तेमाल नहीं करना चाहता
Google का अपने Android apps को advantage देने के लिए first-party-only APIs बनाने का इतिहास रहा है
2014 में Google ने Drive app को Docs, Sheets आदि कई अलग Android apps में तोड़ दिया था। users से नए apps install करवाना और move करवाना बोझिल था, इसलिए Drive में सामान्य Play Store redirect के बजाय इस्तेमाल होने वाला 1-click install modal design किया गया। यह साफ-सुथरा था। उस समय जिस company में मैं काम करता था, वह Drive की बड़ी competitor थी, और हम भी core functionality के कुछ हिस्सों को standalone apps में split करना चाहते थे और similar reasons से similar flow इस्तेमाल करना चाहते थे, लेकिन नहीं कर पाए। Google ने उस API को permission तक नहीं, बल्कि app signature verification के पीछे छिपा दिया ताकि सिर्फ Google-signed apps ही उसे इस्तेमाल कर सकें। permission request या appeal की संभावना के बिना hardcoded exclusivity थी। ऐसी functionality risky हो सकती है और abuse mitigation की जरूरत हो सकती है, इसके जायज कारण हैं, लेकिन Google अक्सर abuse mitigation और anti-competitive conduct के बीच की line पार कर देता है
Google का पुराना motto “Don’t be evil” ethical और transparent business practices पर जोर देने वाले corporate code of conduct का core था
2015 में वह motto हटने के बाद से हम Google की गिरफ्त में आ गए। अब Google Microsoft जैसा हो गया है, और Nextcloud के बनने की वजह भी यही है
मुझे पढ़ने में नया API सही दिशा में उठाया गया कदम लगता है। लेकिन किसी भी तरह, Google असल में Nextcloud से यह मांग रहा है कि users permission देने तक उसकी backup/sync चुपचाप टूट जाए
बहुत से users शायद data loss का पता चलने तक notice नहीं करेंगे, और trust व brand को काफी नुकसान होगा। ऐसे मामले में, जहां परिणाम लगभग पूरी तरह user पर डाल दिया जाता है, मुझे नहीं लगता कि Google का ऐसी मांग करना fair है
AI सारांश कुछ अजीब है। हर वाक्य के अंत में
음जोड़ने वाली गलती मैंने पहली बार देखी है।ऐसा मामला मैं भी पहली बार देख रहा हूँ। नामवाचक रूप में खत्म करने को कहा था... बस वही ठीक से मान लिया, हाहा