2016-08-09 4 views
1

RecyclerivewExoplayer을 사용하고 있습니다. Activity에있는 Exoplayer을 공개하려고합니다. ViewHolder에서 Exoplayer를 사용하고 있습니다. Exoplayer을 공개 할 방법을 찾을 수 없습니다.Exoplayer를 메모리에서 해제 할 수 없습니다.

public void releaseMemory() { 
    audioCapabilitiesReceiver.unregister();//Method in the ViewHolder 
    player.release(); 
} 


public void releaseMemory() { 
    viewHolder.releaseMemory();//Method in the Adapter 
} 


@Override 
protected void onDestroy() { 
    videoAdapter.releaseMemory();//Method in the Activity 
    super.onDestroy(); 
} 

지금 내가 거기 그렇게 할 다른 효율적인 방법을 RuntimeException 됐나을 얻고있다.

E/AndroidRuntime: FATAL EXCEPTION: main 
                     Process: com.waynell.videolist.demo, PID: 22746 
                     java.lang.RuntimeException: Unable to stop activity {com.waynell.videolist.demo/com.waynell.videolist.demo.activity.MainActivity}: java.lang.NullPointerException 
                      at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3487) 
                      at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3541) 
                      at android.app.ActivityThread.access$1400(ActivityThread.java:138) 
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1289) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:149) 
                      at android.app.ActivityThread.main(ActivityThread.java:5045) 
                      at java.lang.reflect.Method.invokeNative(Native Method) 
                      at java.lang.reflect.Method.invoke(Method.java:515) 
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794) 
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:610) 
                      at dalvik.system.NativeStart.main(Native Method) 
                     Caused by: java.lang.NullPointerException 
                      at com.waynell.videolist.demo.activity.MainActivity.onStop(MainActivity.java:325) 
                      at android.app.Instrumentation.callActivityOnStop(Instrumentation.java:1212) 
                      at android.app.Activity.performStop(Activity.java:5376) 
                      at android.app.ActivityThread.performDestroyActivity(ActivityThread.java:3482) 
                      at android.app.ActivityThread.handleDestroyActivity(ActivityThread.java:3541)  
                      at android.app.ActivityThread.access$1400(ActivityThread.java:138)  
                      at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1289)  
                      at android.os.Handler.dispatchMessage(Handler.java:102)  
                      at android.os.Looper.loop(Looper.java:149)  
                      at android.app.ActivityThread.main(ActivityThread.java:5045)  
                      at java.lang.reflect.Method.invokeNative(Native Method)  
                      at java.lang.reflect.Method.invoke(Method.java:515)  
                      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:794)  
                      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:610)  
                      at dalvik.system.NativeStart.main(Native Method)  

답변

0

플레이어의 onStop() 메소드 대신 activity forOdestroy()를 중지 할 수 있습니다.

+0

여전히 작동하지 않습니다. 동일한 오류가 발생합니다. –

+0

전체 오류 로그를 검색하여 실제로 오류가 발생한 위치를 추적해야합니다. – NilayDani

+0

전체 로그가 아닐 수도 있습니다. 일부 로그가 누락되었을 수 있습니다. – NilayDani

관련 문제