Açıklama
Google Drive'a veri kaydetmek ve senkronize etmek için chrome.syncFileSystem
API'yi kullanın. Bu API, Google Drive'da depolanan herhangi bir kullanıcı belgesine erişmek için DEĞİLDİR. Çevrimdışı ve önbelleğe alma kullanımı için uygulamaya özel senkronize edilebilir depolama alanı sağlar. Böylece aynı veriler farklı istemcilerde kullanılabilir. Bu API'nin kullanımı hakkında daha fazla bilgi için Verileri yönetme başlıklı makaleyi inceleyin.
İzinler
syncFileSystem
Türler
ConflictResolutionPolicy
Enum
"last_write_win"
"manual"
FileInfo
Özellikler
-
işlem
SyncAction isteğe bağlı
onFileStatusChanged
etkinliğini tetiklemek için gerçekleştirilen senkronizasyon işlemi. İşlem değeri'added'
,'updated'
veya'deleted'
olabilir. Yalnızca durum'synced'
ise geçerlidir. -
direction
SyncDirection isteğe bağlı
onFileStatusChanged
etkinliğinin senkronizasyon yönü. Senkronizasyon yönü değeri'local_to_remote'
veya'remote_to_local'
olabilir. Yalnızca durum'synced'
ise geçerlidir. -
fileEntry
Giriş
Durumu değişen hedef dosya için
fileEntry
. Senkronize edilen dosyanın ad ve yol bilgilerini içerir. Dosya silindiğindefileEntry
bilgileri kullanılabilir durumda kalır ancak dosya artık mevcut olmaz. -
durum
onFileStatusChanged
etkinliğinden sonra ortaya çıkan dosya durumu. Durum değeri'synced'
,'pending'
veya'conflicting'
olabilir.
FileStatus
Enum
"synced"
Çakışmaz ve bekleyen yerel değişiklik yoktur.
"beklemede"
Senkronize edilmemiş bir veya daha fazla bekleyen yerel değişiklik var.
"conflicting"
Dosya, uzak sürümle çakışıyor ve manuel olarak çözülmesi gerekiyor.
FileStatusInfo
Özellikler
-
hata
dize isteğe bağlı
Yalnızca belirli bir dosyanın FileStatus özelliği alınırken bir sorun oluştuğunda döndürülen isteğe bağlı hata.
-
fileEntry
Giriş
getFileStatuses işlevine ilk verilen girişlerden biri.
-
durum
Durum değeri
'synced'
,'pending'
veya'conflicting'
olabilir.
ServiceInfo
Özellikler
-
açıklama
dize
-
durum
ServiceStatus
Enum
"initializing"
Senkronizasyon hizmeti başlatılıyor (ör.veritabanındaki verileri geri yükleme, bağlantıyı kontrol etme ve hizmette kimlik doğrulama vb.).
"running"
Senkronizasyon hizmeti çalışıyor.
"authentication_required"
Devam etmek için uzak hizmetin kullanıcı tarafından kimlik doğrulamasının yapılması gerektiğinden senkronizasyon hizmeti dosyaları senkronize etmiyor.
"temporary_unavailable"
Ağ çevrimdışı olduğu, uzak hizmet kapalı olduğu veya erişilemediği gibi bazı kurtarılabilir hatalar nedeniyle uzak hizmet (geçici olarak) kullanılamadığı için senkronizasyon hizmeti dosyaları senkronize etmiyor. OnServiceInfoUpdated'deki description
parametresi aracılığıyla daha fazla ayrıntı sağlanmalıdır (hizmete özgü ayrıntılar içerebilir).
"disabled"
Senkronizasyon hizmeti devre dışıdır ve içerik hiçbir zaman senkronize edilmez. (Örneğin, kullanıcının uzak hizmette hesabı yoksa veya senkronizasyon hizmetinde kurtarılamaz bir hata oluştuysa bu durumla karşılaşılabilir.)
StorageInfo
Özellikler
-
quotaBytes
sayı
-
usageBytes
sayı
SyncAction
Enum
"added"
"updated"
"deleted"
SyncDirection
Enum
"local_to_remote"
"remote_to_local"
Yöntemler
getConflictResolutionPolicy()
chrome.syncFileSystem.getConflictResolutionPolicy(
callback?: function,
)
Mevcut çakışma çözümü politikasını alır.
Parametreler
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(policy: ConflictResolutionPolicy) => void
-
policy
-
İadeler
-
Promise<ConflictResolutionPolicy>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getFileStatus()
chrome.syncFileSystem.getFileStatus(
fileEntry: Entry,
callback?: function,
)
Belirtilen fileEntry
için FileStatus
değerini döndürür. Durum değeri 'synced'
, 'pending'
veya 'conflicting'
olabilir. 'conflicting'
durumunun yalnızca hizmetin çakışma çözümleme politikası 'manual'
olarak ayarlandığında gerçekleştiğini unutmayın.
Parametreler
-
fileEntry
Giriş
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(status: FileStatus) => void
-
durum
-
İadeler
-
Promise<FileStatus>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getFileStatuses()
chrome.syncFileSystem.getFileStatuses(
fileEntries: object[],
callback?: function,
)
Belirtilen fileEntry
dizisi için her FileStatus
değerini döndürür. Genellikle dirReader.readEntries() işlevinin sonucuyla çağrılır.
Parametreler
-
fileEntries
object[]
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(status: FileStatusInfo[]) => void
-
durum
-
İadeler
-
Promise<FileStatusInfo[]>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getServiceStatus()
chrome.syncFileSystem.getServiceStatus(
callback?: function,
)
Geçerli senkronizasyon arka uç durumunu döndürür.
Parametreler
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(status: ServiceStatus) => void
-
durum
-
İadeler
-
Promise<ServiceStatus>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
getUsageAndQuota()
chrome.syncFileSystem.getUsageAndQuota(
fileSystem: DOMFileSystem,
callback?: function,
)
Uygulamanın 'syncable'
dosya depolama alanı için mevcut kullanımı ve kotayı bayt cinsinden döndürür.
Parametreler
-
fileSystem
DOMFileSystem
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(info: StorageInfo) => void
-
bilgi
-
İadeler
-
Promise<StorageInfo>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
requestFileSystem()
chrome.syncFileSystem.requestFileSystem(
callback?: function,
)
Google Drive tarafından desteklenen senkronize edilebilir bir dosya sistemi döndürür. Döndürülen DOMFileSystem
örneği, Geçici ve Kalıcı dosya sistemleriyle aynı şekilde çalıştırılabilir (http://dev.w3.org/2009/dap/file-system/file-dir-sys.html adresine bakın).
Bu işlev aynı uygulamadan birden çok kez çağrılırsa aynı dosya sistemi için aynı tutamaç döndürülür.
Bu çağrının başarısız olabileceğini unutmayın. Örneğin, kullanıcı Chrome'da oturum açmadıysa veya ağ işlemi yoksa. Bu hataları işlemek için geri çağırma işlevinde chrome.runtime.lastError değerinin kontrol edilmesi önemlidir.
Parametreler
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:(fileSystem: DOMFileSystem) => void
-
fileSystem
DOMFileSystem
-
İadeler
-
Promise<DOMFileSystem>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
setConflictResolutionPolicy()
chrome.syncFileSystem.setConflictResolutionPolicy(
policy: ConflictResolutionPolicy,
callback?: function,
)
Uygulamanın 'syncable'
dosya depolama alanı için varsayılan çakışma çözümleme politikasını belirler. Varsayılan olarak 'last_write_win'
olarak ayarlanır. Çakışan dosya çözümleme politikası 'last_write_win'
olarak ayarlandığında, mevcut dosyalardaki çakışmalar dosya bir sonraki sefer güncellendiğinde otomatik olarak çözülür. İsteğin başarılı olup olmadığını öğrenmek için isteğe bağlı olarak callback
verilebilir.
Parametreler
-
policy
-
geri çağırma
işlev isteğe bağlı
callback
parametresi şu şekilde görünür:() => void
İadeler
-
Promise<void>
Chrome 117 ve sonraki sürümlerSözler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.
Etkinlikler
onFileStatusChanged
chrome.syncFileSystem.onFileStatusChanged.addListener(
callback: function,
)
Arka plan senkronizasyon hizmeti tarafından bir dosya güncellendiğinde tetiklenir.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(detail: FileInfo) => void
-
detail
-
onServiceStatusChanged
chrome.syncFileSystem.onServiceStatusChanged.addListener(
callback: function,
)
Senkronizasyon arka ucunda bir hata veya başka bir durum değişikliği olduğunda (ör. ağ veya kimlik doğrulama hatası nedeniyle senkronizasyon geçici olarak devre dışı bırakıldığında) tetiklenir.
Parametreler
-
geri çağırma
işlev
callback
parametresi şu şekilde görünür:(detail: ServiceInfo) => void
-
detail
-