お役立ちコンテンツ | フリーランスエンジニアの案件・求人なら【テクフリ】

AndroidでRealmを使ってみた〜お気に入り機能の実装(其の一)〜

2019.10.17

yamazaki_k

Android

目次

    今回はAndroidアプリでReamlを利用してデータの管理をしてみようと思います。 実装したい機能は「お気に入り機能」 SQLiteは触ったことあったけど、 NoSQLであるReamlを使うのには勉強時間がかかるのではないかと心配・・・ しかし、日本語のドキュメントがありとても親切↓ https://realm.io/jp/docs/java/latest/ 更に、GitHubで「Android Realm」と検索すれば結構簡単なコードがでてくるのでこれらを拝見しながら いざ、実装!! RealmはNoSQLなのでキーと値のペアでデータを格納していきます。 最初にキーとなるModelなるクラスを作ります。

    public class FavoriteModel extends RealmObject{
        private int id;
    
        public int getId() {
            return id;
        }
    
        public void setId(int id) {
            this.id = id;
        }
    }

    こんな感じで作成します。 重要なのが

    extends RealmObject

    です。 RealmのModelとして宣言して、あとはカプセル化してゲッター・セッターを書くだけ!! 続いては、データをRealmに格納する処理を書いていきましょう!!

     RealmConfiguration config = new RealmConfiguration.Builder(detailActivity)
                            .name(FavoriteDataFile)  //データを格納するファイル名を指定
                            .build();
                    Realm realm = Realm.getInstance(config);  //Realmを使う宣言
    
                    final List<FavoriteModel> favoriteList = new ArrayList<>();
                    FavoriteModel favoriteModel = new FavoriteModel();
                    favoriteModel.setId(id);
                    favoriteList.add(favoriteModel);  //先ほどのModelに格納していく
    
             //Modelに格納したデータをRealmに格納し直す
                    realm.executeTransaction(new Realm.Transaction() {
                        @Override
                        public void execute(Realm realm) {
                            realm.copyToRealm(favoriteList);
                        }
                    });
                    //Realmを終了することを忘れない
                    realm.close();

    格納はとても簡単にできました!! 次は格納したデータを取得して表示してみたいと思います!!

    フリーランス案件を探す

    今すぐシェアしよう!

    B!
    <span class="translation_missing" title="translation missing: ja.layouts.footer.icon_back_to_top">Icon Back To Top</span>
    TOP