Quickstarters
CRUD Samples
JavaでAndroid向けCRUDアプリを作成?
25 分
概要 このチュートリアルでは、javaを使用してandroid用の完全に機能するcrud(作成、読み取り、更新、削除)アプリケーションを構築する方法を学びます。 データを簡単に管理するためにback4appをバックエンドとして使用します。このガイドでは、back4appプロジェクトの設定、データスキーマの設計、およびandroid環境でのcrud機能のコーディングを説明します。 最初に、信頼性のあるバックエンドソリューションを提供する basic crud app android というタイトルのback4appプロジェクトを作成します。次に、必要なクラスとフィールドを手動で作成するか、back4appのai駆動のスキーマジェネレーターを活用してデータ構造を定義します。 次に、データ管理を簡素化するユーザーフレンドリーなドラッグアンドドロップインターフェースであるback4app admin appを探ります。 最後に、parse android sdkを使用してandroidアプリをback4appに接続し、安全なcrud操作とユーザー認証を可能にします。 このガイドの終わりまでに、基本的なcrud操作と安全なユーザー管理を処理する生産準備が整ったandroidアプリケーションを開発することができます。 重要な洞察 堅牢なバックエンドと統合されたandroid crudアプリケーションを構築します。 スケーラブルなバックエンドを構築し、それをandroidアプリに接続する方法を理解します。 back4appのadmin appを利用して、作成、読み取り、更新、削除操作を簡単に管理します。 androidの文脈で安全なデータ処理とユーザー認証を学びます。 要件 始める前に、次のものを確認してください 新しく設定されたプロジェクトを持つback4appアカウント。 助けが必要ですか? back4appの始め方 https //www back4app com/docs/get started/new parse app を訪れてください。 android開発環境。 javaサポートのあるandroid studioを使用し、少なくともandroid api 21を持っていることを確認してください。 java、androidアプリ開発、restful apiの基本知識。 必要に応じて、 androidドキュメント https //developer android com/docs を確認してください。 ステップ1 – プロジェクトの設定 新しいback4appプロジェクトの確立 back4appアカウントにログインします。 ダッシュボードから「新しいアプリ」を選択します。 プロジェクトに名前を付けます basic crud app android と入力し、設定を完了するための指示に従います。 新しいプロジェクトを作成 プロジェクトの設定が完了すると、ダッシュボードに表示され、さらなる設定が可能になります。 ステップ2 – データスキーマの作成 データ構造の定義 このandroid crudアプリケーションでは、back4appプロジェクト内にいくつかのクラス(コレクション)を作成する必要があります。以下の例は、crud機能をサポートするための主要なクラスとその重要なフィールドを示しています。 1\ アイテムコレクション このコレクションは、各アイテムの詳細を保存します。 フィールド データ型 目的 id オブジェクトid システム生成の一意の識別子。 タイトル 文字列 アイテムの名前またはタイトル。 説明 文字列 アイテムの簡単な概要。 作成日時 日付 アイテムが追加されたタイムスタンプ。 更新日時 日付 最新の更新のタイムスタンプ。 2\ ユーザーコレクション このコレクションはユーザーの資格情報と認証の詳細を処理します。 フィールド データ型 目的 id オブジェクトid 自動的に割り当てられたユニークid。 ユーザー名 文字列 ユーザーのためのユニークなユーザー名。 メール 文字列 ユニークなメールアドレス。 パスワードハッシュ 文字列 安全に保存されたパスワード。 作成日時 日付 アカウント作成のタイムスタンプ。 更新日時 日付 アカウント更新のタイムスタンプ。 これらのコレクションとそのフィールドは、back4appダッシュボードから直接作成できます。 新しいクラスを作成 新しいフィールドを追加するには、希望するデータタイプを選択し、フィールド名を入力し、必要に応じてデフォルト値を設定し、それが必須かどうかを示します。 カラムを作成 スキーマ作成のためのback4app aiアシスタントの使用 統合されたback4app aiアシスタントは、簡単な説明からスキーマを自動的に生成し、プロジェクトのセットアップを迅速化します。 aiアシスタントの使用方法 aiアシスタントにアクセスする back4appダッシュボードで、プロジェクト設定の下にaiアシスタントを見つけます。 スキーマを説明する 必要なコレクションとフィールドの詳細な説明を入力します。 レビューと確認 aiアシスタントがスキーマを提案します。詳細を確認し、変更を実施するために確認します。 例のプロンプト create two collections in my back4app project 1\) collection items \ fields \ id objectid (auto generated) \ title string \ description string \ createdat date (auto generated) \ updatedat date (auto updated) 2\) collection users \ fields \ id objectid (auto generated) \ username string (unique) \ email string (unique) \ passwordhash string \ createdat date (auto generated) \ updatedat date (auto updated) このai支援の方法は時間を節約し、データスキーマがcrud操作に最適化されていることを保証します。 ステップ3 – データ管理のための管理コンソールの利用 管理コンソールを知る back4app管理コンソールは、コードを書くことなくバックエンドデータを管理するための視覚的インターフェースを提供します。ドラッグアンドドロップ機能により、レコードの追加、変更、削除などのcrud操作を簡単に実行できます。 管理コンソールの有効化 「その他」メニューを開く あなたのback4appダッシュボードで。 「管理アプリ」を選択 そしてクリックします 「管理アプリを有効にする」。 管理者資格情報を作成する プライマリ管理者アカウントを設定することで。このプロセスでは、システムロール(例えば、 b4aadminuser ) およびシステムクラスも作成されます。 管理アプリを有効にする 有効化されたら、管理コンソールにサインインしてデータを管理します。 管理アプリダッシュボード 管理コンソールを通じてcrud操作を管理する 管理コンソール内で、あなたは 新しいレコードを追加する コレクション(例えば、アイテム)内の「レコードを追加」ボタンを利用して新しいデータを挿入します。 レコードを表示および編集する 任意のエントリをクリックしてその詳細を確認または更新します。 レコードを削除する もはや必要のないエントリを削除します。 このインターフェースは、バックエンドデータ管理のプロセスを大幅に簡素化します。 ステップ 4 – android アプリケーションを back4app に接続する バックエンドが準備できたら、次のステップは android アプリケーションを back4app にリンクすることです。 オプションa parse android sdkの使用 プロジェクトにparse android sdkを含める 次の依存関係を build gradle ファイルに追加します implementation 'com github parse community parse sdk android\ parse 1 26 0' アプリケーションクラスでparseを初期化する 初期化子を作成します(例 parseinitializer java ) // parseinitializer java import com parse parse; import android app application; public class parseinitializer extends application { @override public void oncreate() { super oncreate(); parse initialize(new parse configuration builder(this) applicationid("your application id") clientkey("your android key") server("https //parseapi back4app com") build() ); } } androidアプリでのcrud操作の実装 例えば、アイテムデータを管理するサービスクラスを作成します // itemsservice java import com parse parseexception; import com parse parseobject; import com parse parsequery; import java util list; public class itemsservice { public list\<parseobject> fetchitems() { parsequery\<parseobject> query = parsequery getquery("items"); try { return query find(); } catch (parseexception e) { e printstacktrace(); return null; } } public void additem(string title, string description) { parseobject item = new parseobject("items"); item put("title", title); item put("description", description); try { item save(); } catch (parseexception e) { e printstacktrace(); } } public void updateitem(string objectid, string newtitle, string newdescription) { parsequery\<parseobject> query = parsequery getquery("items"); try { parseobject item = query get(objectid); item put("title", newtitle); item put("description", newdescription); item save(); } catch (parseexception e) { e printstacktrace(); } } public void removeitem(string objectid) { parsequery\<parseobject> query = parsequery getquery("items"); try { parseobject item = query get(objectid); item delete(); } catch (parseexception e) { e printstacktrace(); } } } オプションb restまたはgraphqlの使用 parse android sdkが適していない場合、rest呼び出しを通じてcrudタスクを実行できます。たとえば、restを介してアイテムを取得するには import java io bufferedreader; import java io inputstreamreader; import java net httpurlconnection; import java net url; public class restclient { public static void getitems() { try { url url = new url("https //parseapi back4app com/classes/items"); httpurlconnection conn = (httpurlconnection) url openconnection(); conn setrequestmethod("get"); conn setrequestproperty("x parse application id", "your application id"); conn setrequestproperty("x parse rest api key", "your rest api key"); bufferedreader reader = new bufferedreader(new inputstreamreader(conn getinputstream())); stringbuilder response = new stringbuilder(); string line; while ((line = reader readline()) != null) { response append(line); } reader close(); system out println("response " + response tostring()); } catch (exception e) { e printstacktrace(); } } } 必要に応じて、これらのapi呼び出しをandroidクラスに統合してください。 ステップ 5 – バックエンドのセキュリティ アクセス制御リスト (acl) の実装 オブジェクトの acl を設定することで、データを保護します。たとえば、所有者のみがアクセスできるアイテムを作成するには import com parse parseacl; import com parse parseobject; import com parse parseuser; public void createsecureitem(string title, string description, parseuser owner) { parseobject item = new parseobject("items"); item put("title", title); item put("description", description); parseacl acl = new parseacl(); acl setreadaccess(owner, true); acl setwriteaccess(owner, true); acl setpublicreadaccess(false); acl setpublicwriteaccess(false); item setacl(acl); try { item save(); } catch (exception e) { e printstacktrace(); } } クラスレベルの権限設定 (clp) back4app ダッシュボードで、コレクションの clp を調整し、認証されたユーザーのみが機密データにアクセスできるようにします。 ステップ 6 – android アプリでのユーザー認証の実装 ユーザー管理の設定 back4app は、認証管理のために parse の組み込みユーザーコレクションを使用します。android アプリで、次のように登録とログインを実装します import com parse parseexception; import com parse parseuser; public class authmanager { public void registeruser(string username, string password, string email) { parseuser user = new parseuser(); user setusername(username); user setpassword(password); user setemail(email); try { user signup(); system out println("registration successful!"); } catch (parseexception e) { e printstacktrace(); } } public void loginuser(string username, string password) { try { parseuser user = parseuser login(username, password); system out println("logged in as " + user getusername()); } catch (parseexception e) { e printstacktrace(); } } } セッション管理やパスワードリセットなど、必要に応じて追加機能を実装することもできます。 ステップ7 – 結論と今後の改善点 素晴らしい仕事です!javaを使用して基本的なcrud androidアプリケーションを作成し、back4appと統合しました。 このチュートリアルでは、 basic crud app android というプロジェクトを設定し、アイテムとユーザーのコレクションを定義し、back4app管理コンソールを介してデータを管理しました。 さらに、parse android sdk(または代替としてrest/graphql)を使用してandroidアプリを接続し、強力なセキュリティ対策を実装しました。 次のステップ: アプリケーションを拡張する: 高度な検索、詳細なアイテムビュー、リアルタイム通知などの新機能を追加します。 バックエンド機能を強化する: クラウド機能を試したり、サードパーティapiを統合したり、役割ベースのアクセスを設定します。 学びを深める: さらなるチュートリアルやベストプラクティスについては、 back4appのドキュメント https //www back4app com/docs を訪れてください。 コーディングを楽しんで、android crudアプリケーションの構築を楽しんでください!