- モバイルアプリから、端末に保存されているデータにアクセスする方法を学びます
- アプリのユーザ間でデータを共有するため、クラウドにデータを保存してアクセスするさまざまな方法について学びます
このレッスンのアクティビティ:
データの長期保存
前回のユニットでは、変数やリストを使ってアプリに情報を保存する方法を学びました。
ただアプリを閉じると、アプリのメモリに保存されていた変数の値はすべて消えてしまいます。
しかし、アプリの実行と実行の間に情報を記録しておきたい場合があるでしょう。 長期ストレージには以下の2つがあります:
ローカルストレージ
アプリを実行するたびに取得される情報をモバイル端末に保存します。
例えば、ユーザーアドレスやゲームのハイスコアなどがあります。
クラウドストレージ
ウェブ(クラウド)上に情報を保存し、すべてのアプリユーザーがその情報にアクセスできるようにします。
例えば、ゲームのリーダーボードやチャットメッセージなどがあります。
ローカルストレージ
ユーザーがアプリを閉じると、すべての App変数の値は端末のメモリから消去されます。
実行の合間にアプリのデータを保存したい場合は Stored変数を使います。
Stored変数は、共有する必要のないユーザーの個人情報を保存するために使用することができます。
例えばユーザーはアプリを使うたびに名前、年齢、住所を入力するのではなく、一度だけ入力するだけで済ましたいでしょう。 また別の例として、健康習慣などを長期にわたって追跡することがあります。このような場合にStored変数を使います。
Stored変数はApp変数と同じように機能します。initializeブロックのドロップダウンメニューからstoredを選択するだけです。
Stored変数の場合、初期化はありません。アプリ内で使用されるまでは、変数の値はNULL、つまり空っぽになるので、使用には注意が必要です!
Stored変数の値の取得と設定は、App変数と同じように行うことができます。


クラウドストレージ
クラウドストレージは、アプリのどのユーザーでもデータにアクセスし、共有することができます。複数のアプリユーザーが データベースから情報を見つけたり保存したりすることができます。データベースとは、電子的に保存されたデータの集合のことです。
InstagramやTikTokで写真やビデオを共有したことはありますか?これらのアプリはクラウドストレージを使用しています。友達が写真をアップロードして共有すると、あなたのスマホはウェブデータベースをチェックして新しい写真を探し、フィードに表示します。


Thunkableにはいくつかのクラウドストレージオプションがあります。
Cloud変数は、データがクラウドに保存されることを除けば、App変数やStored変数と同じように機能します。変数を初期化する際に、ドロップダウンからcloudを選択します。
ThunkableのCloud変数は、クラウド上のThunkable Firebaseデータベースに保存されます。このデータベースを他のThunkableコーダーと共有することに注意してください。 自分のFirebaseアカウントを作ることをお勧めします。
Thunkableでは、Airtable、Google Sheets、Webflowプラットフォームを使って、アプリのクラウドデータを保存することができます。これらのプラットフォームでテーブルを設定し、Thunkableアプリにリンクすることができます。

左側のデータベースアイコンをクリックして、Designerでアプリにデータソースを添付します。Create your own tableはクラウドストレージではなくローカルストレージであることに注意してください。

アプリがデータを取得、追加、更新、削除できるように、多くのブロックが用意されています。
Tip
ベストプラクティス 常にデータのバックアップをどこかに保存しておくこと!データを削除したり、誤って変更してしまうことはとても簡単です!
生徒への質問 クラウドデータはどこに保存されていると思いますか?google、youtube、tiktokなどのウェブサイトにアップロードしますが、その後どこに保存されますか?クラウドはどこにありますか?Googleのような企業は、クラウドにデータを保存するためだけに、巨大なビルにコンピュータを設置しています。こんな冗談があります:「クラウドに保存されているのではなく、他の誰かのコンピューターに保存されているだけなのだ。以下はAmazonのデータストレージです
メンターTipsは、AmeriCorpsから提供されたものです。

アクティビティ:試合のスコアを保存する
ハイスコアを保存するクイッククイズゲームを更新する
- Thunkableでスタータープロジェクトを開く。
- プロジェクトのコピーを作成し、編集できるようにする。
- 以下のビデオに従って、Googleシートをアプリにリンクし、選手のハイスコアを保存・更新してください。
チャレンジ

Quick Quizゲームで個人のハイスコアの読みとり、書き込みと更新をコーディングしました。では以下のチャレンジはできますか?
- 全プレイヤーのハイスコアを読み、全プレイヤーの最高得点を見つけましょう
- その情報をユーザーに報告しましょう
- Labelを使用する
- またはAlertメッセージに追加する
振り返り
プロジェクトのために自分のアプリをコーディングし始めたら、以下の質問を考えてみましょう。

・アプリ内
・ユーザーのモバイル・デバイス内
・ 共有のためにクラウド内
主な用語のおさらい
- データベース- 整理された情報のコレクション
- クラウドストレージ- インターネットに接続されたあらゆるデバイスがアクセスできるように、ウェブ上に保存された情報。
追加リソース
アプリでクラウドストレージを調べるための資料やチュートリアルはこちら。
- アプリを作る ログイン&投稿アプリFirebaseとサインイン、Google Sheets、Cloudinaryを使って画像をクラウドに保存・共有するアプリを作ろう
- 動画投稿アプリ動画投稿アプリを作る
- ビルドする Googleシートを使うアプリを作る
- Googleシートに数字を追加する