2013-10-31 69 views
0

我在後臺服務上傳圖像從設備到服務器,但當我打開應用程序,它崩潰(沒有logcat錯誤)。我在清單中使用largeHeap =「true」。我想知道如何優化服務?後臺服務 - 堆大小

public String getGal(String sec) 
{ 

    file = new File(Environment.getExternalStorageDirectory(), "/Image/folder/"); 

    File[] allFiles = file.listFiles(); 
    for(int i=0; i<allFiles.length; i++) { 


       try { 
        if(allFiles[i].getPath().toString().contains(".jpg")) 
        { 
        up(allFiles[i].getCanonicalPath()); //my upload method 
        } 

      } catch (IOException e) { 
       // TODO Auto-generated catch block 
       e.printStackTrace(); 
      } 

     } 
    return sec; 

    } 
+0

如果有「沒有logcat錯誤」,那麼你聲稱「它崩潰」的基礎是什麼? – CommonsWare

+0

Ops,我的錯誤,應用程序說「應用程序沒有響應,你想關閉它嗎?」與一個白色的空白屏幕。 –

回答

0

應用程序是說「應用程序沒有響應,你要關閉它?」帶有白色的空白屏幕

您正在捆綁主應用程序線程。請注意,Service上的生命週期方法(例如onStartCommand())在主應用程序線程上被調用。任何需要超過一毫秒或兩毫秒的工作都應該移到後臺線程上。

+0

我不知道這一點,謝謝。 –