2011-08-21 21 views
0

我想創建一個應用程序,其中有一個按鈕,每次這個按鈕被點擊時顯示在屏幕上有些隨意預設消息的時間。我應該如何去存儲這些預設的消息?我應該使用SQLite數據庫還是應該創建一個填充了消息的數組並從中檢索消息?Android的發展 - 數據存儲

我不是在尋找代碼。我只想提出一些提示,建議或某人向我指出一些可能對我有幫助的文檔。

回答

1

哦,我的第一反應是,開始抽了一些代碼,但因爲你只想看一些不同的選擇,這裏是我能想到

陣的那些:硬碼所有的Array您的預設消息,然後用presetString [RandomNumber]創建一個Toast消息。沒什麼太花哨。非常直接的Java與添加Toast消息。 (關於吐司消息和其他顯示消息的選項的信息可以在這裏找到:http://developer.android.com/guide/topics/ui/notifiers/index.html) 優點:簡單。很容易看代碼,看看你的目標是什麼。缺點:處理真正長列表的數組非常繁瑣,未來的更新可能會變得繁重。此外,您也很難在程序的其他任何部分有效地使用它。

的strings.xml:http://developer.android.com/guide/topics/resources/string-resource.html的strings.xml是更多的 「Android開發者」 ISH在我看來的方法。您將所有可能的消息製作成一個,然後通過資源名稱將其加載到應用程序中。從那裏,它只是一個數組,您可以執行與通常相同的操作。 優點:由於它位於具有資源標識符的中央位置,因此程序的任何部分都可以使用它。具有與數組相同的基本功能 缺點:.apk文件已簽名,因此,您的資源無法在運行時修改。你把這裏的消息不能添加或更改

其他存儲類型,如JSON可用。除了更多的優勢外,這些將與strings.xml類似;他們很容易從遠程服務器加載。您的應用程序可以使遠程調用請求全陣列,並從那裏http://damonsk.com/2010/01/jsonarray-httpclient-android/

解析它。最後,你可以做一個SQLLite數據庫。使用它們需要在這個簡單的看似應用程序中有大量的開銷。如果你正在尋找一個持久的解決方案(這將保持數據不被使用)AND是可改變的,這將是首選。舉例來說,您希望賦予用戶添加新條目的能力,或者可以讓用戶更改消息或刪除他們不喜歡的消息,那麼這是適當的解決方案。主要關心的當然是真的有必要嗎?但如果是這樣,那麼你可以找到更多的文檔herehere (shows you how to copy a SQLLIte db雖然在Android 2上被警告。2有一個bug會阻止你添加大小超過1MB的文件作爲資產,所以如果你真的有很多消息要添加,你需要使用這個工作here

+0

感謝您回答我的問題!對此,我真的非常感激。我想我正在使用strings.xml路線。我想保持簡單,因爲我對android開發和編程一般都很陌生。 –

0

如果用戶可以創建,然後使用一個數據庫是有道理的新的消息,但如果消息來與.apk文件,然後只是把它們作爲一種資源,將它們存儲爲以.json或.xml文件。

如果你需要能夠挑選消息根據一天或位置的時候,那麼你可能需要多個文件或使用數據庫它還取決於。

如果您使用的是數據庫,您將從文件或URL中提取信息以填充它,因此,由於數據已經存在於帶有.apk文件的文件中,因此如果您不使用它不需要。