2014-05-22 93 views
0

我看過Coursera android course,我懷疑Android是如何在我正在構建的應用程序中工作的。它做基本的東西,如註冊並顯示我的信息,並使用服務器作爲數據庫做TODO。而且我知道這取決於我想如何開始建造。需要一些選擇。對Android的疑惑

  1. 碎片可以在ActionBar中創建,每當我想被調用?還是這樣不好,並堅持建立默認菜單,並以編程方式隱藏它?試圖谷歌,並沒有找到任何信息。

  2. MainActivity是爲了使http請求POST來在我的服務器中註冊名稱,電子郵件和密碼。每當他登錄時是否可以啓動SecondActivity?它就像Instagram一樣。但是,我可以設置一個條件來檢查取決於是否登錄或不更改setContent(R.layout.main)setContent(R.layout.second)

  3. 當寄存器完成時。所有的數據都保存在服務器上。但是,如果他每次登錄或不登錄,他都會在每次更改活動或執行一些操作時進行檢查。我能用一個帶有標誌(布爾)的線程嗎?可能是一個不好的做法,並降低性能?或SharedPrefrences添加標誌(布爾)?但SharedPreferences在應用程序關閉後保存?

  4. 關於在每個活動中顯示我的信息,如姓名,年齡和性別等等。請求http只是爲了顯示信息對我的應用程序非常不利,因爲它只是TODO應用程序,我不需要連接到互聯網來查看我的信息,但是在編輯的情況下,是的。因此,如果我保存在SharedPreferences中,但仍保留相同的疑問,那麼在關閉應用程序後它會保存起來?

+0

答案總是肯定的。一切都是可能的......碎片是要走的路,當然你可以在另一個完成時開始一個活動,共享偏好將會持續。那麼你的問題是什麼? – ElDuderino

+1

這看起來像一個4個問題,也許更好地單獨或順序問。考慮到您的應用和服務器之間的通信:查看REST設計。 –

+0

我建議你在Coursera上採用[Pattern Oriented Software Architecture course](https://class.coursera.org/posa-002)。你看起來好像沒有真正進入你的最後一個問題的併發性 – interlude

回答

2

由於您的問題可能會被徹底編輯(正如我在評論中建議的),我在此引用原文。

片段可以在ActionBar中創建,每當我想被調用?或 這是不好的方式,並堅持使用默認的菜單建立和隱藏它 編程?試圖谷歌,並沒有找到任何信息。

是的,片段可以隨便使用。但那不是一個真正的答案。 基地您的各種活動設計(認爲「什麼應用程序屏幕應用戶瀏覽」,並給其中的一個片段,每一個。

在MainActivity由作出http請求POST在註冊名稱, 電子郵件地址和密碼我的服務器有沒有可能在他登錄時啓動SecondActivity?它就像Instagram一樣。但是,我可以設置一個條件來檢查取決於是否記錄或不更改 setContent(R.layout.main)或setContent( R.layout.second)?

是的,你可以有一個登錄通過startActivityForResult()調用的活動。它會連接並返回成功/失敗。 (請參閱http://developer.android.com/training/basics/intents/result.html

另外,請記住HTTP POST未加密,密碼以純文本格式發送。

當寄存器完成時。所有的數據都保存在服務器上。但我 想要檢查每次他改變活動或做一些行動,如果他的 登錄或不。我能用一個帶有標誌(布爾)的線程嗎?可能是 不好的做法並降低性能?或SharedPrefrences加入 標誌(布爾)?但SharedPreferences在應用程序關閉後保存了 ?

是的,SharedPreferences在退出應用程序後存儲。簡單地實施應用程序設置的理想選擇,但是當存儲項目列表時,您應該查看其他解決方案。一個JSON文件可能是有用的,你可以直接從/向服務器推/推它。

關於在每個活動,如名稱,年齡和性別 等顯示我的信息等。請求http對我的應用程序非常不利,因爲它只是TODO應用程序,我不需要連接到互聯網 以查看我的信息,但在編輯的情況下,是的。所以我保存在SharedPreferences的 中,但是保持相同的疑問,它會在我關閉應用程序後保存?

查看上面的答案。簡而言之,從服務器獲取一個JSON字符串,將其存儲在本地文件中。查看和編輯本地文件,然後隨時上傳。這種方式也可以脫機工作,但仍可以下載/上傳更改。