2015-10-12 28 views
4

當我運行我的Android應用程序,我得到以下錯誤:Android:資源在附加的堆棧跟蹤中獲取,但從未發佈。見java.io.Closeable的信息,避免資源泄漏

10-12 16:46:44.719 2710-2719/? E/StrictMode: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resource leaks. 
10-12 16:46:44.719 2710-2719/? E/StrictMode: java.lang.Throwable: Explicit termination method 'end' not called 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at dalvik.system.CloseGuard.open(CloseGuard.java:184) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at java.util.zip.Inflater.<init>(Inflater.java:82) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okio.GzipSource.<init>(GzipSource.java:57) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.HttpEngine.initContentStream(HttpEngine.java:490) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:680) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:388) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:332) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:500) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:105) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.android.okhttp.internal.http.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:25) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.http.GoogleHttpClient.a(SourceFile:806) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.http.GoogleHttpClient.b(SourceFile:770) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.http.GoogleHttpClient.execute(SourceFile:673) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.http.GoogleHttpClient.execute(SourceFile:664) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.playlog.uploader.b.a(SourceFile:332) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.playlog.uploader.b.a(SourceFile:227) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.playlog.uploader.b.a(SourceFile:199) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.playlog.uploader.UploaderService.a(SourceFile:39) 
10-12 16:46:44.719 2710-2719/? E/StrictMode:  at com.google.android.gms.gcm.af.run(SourceFile:130) 

這個錯誤是什麼意思,我怎樣才能解決呢?

+1

例如,當<activity>標籤一不小心走出了<application>

  • 仿真器已經StrictMode在默認情況下,在真實設備可以在代碼中通過開啓[附加堆棧跟蹤獲取資源的可能重複,但從未發佈。有關避免資源泄漏的信息,請參閱java.io.Closeable](http://stackoverflow.com/questions/25544021/a-resource-was-acquired-at-attached-stack-trace-but-never-released-see- java-io) – wastl

  • +0

    你在你的代碼中使用'MapViewFragment'嗎?我在我的類似錯誤,試圖從XML膨脹它。 –

    回答

    3

    你能分享你的代碼嗎?你是否使用模擬器運行你的應用程序或物理設備?

    因爲可能有很多原因:

    1. 已打開的東西,但從來沒有關閉它們。 Closable有一個close()方法,您必須調用該方法以在不再需要組件時(例如,在finally塊中)手動釋放與該組件關聯的已打開資源。

    2. 此外,當AndroidManifest.xml出現問題時,會顯示該錯誤消息。

    代碼:

    StrictMode.setVmPolicy (new StrictMode.VmPolicy.Builder().detectAll().penaltyLog() 
                  .penaltyDeath().build()); 
    
    相關問題