ब्यौरा
Google Drive पर डेटा सेव करने और सिंक करने के लिए, chrome.syncFileSystem API का इस्तेमाल करें. इस एपीआई का इस्तेमाल, Google Drive में सेव किए गए किसी भी उपयोगकर्ता के दस्तावेज़ों को ऐक्सेस करने के लिए नहीं किया जा सकता. यह ऐप्लिकेशन के हिसाब से सिंक किए जा सकने वाले स्टोरेज की सुविधा देता है. इसका इस्तेमाल ऑफ़लाइन और कैश मेमोरी में सेव किए गए डेटा के लिए किया जाता है, ताकि एक ही डेटा अलग-अलग क्लाइंट के लिए उपलब्ध हो सके. इस एपीआई का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, डेटा मैनेज करना लेख पढ़ें.
अनुमतियां
syncFileSystemटाइप
ConflictResolutionPolicy
Enum
"last_write_win"
"manual"
FileInfo
प्रॉपर्टी
-
ऐक्शन गेम
SyncAction ज़रूरी नहीं है
onFileStatusChangedइवेंट को ट्रिगर करने के लिए, सिंक करने की कार्रवाई की गई. कार्रवाई की वैल्यू'added','updated'या'deleted'हो सकती है. यह सिर्फ़ तब लागू होता है, जब स्टेटस'synced'हो. -
दिशा
SyncDirection optional
onFileStatusChangedइवेंट के लिए सिंक करने की दिशा. सिंक की दिशा की वैल्यू'local_to_remote'या'remote_to_local'हो सकती है. यह सिर्फ़ तब लागू होता है, जब स्टेटस'synced'हो. -
fileEntry
प्रवेश
fileEntryउस टारगेट फ़ाइल के लिए जिसका स्टेटस बदल गया है. इसमें सिंक की गई फ़ाइल का नाम और पाथ की जानकारी होती है. फ़ाइल मिटाने पर,fileEntryकी जानकारी अब भी उपलब्ध रहेगी, लेकिन फ़ाइल मौजूद नहीं रहेगी. -
स्थिति
onFileStatusChangedइवेंट के बाद, फ़ाइल का स्टेटस. स्टेटस की वैल्यू'synced','pending'या'conflicting'हो सकती है.
FileStatus
Enum
"synced"
इसमें कोई टकराव नहीं है और स्थानीय बदलावों को लागू नहीं किया गया है.
"कार्रवाई पूरी नहीं हुई"
इसमें एक या उससे ज़्यादा ऐसे बदलाव शामिल हैं जिन्हें अभी तक सिंक नहीं किया गया है.
"conflicting"
फ़ाइल, रिमोट वर्शन से मेल नहीं खाती है. इसे मैन्युअल तरीके से ठीक करना होगा.
FileStatusInfo
प्रॉपर्टी
-
गड़बड़ी
string ज़रूरी नहीं है
यह एक वैकल्पिक गड़बड़ी है. यह गड़बड़ी सिर्फ़ तब दिखती है, जब दी गई फ़ाइल के लिए FileStatus को वापस पाने में कोई समस्या हुई हो.
-
fileEntry
प्रवेश
getfileStatuses को दी गई एंट्री में से कोई एक.
-
स्थिति
स्टेटस की वैल्यू
'synced','pending'या'conflicting'हो सकती है.
ServiceInfo
प्रॉपर्टी
-
ब्यौरा
स्ट्रिंग
-
राज्य
ServiceStatus
Enum
"शुरू हो रहा है"
सिंक सेवा शुरू हो रही है. जैसे, डेटाबेस से डेटा वापस लाना, कनेक्टिविटी की जांच करना, और सेवा के लिए पुष्टि करना वगैरह.
"चालू है"
सिंक करने की सेवा चालू है और काम कर रही है.
"authentication_required"
सिंक सेवा, फ़ाइलों को सिंक नहीं कर रही है. ऐसा इसलिए है, क्योंकि रिमोट सेवा को आगे बढ़ने के लिए, उपयोगकर्ता से पुष्टि करानी होगी.
"temporary_unavailable"
सिंक करने वाली सेवा, फ़ाइलों को सिंक नहीं कर रही है. इसकी वजह यह है कि कुछ ऐसी गड़बड़ियों की वजह से रिमोट सेवा (कुछ समय के लिए) उपलब्ध नहीं है जिन्हें ठीक किया जा सकता है. जैसे, नेटवर्क ऑफ़लाइन है, रिमोट सेवा बंद है या उस तक पहुंचा नहीं जा सकता वगैरह. OnServiceInfoUpdated में description पैरामीटर के ज़रिए ज़्यादा जानकारी दी जानी चाहिए. इसमें सेवा से जुड़ी जानकारी शामिल हो सकती है.
"बंद है"
सिंक करने की सेवा बंद है. इसलिए, कॉन्टेंट कभी सिंक नहीं होगा. (उदाहरण के लिए, ऐसा तब हो सकता है, जब उपयोगकर्ता का रिमोट सेवा पर कोई खाता न हो या सिंक करने वाली सेवा में कोई ऐसी गड़बड़ी हुई हो जिसे ठीक नहीं किया जा सकता.)
StorageInfo
प्रॉपर्टी
-
quotaBytes
संख्या
-
usageBytes
संख्या
SyncAction
Enum
"added"
"updated"
"deleted"
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
तरीके
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
): Promise<ConflictResolutionPolicy>
इससे विवाद हल करने से जुड़ी मौजूदा नीति मिलती है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callbackपैरामीटर ऐसा दिखता है:(policy: ConflictResolutionPolicy) => void
-
policy
-
रिटर्न
-
Promise<ConflictResolutionPolicy>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
): Promise<FileStatus>
यह दी गई fileEntry के लिए, FileStatus दिखाता है. स्टेटस की वैल्यू 'synced', 'pending' या 'conflicting' हो सकती है. ध्यान दें कि 'conflicting' स्थिति सिर्फ़ तब होती है, जब सेवा के विवाद सुलझाने की नीति को 'manual' पर सेट किया जाता है.
पैरामीटर
-
fileEntry
प्रवेश
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callbackपैरामीटर ऐसा दिखता है:(status: FileStatus) => void
-
स्थिति
-
रिटर्न
-
Promise<FileStatus>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
): Promise<FileStatusInfo[]>
यह फ़ंक्शन, दिए गए fileEntry ऐरे के लिए हर FileStatus दिखाता है. आम तौर पर, इसे dirReader.readEntries() से मिले नतीजे के साथ कॉल किया जाता है.
पैरामीटर
-
fileEntries
object[]
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callbackपैरामीटर ऐसा दिखता है:(status: FileStatusInfo[]) => void
-
स्थिति
-
रिटर्न
-
Promise<FileStatusInfo[]>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.