オフライン データベースのみを使用する Android の英語辞書アプリケーションを開発したいと考えています。つまり、WordWeb などのオンライン辞書にリダイレクトする必要はありません。私の言葉を保存するために何をすべきか誰か知っていますか? モバイルなのでSQLiteを使おうと思っています。しかし、ここにいる誰かがすでに私がやりたいことを行っている、または行っている場合は、専門家の提案を教えてもらえますか?
6 に答える
私はdeveloper.android.comからこのコードを使用しました。それがあなたにも役立つことを願っています。
編集:このページは利用できなくなりましたが、例自体はここのGithubにあります。
私はすでに辞書に対してこれを行っています:
https://play.google.com/store/apps/developer?id=e-Biene%20DEV&hl=en
単純なデータベース tblLanguage1[単語、翻訳] tblLanguage2[単語、翻訳] に変換できます。
(SQLite 形式 [エミュレーターから抽出] し、この変換された SQLite db をアプリのオフラインにアタッチします)。
検索するのは速くて速いでしょう。
および使用: 次のような構造を持つエミュレーターで作成された DB: テーブル:
lang1_Content lang1_segments lang1_segdir
シンプルの代わりにこれを使用してください。
私は SQLite を使用します。これはおそらく、Android で実行する最も簡単で簡単な方法です。もちろん、このソリューションの複雑さは、正確なニーズによって異なります。本当に単純な辞書だけが必要な場合は、基本的なクエリを使用した単純な db スキーマを使用できます。
頭に浮かぶもう 1 つのことは、トライ データ構造です。しかし、これを使ってこれをやってのけるのはおそらく面倒なことではないでしょう.SQLiteソリューションのパフォーマンスはあなたのニーズを十分に満たしていると思います.
最良のアプローチは、データをjsonファイルなどのファイルに保存してWebに保存するか、これをgoogledriveまたはdropboxにアップロードして公開し、その後ユーザーが初めてアプリを開いたときにダウンロードすることですjson ファイルを作成し、json からのデータを sql lite db に挿入します。このようにして、オフライン データに sql lite を使用できます。
あなたの主な問題は、どの Essential があなたの辞書を保存するかを指定することです。
Android では、次のようなデータを保存する方法が多数提供されています。
この投稿assets
で説明されているように、静的データベースを作成してフォルダーに保存することもできます。
android-samples
また、アプリの検索を実装する良い例であるSearchable Dictionary を確認することもできます。また、データを保存するいくつかのテクニックについても説明しています。
Google API のサンプルを試してみてください。Dictionary アプリケーションがあることはわかっています。オフラインでも大丈夫だと思います。オフライン キャッシュを使用して何かを構築する必要がありました。JAVA の優れた XML パーサーを使用して、SQLite データベースにデータを読み込みました。ユーザーがインターネットに接続すると、新しい XML がダウンロードされ、それを使用してデータベースが更新されます。ただし、アプリケーションに任意のタイプのファイルを保存できます。
http://developer.android.com/tools/samples/index.html 私が話しているサンプルは Searchable Dictionary と呼ばれます。