chrome.syncFileSystem

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ğinde fileEntry 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

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()

Promise
chrome.syncFileSystem.getConflictResolutionPolicy(
  callback?: function,
)

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

Parametreler

İadeler

  • Chrome 117 ve sonraki sürümler

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

getFileStatus()

Promise
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

İadeler

  • Promise<FileStatus>

    Chrome 117 ve sonraki sürümler

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

getFileStatuses()

Promise
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

İadeler

  • Promise<FileStatusInfo[]>

    Chrome 117 ve sonraki sürümler

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

getServiceStatus()

Promise
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

İadeler

  • Promise<ServiceStatus>

    Chrome 117 ve sonraki sürümler

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

getUsageAndQuota()

Promise
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

İadeler

  • Promise<StorageInfo>

    Chrome 117 ve sonraki sürümler

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

requestFileSystem()

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

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

setConflictResolutionPolicy()

Promise
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

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

    Sö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

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