簡體   English   中英

在活動開始而不是onCreate上運行的Android方法

[英]Android Method to run on activity start and not onCreate

我有一種在活動開始時需要運行的方法。 我試過將其放在OnCreate中,但是如果一段時間不進行任何活動,則onCreate會被調用兩次(是這種情況,我正在檢查在線更新...,所以需要一些時間)

這就是為什么我不能將更新方法放在onCreate中的原因

有任何想法嗎?

謝謝羅恩

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.options);
    checkUpdate();
}

private void checkUpdate(){
    Runnable runnable = new Runnable() {
        public void run() {
            try
            {
                // create a web request to check if i have the latest update
                HttpClient client = new DefaultHttpClient();  
.
.
.
.
.
        };
    new Thread(runnable).start();

通常,您不想將需要花費一些時間的方法放在UI線程上。 相反,您可能要創建AsyncTask(或線程/處理程序)以在后台運行該方法。 另請參閱onStart()是否可以幫助您擺脫onCreate()的某些邏輯。

使用布爾值確定活動是否已經開始。

您可以在oncreate中執行該方法,但添加一個類布爾字段以檢查是否已經添加了運行該方法。

暫無
暫無

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

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