I tried to implement realm-java with ContentProvider.
17. realm-cocoa realm-core(C++) RLMRealm RLMSchema RLMObjectSchema Group Table Dog : RLMObject RLMResults Table(検索結果) OSSじゃない! (OSSで公開予定) OSS RLMProperty RLMProperty RLMProperty RLMObjectSchema RLMProperty RLMProperty RLMProperty RLMObjectSchema RLMProperty RLMProperty RLMProperty Person: RLMObject Food : RLMObject Row (Realmモデルクラスのインスタンスと対応) Row (Realmモデルクラスのインスタンスと対応) Row (Realmモデルクラスのインスタンスと対応)
正月にSwiftでRealmを使ってみてよかったのでまとめてみました。 Realmとは Realmはモバイルデバイス向けの新しいデータベースです。実体はTightDBというC++で書かれた独自のエンジンを使用しているようで、マルチプラットフォーム化もされていてiOS/Mac OS/Android向けのSDKが公開されています。 ■Realm公式 https://realm.io CoreDataに慣れているとそんなにハマることはなかったですが、Web開発者で特にSQLゴリゴリ書いて開発するタイプの人にはちょっとハマると思ったのでよく使うSQLをベースにまとめてみました。 なお、コードはSwiftですがObjective-CでもAndroidでもたぶん同じ感じだと思います。 2015/2/17: Objective-Cのコードを追記しました。 CREATE DATABASE RealmはSQ
はじめに この記事は「Android Advent Calendar 2014」の5日目の記事です。 追記(2015/12/19) 2015年版を書きました。どうぞご覧下さいませ。 天下一「AndroidのORM」武道会(2015年版) - Qiita tl;dr 3行でまとめ へ移動↓ AndroidのORM事情 スマートフォンアプリでは、ネットワークから取得したデータの保持や、ユーザーが入力したデータの保持、その他いろいろなデータの管理にSQLiteデータベースを使用することが多いと思われます。 これらはAndroidの標準APIで操作できますが ―一度やってみればわかりますが― 非常にめんどくさく、思わず険しい顔になってしまいます。 そんなAndroidのSQLite操作を楽に行うため(そして実装時間節約のため)、O/Rマッパー(ORM)を導入するのは良い判断だと思います。 ところが
レッスン一覧 料金プラン ログイン 2024/11/25 NEW 「Python入門 関数編」のミニクイズをリリースしました 2024/11/25 NEW 「実践!ECサイトを模写しよう」のミニクイズをリリースしました 2024/11/22 NEW 「Python入門 基礎文法編」のミニクイズをリリースしました 2024/11/22 NEW 「JavaScript入門 DOM編」のミニクイズをリリースしました 2024/11/21 NEW 【週刊ドットインストール】 レッスン制作の進捗、HTML/CSSを極めるコーナーを更新、今週のミニクイズ 2024/11/21 NEW 「JavaScript入門 データ構造編」のミニクイズをリリースしました 2024/11/20 NEW 図解「 background 」 - HTML / CSS を極めるコーナー 2024/11/19 NEW 「Jav
リレーションシップを作りたい場合は以下のように getMany() メソッドを使って実装します。この場合、Category : Item が一対多のリレーションシップを持ちます。 @Table(name = "Categories") public class Category extends Model { @Column(name = "Name") public String name; public List<Item> items() { return getMany(Item.class, "Category"); } } 保存・更新・削除・クエリ 作成したモデルクラスを使って DB に保存したりクエリで取得したりするには以下のように実装します。これぞ ActiveRecord スタイル。見やすく分かりやすく素晴らしいですね! // 保存 Item item = new Ite
2014-01-09 ActiveAndroidのWikiを和訳した ActiveAndroidとは、アクティブ・レコードパターンのAndroidのORMです。 結構好きなので公式Wikiを和訳しました。こういうのQiitaに投稿した方が承認得られそう。 Getting started Adding the JAR jarを取得してプロジェクトにビルドパスを通す。 ソースをcloneしてルートフォルダでantコマンドを実行する。成果物はdistフォルダに作成される。 Downloadsから最新のjarをダウンロードしてくる Installing from Maven Gitからソースをcloneしてローカルのmavenリポジトリにインストールする。 git clone https://github.com/pardom/ActiveAndroid.git cd ActiveAndroid
新しくアプリを作るときにAndroid内でのデータの持ち方や、アクセスの仕方、モデルの扱い方には色々あってどうしようってなると思うので、僕の少ない経験から考えたことをまとめます。 ファイルに保存 DBは注意して使わないとデータがアップデートしたら全部消えましたとか、あるカラムだけデータが入ってませんでしたとかあるので、データの簡易保存、たとえばレスポンスのjsonをそのままキャッシュするとか、検索する必要がなかったりあまり更新しないモデルをシリアライズして保存するときにはファイル保存が向いていると思います。 なお、JavaのSerializableは柔軟性が低く、バージョンアップでデータを壊してアプリが落ちるということが分かっていてもハンドリングできなくて防ぐのが難しかったりするので、シリアライズするときはgsonとかmessagepackを使うことをオススメします。 ただこのやり方でもキ
FrogApps 技術ブログ始めました! RailsやiOS、HTML5の情報を発信中!! → http://qiita.com/teams/frogapps ここ数年、位置情報を使ったアプリ・サービスが増えましたが、GPSから取得出来る緯度経度だけではデータとして使いにくい事があります。 GoogleのGeocodingサービスなどで、緯度経度から住所への変換ができますが、件数や速度の問題があります。 そこで、国土交通省のデータを元に、緯度経度から住所への変換を行ってみましょう。 国土数値情報ダウンロードサービス http://nlftp.mlit.go.jp/ksj/gml/datalist/KsjTmplt-N03.html から全都道府県を選択。最新の情報を全都道府県分選択します。 PostGISのセットアップ http://trac.osgeo.org/postgis/wiki/
日本Androidの会テスト部が、いままで培ってきたAndroidアプリ開発におけるテストのノウハウを、実際のテストコード例とともに紹介していきます スマホアプリにデータ永続化が欠かせない理由 本連載「Androidアプリ開発テスト入門」では、Androidアプリを開発している方のためにテストの基本的なノウハウを解説しています。第4回では、データベース(以下、DB)のテストについて解説します。 第2回の「Androidでビジネスロジックのテストを自動化するには」でも触れたように、DBのテストはビジネスロジックのテストの一部に含まれます。 これまでの連載でお伝えしてきた内容では、外部通信のやりとりは発生しませんでしたが、アプリが外部リソースを参照したり更新するようになると、サーバとのやりとりによってネットワーク通信が発生します。 サーバに毎回リソースの処理を要求する作りになっていると、その都
こんにちは。開発チームの駒津です。 ここ半年ほど、弊社アプリLINEのAndroid版を開発しています。関係者一同の頑張りもあってAndroidユーザー 100万人達成という非常にうれしい状況なのですが、かなりのハイスピードで開発が進みましたのであまり冒険せずに、力技で少し泥臭く実装している箇所もあります。 データベース周りも普通にSQLiteDatabase経由でSQL文を書いているのですが、できればOR Mapperを使いたかった… という反省点があり、現在開発状況が少し落ち着いた (のか…? 本当に…?) 今のうちにそっち方面を調べておこうかと思います。 Androidではそのスペックの都合上, 軽く動作するOR Mapperが向いていそうです。そういう視点で色々探して見たところORMLiteが良さそうな気がしました。正式にAndroidに対応していると謳っているのも嬉しいところ。
かなぶんの辞書DBのように、アプリに初期値としてDBを含めたい場合、assets内に保存しておき、初回起動時にdatabasesにコピーする、という方法があります。 基本的なやり方はこちらのサイトで紹介されている通りなのですが、この方法は小さいファイルなら問題ないのですが、1MB以上のファイルだとAssetManagerでExceptionが発生してしまいます。 AndroidのAssetManagerの内部では UNCOMPRESS_DATA_MAX という値が定義されていて、機種依存にはなると思いますが、現状出回っている端末では1024*1024 = 1MBに設定されています。 1MB以上のDBを扱うためには ファイルを分割する ファイルを圧縮する の方法があります。 方法1.ファイルを分割する 最大1MBでファイルをを分割し、初回起動時に分割されたファイルを結合し、databases
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く