AsyncStorage ( Mobil Cihaza Sürekli Olarak Veri Depolama )

Mobil uygulamalarda veritabanı kullanılmadan da verilerimizi cihazda tutabilmekteyiz. Bu işlemi gerçekleştiren mekanizma asyncstorage olarak tanımlanmaktadır.

Mobil uygulamalarda küçük çaplı kayıtlar tutmak isteyebiliriz. Bu kayıtları tutabilmek için illa bir veritabanı kurulumuna ihtiyacımız yoktur. Bu işlemi sürekli olarak veri tutma olarak da tanımlanan asyncstorage mekanizması ile yapabiliriz. Bunun bize faydası hem hız hem de basitlik denebilir.

Kurulum

React Native ile geliştirilen uygulamalarda asyncstorage kullanabilmek için kurmamız gereken kütüphane vardır. Kurulumu şu komutlarla gerçekleştirebiliriz.

yarn add @react-native-community/async-storage

React Native sürümümüz 0.60 ve üzeri ise pod install yaparak bağlama işlemi gerçekleştirilebilir. Fakat podfile dosyamızı açıp içerisinde alttaki satırın olup olmadığını kontrol etmeliyiz. Eğer yoksa da eklemeliyiz.

pod 'RNCAsyncStorage', :path => '../node_modules/@react-native-community/async-storage'

install diyerek işlemi tamamlarız.

pod install

React Native sürümü 0.60 altı olanlar ise alttaki komutla ya da elle (manuel) bağlama işlemini yapmalıdır.

react-native link @react-native-community/async-storage

Kullanım

Cihazda kayıtlı olan veriyi alma veya cihaza bir veri kaydetme işlemini aşağıdaki kod ile yapabilmekteyiz.

try {
        const value = await AsyncStorage.getItem('@isFirst_install')
        if(value !== null) { // Cihazda isFirst_install verisi var
          this.setState({ firstDay: false })
        } else { // Cihazda isFirst_install verisi yok
          AsyncStorage.setItem('@isFirst_install', "installed")
        }
      } catch(e) {
        // error reading value
      }

Üstteki işlemleri yaptığımız fonksiyonun async olduğundan emin olmalıyız. Yani ;

async kayıtIslemleri() {
  // Üstteki kodlar
}

Teşekkürler.