ब्यौरा
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 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
): Promise<ServiceStatus>
सिंक करने वाले मौजूदा बैकएंड का स्टेटस दिखाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(status: ServiceStatus) => void
-
स्थिति
-
रिटर्न
-
Promise<ServiceStatus>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
): Promise<StorageInfo>
यह फ़ंक्शन, ऐप्लिकेशन के लिए 'syncable'
फ़ाइल स्टोरेज के मौजूदा इस्तेमाल और कोटे को बाइट में दिखाता है.
पैरामीटर
-
fileSystem
DOMFileSystem
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(info: StorageInfo) => void
-
जानकारी
-
रिटर्न
-
Promise<StorageInfo>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
): Promise<DOMFileSystem>
Google Drive की मदद से सिंक किए जा सकने वाले फ़ाइल सिस्टम को दिखाता है. DOMFileSystem
इंस्टेंस को, Temporary और Persistant फ़ाइल सिस्टम की तरह ही इस्तेमाल किया जा सकता है. इसके बारे में ज़्यादा जानने के लिए, http://dev.w3.org/2009/dap/file-system/file-dir-sys.html पर जाएं.
एक ही ऐप्लिकेशन से इस फ़ंक्शन को कई बार कॉल करने पर, एक ही फ़ाइल सिस्टम के लिए एक ही हैंडल मिलेगा.
ध्यान दें कि यह कॉल फ़ेल हो सकता है. उदाहरण के लिए, अगर उपयोगकर्ता ने Chrome में साइन इन नहीं किया है या कोई नेटवर्क ऑपरेशन नहीं है. इन गड़बड़ियों को ठीक करने के लिए, यह ज़रूरी है कि कॉलबैक में chrome.runtime.lastError की जांच की जाए.
पैरामीटर
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
रिटर्न
-
Promise<DOMFileSystem>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
): Promise<void>
यह नीति, ऐप्लिकेशन के लिए 'syncable'
फ़ाइल स्टोरेज के लिए, डिफ़ॉल्ट रूप से टकराव हल करने की नीति सेट करती है. डिफ़ॉल्ट रूप से, इसे 'last_write_win'
पर सेट किया जाता है. विरोध की समस्या हल करने की नीति को 'last_write_win'
पर सेट करने पर, मौजूदा फ़ाइलों से जुड़ी समस्याएं अपने-आप हल हो जाती हैं. ऐसा तब होता है, जब अगली बार फ़ाइल अपडेट की जाती है. अनुरोध पूरा हुआ है या नहीं, यह जानने के लिए callback
को वैकल्पिक तौर पर दिया जा सकता है.
पैरामीटर
-
policy
-
कॉलबैक
फ़ंक्शन ज़रूरी नहीं
callback
पैरामीटर ऐसा दिखता है:() => void
रिटर्न
-
Promise<void>
Chrome 117 या इसके बाद का वर्शनप्रॉमिस सिर्फ़ मेनिफ़ेस्ट V3 और इसके बाद के वर्शन के लिए काम करते हैं. अन्य प्लैटफ़ॉर्म को कॉलबैक का इस्तेमाल करना होगा.
इवेंट
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
यह इवेंट तब ट्रिगर होता है, जब बैकग्राउंड सिंक सेवा के ज़रिए किसी फ़ाइल को अपडेट किया जाता है.
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
यह इवेंट तब ट्रिगर होता है, जब सिंक बैकएंड में कोई गड़बड़ी होती है या स्थिति में कोई बदलाव होता है. उदाहरण के लिए, जब नेटवर्क या पुष्टि करने से जुड़ी गड़बड़ी की वजह से, सिंक को कुछ समय के लिए बंद कर दिया जाता है.
पैरामीटर
-
कॉलबैक
फ़ंक्शन
callback
पैरामीटर ऐसा दिखता है:(detail: ServiceInfo) => void
-
विवरण
-