Zrobiłem aplikację dla systemu Android, który działa mniej więcej tak:android błąd: Nie można odczytać wejściowych deskryptorów kanał z paczki
- Aplikacja komunikuje się z informacjami usługi sieci Web i transferów (nie pliki)
- mogę przejść do innego ekranu i za pomocą
Intent
startActivity
Niestety, czasami awarie aplikacji z powodu następującego błędu w różnej aktywności:
java.lang.RuntimeException: Could not read input channel file descriptors from parcel.
at android.view.InputChannel.nativeReadFromParcel(Native Method)
at android.view.InputChannel.readFromParcel(InputChannel.java:135)
at android.view.IWindowSession$Stub$Proxy.add(IWindowSession.java:523)
at android.view.ViewRootImpl.setView(ViewRootImpl.java:481)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:301)
at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:215)
at android.view.WindowManagerImpl$CompatModeWrapper.addView(WindowManagerImpl.java:140)
at android.view.Window$LocalWindowManager.addView(Window.java:537)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2507)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1986)
at android.app.ActivityThread.access$600(ActivityThread.java:123)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:4424)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
at dalvik.system.NativeStart.main(Native Method)
Ale nie wiem, co oznacza ten błąd, ponieważ nie pracuję z plikami. Dowolny pomysł?
Zauważ, że 'StrictMode.VmPolicy "wykrywa tylko przecieki, które i tak są banalne, aby uniknąć (głównie te, związane z niektórymi anonimowymi klasami wewnętrznymi). Nie wykrywa w sposób niezawodny przecieków deskryptorów plików (wszystkie wykryte deskryptory są już zamknięte przed uruchomieniem komunikatu). Leak Canary robi o wiele lepszą robotę w wykrywaniu wycieków pamięci, ponieważ wykonuje analizę pełnotwarzową. – user1643723