- Mobil uygulamadan erişmek için mobil cihazda veri depolamayı öğrenin
- Uygulama kullanıcıları arasında veri paylaşmak için bulutta veri depolama ve erişim için farklı seçenekleri öğrenin.
Bu dersin etkinlikleri şunlardır:
UZUN VADELİ VERİLERİN DEPOLANMASI
Son ünitede, uygulamanızda bilgileri depolamak için değişkenleri ve listeleri nasıl kullanacağınızı öğrendiniz.
Uygulama kapatıldığında, uygulamanın belleğinde depolanan tüm değişkenler silinir.
Ancak, uygulamanın çalışması sırasında bilgileri takip etmek isteyebileceğiniz durumlar olabilir. İki tür uzun vadeli depolama vardır:
Yerel Depolama
Uygulama her çalıştırıldığında alınacak bilgileri mobil cihaza kaydedin.
Örneğin, bir kullanıcı adresi veya yüksek oyun puanı.
Bulut Depolama
Tüm uygulama kullanıcılarının bilgilere erişebilmesi için bilgileri web'de (bulutta) depolayın.
Örneğin, oyun liderlik tablosu veya sohbet mesajları.
YEREL DEPOLAMA
Kullanıcı bir uygulamayı kapattığında, tüm değişkenlerin cihazın belleğinden silinir.
Uygulama için verileri çalıştırmalar arasında saklamak istiyorsanız, TinyDB bileşenini
TinyDB, paylaşılması gerekmeyen kullanıcının kişisel bilgilerini depolamak için kullanılabilir.
Örneğin, kullanıcı adını, yaşını ve adresini her seferinde değil, yalnızca bir kez girmek ister. Başka bir örnek ise, zaman içinde sağlıklı alışkanlıklar gibi şeyleri takip etmektir.
TinyDB, Tiny Database (Küçük Veritabanı) anlamına gelir. Bir Veritabanı , organize edilmiş bir veri koleksiyonudur. Programcı olarak, bu koleksiyonun nasıl organize edileceğine siz karar verirsiniz.
TinyDB, Tasarımcı'daki Depolama çekmecesinde bulunabilir.
TinyDB görünmez bir bileşendir, bu nedenle projenize eklediğinizde ekranda görünmez.
TinyDB'deki verilere erişmek için her veri öğesine bir etiketverirsiniz, tıpkı değişkenlere isim verdiğiniz gibi. Etiketin değerini, değişken değerlerini ayarladığınız ve aldığınız gibi saklar ve alırsınız. Bu, etiket-değer çiftiolarak bilinir.
TinyDB.StoreValue yeni değeri TinyDB'de depolar. Depolamak istediğiniz etiketi ve değeri belirtmeniz gerekir.
TinyDB.GetValue geçerli değeri alır.
valueIfTagNotThere Bu etiketle daha önce hiçbir şey depolanmamışsa gereklidir.
BULUT DEPOLAMA
Bulut Depolama uygulamanın tüm kullanıcılarının verilere erişmesine ve bunları paylaşmasına olanak tanır.
App Inventor'da üç adet kullanılabilir bulut depolama seçeneği bulunmaktadır.
CloudDB, MIT App Inventor tarafından sağlanan bir bileşen ve veritabanı hizmetidir.
CloudDB, TinyDB ile aynı şekilde çalışır. Verileri etiket-değer çiftleri kullanarak depolar ve erişirsiniz.
CloudDB'ye Depolama çekmecesinden erişilir. Görünmez bir bileşen olduğundan, eklediğinizde Ekranda görünmez.

Veri depolama, TinyDB ile aynı şekilde çalışır.
StoreValue, yeni değeri CloudDB'de depolar. Depolamak istediğiniz etiketi ve değeri belirtmeniz gerekir.
Farklı türde verileri depolayabilirsiniz. Örneğin, bu bloklarda highScore bir sayıdır. chat ise mesajların bir listesidir.

Verileri almak TinyDB'ye benzer şekilde çalışır, ancak fazladan bir adım vardır. Veritabanı bulutta olduğu için, uygulamanın değeri almak için istekte bulunması ve yanıt beklemesi gerekir. Bu nedenle, veritabanı verilerle yanıt verdiğinde sinyal vermek için bir olay işleyici bloğu gerekir.
GetValue, uygulamanın bilgi istediğini veritabanına bildirir. valueIfTagNotThere, etiket için doğru veri türü olmalıdır. Örneğin, bir sayı veya bir liste.
GotValue veritabanı bilgi ile yanıt verdiğinde tetiklenir. Bir uygulamada birden fazla etiket varsa, değeri kullanmadan önce doğru etiketi kontrol etmek için bir if bloğu gerekir.


