2012-03-07 77 views
3

我正在從一個數據庫中提取數據的android應用程序。我想在活動(單個字符串)之間傳遞數據 。我最初使用Bundle功能實現了數據傳遞。但是,我遇到了Application類,它允許從任何活動訪問變量。(Android)哪個更適合Bundle或應用程序?

你會推薦用哪種方式在活動間移動數據?

public class MyVideo extends Application { 

    private String url ="NULL"; 

    public String getUrl(){ 
    return url; 
    } 
    public void setUrl(String newurl){ 
    url = newurl; 
    } 

}

+0

Bundle對預定義的數據類型很有用,但是當你有自定義對象並且你需要實現Parcelable的時候,有太多的樣板代碼和麻煩。我更喜歡使用Application來傳遞數據。我覺得它更直觀。 – 2012-12-20 21:37:11

回答

4

這類似於這個問題What is a "bundle" in an Android application,其中包含與例如一個全面的答案。

我的答案是,你會使用一個包,因爲這是他們的設計目的,並且很容易使用。該捆綁包支持一個字符串,沒有任何額外的工作正在完成,所以我會認爲它是理想的。

添加到意向

intent.putExtra("myKey",AnyValue); 

檢索:

Bundle extras = intent.getExtras(); 
String tmp = extras.getString("myKey"); 
+0

謝謝格雷厄姆 – Fabii 2012-03-07 10:58:21

+0

很高興我可以幫助:) – 2012-03-07 10:58:53

1

應用類將表現爲在上下文中的單例類。您可以使用單例類本身在活動之間傳遞數據。如果您只想在活動之間傳遞數據,則無需使用Application類。

數據包優先用於傳遞數據b/w活動。

相關問題