chrome.syncFileSystem

Açıklama

Google Drive'da veri kaydetmek ve senkronize etmek için chrome.syncFileSystem API'sini kullanın. Bu API, Google Drive'da depolanan rastgele kullanıcı dokümanlarına erişmek için KULLANILMAZ. Aynı verilerin farklı istemcilerde kullanılabilmesi için çevrimdışı ve önbelleğe alma kullanımına yönelik uygulamaya özel senkronize edilebilir depolama alanı sağlar. Bu API'nin kullanımı hakkında daha fazla bilgi için Verileri Yönetme başlıklı makaleyi okuyun.

İ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 senkronizasyon işlemi gerçekleştirildi. İşlem değeri 'added', 'updated' veya 'deleted' olabilir. Yalnızca durum 'synced' ise geçerlidir.

  • direction

    SyncDirection isteğe bağlı

    onFileStatusChanged etkinliği için 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ğinde fileEntry bilgileri kullanılabilir durumda kalır ancak dosya artık mevcut olmaz.

  • durum

    onFileStatusChanged etkinliğinden sonraki dosya durumu. Durum değeri 'synced', 'pending' veya 'conflicting' olabilir.

FileStatus

Enum

"synced"
Çakışma yok ve bekleyen yerel değişiklik yok.

"pending"
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

    string isteğe bağlı

    Yalnızca belirtilen dosyanın FileStatus değeri alınırken sorun yaşandığında döndürülen isteğe bağlı hata.

  • fileEntry

    Giriş

    getFileStatuses'a başlangıçta verilen Entry'lerden biri.

  • durum

    Durum değeri 'synced', 'pending' veya 'conflicting' olabilir.

ServiceInfo

Özellikler

ServiceStatus

Enum

"initializing"
Senkronizasyon hizmeti başlatılıyor (ör. veritabanından veriler geri yükleniyor, bağlantı kontrol ediliyor ve hizmette kimlik doğrulaması yapılıyor).

"running"
Senkronizasyon hizmeti çalışır durumdadır.

"authentication_required"
Senkronizasyon hizmeti, uzak hizmetin devam etmek için kullanıcı tarafından kimlik doğrulaması yapılması gerektiğinden dosyaları senkronize etmiyor.

"temporary_unavailable"
Senkronizasyon hizmeti, kurtarılabilir bazı hatalar (ör.ağın çevrimdışı olması, uzak hizmetin çalışmaması veya erişilememesi vb.) nedeniyle uzak hizmet (geçici olarak) kullanılamadığından dosyaları senkronize etmiyor. OnServiceInfoUpdated'daki description parametresiyle daha fazla ayrıntı (hizmete özel ayrıntılar içerebilir) sağlanmalıdır.

"disabled"
Senkronizasyon hizmeti devre dışı bırakılmıştır ve içerik hiçbir zaman senkronize edilmez. (Örneğin, kullanıcının uzak hizmette hesabı yoksa veya senkronizasyon hizmetinde düzeltilemeyen bir hata oluştuysa bu durum yaşanabilir.)

StorageInfo

Özellikler

  • quotaBytes

    sayı

  • usageBytes

    sayı

SyncAction

Enum

"eklendi"

"updated"

"silindi"

SyncDirection

Enum

"local_to_remote"

"remote_to_local"

Yöntemler

getConflictResolutionPolicy()

Taahhüt
chrome.syncFileSystem.getConflictResolutionPolicy(
  callback?: function,
)
: Promise<ConflictResolutionPolicy>

Mevcut çakışma çözümü politikasını alır.

Parametreler

İadeler

  • Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

getFileStatus()

Taahhüt
chrome.syncFileSystem.getFileStatus(
  fileEntry: Entry,
  callback?: function,
)
: Promise<FileStatus>

Belirtilen fileEntry için FileStatus değerini döndürür. Durum değeri 'synced', 'pending' veya 'conflicting' olabilir. 'conflicting' durumu yalnızca hizmetin çakışma çözümü politikası 'manual' olarak ayarlandığında gerçekleşir.

Parametreler

  • fileEntry

    Giriş

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    (status: FileStatus) => void

İadeler

  • Promise<FileStatus>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

getFileStatuses()

Taahhüt
chrome.syncFileSystem.getFileStatuses(
  fileEntries: object[],
  callback?: function,
)
: Promise<FileStatusInfo[]>

Belirtilen fileEntry dizisi için her FileStatus değerini döndürür. Genellikle dirReader.readEntries() sonucunu içeren bir çağrı alır.

Parametreler

  • fileEntries

    object[]

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    (status: FileStatusInfo[]) => void

İadeler

  • Promise<FileStatusInfo[]>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

getServiceStatus()

Taahhüt
chrome.syncFileSystem.getServiceStatus(
  callback?: function,
)
: Promise<ServiceStatus>

Mevcut senkronizasyon arka uç durumunu döndürür.

Parametreler

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    (status: ServiceStatus) => void

İadeler

  • Promise<ServiceStatus>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

getUsageAndQuota()

Taahhüt
chrome.syncFileSystem.getUsageAndQuota(
  fileSystem: DOMFileSystem,
  callback?: function,
)
: Promise<StorageInfo>

Uygulamanın 'syncable' dosya depolama alanı için mevcut kullanımı ve kotayı bayt cinsinden döndürür.

Parametreler

  • fileSystem

    DOMFileSystem

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    (info: StorageInfo) => void

İadeler

  • Promise<StorageInfo>

    Chrome 117 ve sonraki sürümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

requestFileSystem()

Taahhüt
chrome.syncFileSystem.requestFileSystem(
  callback?: function,
)
: Promise<DOMFileSystem>

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 (bkz. http://dev.w3.org/2009/dap/file-system/file-dir-sys.html).

Bu yöntemi aynı uygulamadan birden çok kez çağırmak, aynı dosya sistemine aynı herkese açık anahtarı döndürür.

Bu çağrının başarısız olabileceğini unutmayın. Örneğin, kullanıcı Chrome'da oturum açmamışsa veya ağ işlemi yoksa. Bu hataları ele almak için geri çağırmada chrome.runtime.lastError'ın kontrol edilmesi önemlidir.

Parametreler

  • callback

    function 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ümler

    Promise'ler yalnızca Manifest V3 ve sonraki sürümlerde desteklenir. Diğer platformların geri çağırma işlevlerini kullanması gerekir.

setConflictResolutionPolicy()

Taahhüt
chrome.syncFileSystem.setConflictResolutionPolicy(
  policy: ConflictResolutionPolicy,
  callback?: function,
)
: Promise<void>

Uygulamanın 'syncable' dosya depolama alanı için varsayılan çakışma çözümü politikasını ayarlar. Varsayılan olarak 'last_write_win' değerine ayarlanır. Çakışma çözümü politikası 'last_write_win' olarak ayarlandığında, mevcut dosyalardaki çakışmalar dosya bir sonraki kez 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 sağlanabilir.

Parametreler

  • callback

    function isteğe bağlı

    callback parametresi şu şekilde görünür:

    () => void

İadeler

  • Promise<void>

    Chrome 117 ve sonraki sürümler

    Promise'ler 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

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (detail: FileInfo) => void

onServiceStatusChanged

chrome.syncFileSystem.onServiceStatusChanged.addListener(
  callback: function,
)

Senkronizasyon arka ucunda bir hata veya başka bir durum değişikliği olduğunda (örneğin, ağ veya kimlik doğrulama hatası nedeniyle senkronizasyon geçici olarak devre dışı bırakıldığında) tetiklenir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (detail: ServiceInfo) => void