Verileri almak TinyDB'ye benzer şekilde çalışır, ancak fazladan bir adım vardır. Veritabanı bulutta olduğu için, uygulamanın değeri almak için istekte bulunması ve yanıt beklemesi gerekir. Bu nedenle, veritabanı verilerle yanıt verdiğinde sinyal vermek için bir olay işleyici bloğu gerekir.
GetValue, uygulamanın bilgi istediğini veritabanına bildirir. valueIfTagNotThere, etiket için doğru veri türü olmalıdır. Örneğin, bir sayı veya bir liste.
GotValue, veritabanı bilgi ile yanıt verdiğinde tetiklenir. Bir uygulamada birden fazla etiket varsa, değeri kullanmadan önce doğru etiketi kontrol etmek için bir if bloğu gerekir.

The Spreadsheet bileşeni, Google E-Tablolardan okuma ve yazma işlemleri yapmanızı sağlar. Bir Google Geliştirici Hesabı oluşturmanız ve bazı adımları uygulamanızı belgeye bağlamak için bazı adımları izlemeniz gerekir.
Hesap Tablosu bileşeni Depolama çekmecesinde mevcuttur. Bu bileşen görünmez bir bileşendir, bu nedenle uygulamanıza eklediğinizde Ekranda görünmez.
Uygulamanın elektronik tablonuzdaki hücreleri, satırları ve sütunları okumasına ve yazmasına izin veren birçok blok mevcuttur. Uygulamanızdan erişmek istediğiniz tablo verileriniz varsa bu iyi bir seçenektir. Verileri Google E-Tablolar'da görüntüleyebilir ve düzenleyebilirsiniz; bu, özellikle uygulamanızı test ederken yararlıdır.

Mentor İpucu
En iyi uygulamalar: Verilerinizin yedeğini her zaman bir yerde saklayın! Verilerinizi silmek veya yanlışlıkla değiştirmek çok kolaydır, bu nedenle güvenli bir yerde ekstra bir kopyasını sakladığınızdan emin olun!
App Inventor'da "Etiket-Değer çifti" terimini öğrenirsiniz ve bu terim gerçek hayatta kodlamada çok sık kullanılır, ancak biz buna "Anahtar-Değer çifti" diyoruz! Artık uzmanların kullandığı terimleri biliyorsunuz!
Öğrencilere sorulacak yol gösterici sorular: Bulut verileri nerede saklanır sizce? Google, YouTube, TikTok gibi bir web sitesine yüklediğiniz veriler, daha sonra nerede saklanır? Bulut nerede bulunur? Google gibi şirketler, bulutta veri saklamak için devasa binalarda bilgisayarlar bulundurur. Bu nedenle şaka şöyle yapılır: "Veriler bulutta değil, başka birinin bilgisayarında saklanır." Amazon'un veri depolama sistemi:
Mentor ipuçları AmeriCorps'un desteği ile sağlanmaktadır.
AKTİVİTE: MAÇ SKORLARINI KAYDET
Hızlı Quiz Oyununu Güncelleyerek Yüksek Puanları Kaydedin
- App Inventor Galerisi'nde başlangıç projesini açın.
Videodaki bağlantı yanlış! Başlangıç projesi bağlantısı https://bit.ly/appinventor-quick-quiz - App Inventor'a yükleyin, böylece kendi kopyanızı düzenleyebilirsiniz.
- Aşağıdaki videoyu izleyerek, oyuncuların yüksek puanlarını depolamak ve güncellemek için Google Sheet'i uygulamanıza bağlayın.
ZORLUK
Hızlı Test oyununu kişisel yüksek puanları okumak, yazmak ve güncellemek için kodladığınıza göre, şunları yapabilir misiniz:
- Tüm oyuncuların yüksek puanlarını okuyun ve tüm oyuncuların en yüksek puanını bulun.
- Bu bilgiyi kullanıcıya bildirin
- etiket kullanarak
- veya Uyarı mesajına ekleyin
YANSIMA
Uygulamanız için veri depolayacaksanız, bu derste öğrendiğiniz bilgilere ihtiyacınız olacak. Projeniz için kendi uygulamanızı kodlamaya başladığınızda, şu soruları göz önünde bulundurun.
, kullanıcının mobil cihazında
veya paylaşım için bulutta
saklanması gerekir mi?
ANAHTAR TERİMLERİN GÖZDEN GEÇİRİLMESİ
- Veritabanı – organize edilmiş bilgi koleksiyonu
- Bulut Depolama – İnternete bağlı herhangi bir cihazın erişebilmesi için web üzerinde depolanan bilgiler
- Etiket-değer çifti – bir veritabanında bilgileri depolamak ve erişmek için kullanılan bir yöntem
EK KAYNAKLAR
App Inventor'da bulut depolamayı keşfetmek için daha fazla belge ve öğretici burada bulabilirsiniz.
- Bir sohbet uygulaması oluşturun
- Bir CloudDB kullanan oluşturun
- Firebase'i App Inventor'a bağlayın
