簡體   English   中英

帶有離線數據庫的android詞典應用程序

[英]android dictionary application with offline database

我想開發一個僅使用離線數據庫的 android 英語詞典應用程序。 我的意思是說它不必被重定向到像 WordWeb 之類的在線詞典。 有人知道我應該怎么做來存儲我的話嗎? 我正在考慮使用 SQLite,因為它是移動的。 但是如果這里有人已經做了或做了我想做的事情,你能給我一些專家建議嗎?

http://developer.android.com/resources/samples/SearchableDictionary/src/com/example/android/searchabledict/DictionaryDatabase.html

我使用了 developer.android.com 中的這段代碼。 希望它也能幫助你。

編輯:此頁面不再可用,但示例本身在 Github 上

我會使用 SQLite,這可能是在 Android 上最簡單、最直接的方法。 當然,此解決方案的復雜性取決於您的確切需求。 如果您只需要一個非常簡單的字典,那么您可以使用帶有基本查詢的簡單 db 模式。

想到的另一件事是 Trie 數據結構,您可能需要研究一下: http : //en.wikipedia.org/wiki/Trie#Dictionary_representation 但是使用它來解決這個問題可能不值得,我猜想 SQLite 解決方案的性能足以滿足您的需求。

我已經對我的字典這樣做了:

https://play.google.com/store/apps/developer?id=e-Biene%20DEV&hl=en

您可以轉換為您的簡單數據庫, tblLanguage1[word, translation] tblLanguage2[word, translation]

到(SQLite 格式 [從模擬器中提取],然后將此轉換后的 SQLite db 附加到您的離線應用程序中)。

搜索將很快。

並使用:在模擬器中創建的數據庫,其結構如下:表:

lang1_Content lang1_segments lang1_segdir

使用它而不是簡單的。

試試 Google API 示例,我知道他們有一個 Dictionary 應用程序。 我很確定它也是離線的。 我必須使用離線緩存構建一些東西,我使用 JAVA 出色的 XML 解析器將東西加載到 SQLite 數據庫中。 當用戶有互聯網連接時,它會下載一個新的 XML 並使用它來更新數據庫。 但是,您可以在應用程序中存儲任何類型的文件。

http://developer.android.com/tools/samples/index.html我正在談論的示例稱為可搜索字典。

您的主要問題是指定存儲字典的基本內容。

Android 提供了很多方法來存儲您的數據,例如:

  • 共享首選項
  • 文件保存在設備的內部存儲器外部存儲器中
  • SQLite 數據庫
  • 您還可以創建一個靜態數據庫,並將其存儲在您的assets中所描述的文件夾這個職位。

    您也可以從android-samples檢查 Searchable Dictionary,這是實現應用搜索的一個很好的例子,並且還描述了一些存儲數據的技術。

    最好的方法是 - 將您的數據保存在 json 文件中的文件中並將其保存在網絡上,或者您也可以將其上傳到 googledrive 或 dropbox 並將其公開,然后當用戶第一次打開應用程序時,下載json 文件並將 json 中的數據插入 sql lite db。這樣您就可以將 sql lite 用於離線數據。

    暫無
    暫無

    聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

     
    粵ICP備18138465號  © 2020-2024 STACKOOM.COM