Мне нужно, чтобы мой объект MediaPlayer был видимым как переменная класса, а не локальный для oncreate.Определение MediaPlayer вне onCreate throws NullpointerException?
Но когда я пытаюсь запустить его, как this-
public class TextAct extends AppCompatActivity
{
MediaPlayer wavesMp = MediaPlayer.create(this, R.raw.river);//Line 132
@Override
protected void onCreate(Bundle savedInstanceState)
{
.
.
}
Это терпит неудачу с такой же ошибкой, как хорошо
public class TextAct extends AppCompatActivity
{
MediaPlayer wavesMp; //Line 132
@Override
protected void onCreate(Bundle savedInstanceState)
{
wavesMp= MediaPlayer.create(this, R.raw.river);
.
}
LogCat says-
процесса: com.app24 .gg.relaaax, PID: 24202 java.lang.RuntimeException: Невозможно создать экземпляр активности> ComponentInfo {com.app24.gg.relaaax/com.app 24.gg.relaaax.TextAct}: java.lang.NullPointerException в android.app.ActivityThread.performLaunchActivity (ActivityThread.java:2126) на android.app.ActivityThread.handleLaunchActivity (ActivityThread.java:2249) на андроид. app.ActivityThread.access $ 800 (ActivityThread.java:141) на android.app.ActivityThread $ H.handleMessage (ActivityThread.java:1212) на android.os.Handler.dispatchMessage (Handler.java:102) на android .os.Looper.loop (Looper.java:136) at android.app.ActivityThread.main (ActivityThread.java:5113) at java.lang.reflect.Method.invokeNative (собственный метод) at java.lang. reflect.Method.invoke (Method.java:515) at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (Zy goteInit.java:793) на com.android.internal.os.ZygoteInit.main (ZygoteInit.java:609) в dalvik.system.NativeStart.main (нативный метод) Вызванный: java.lang.NullPointerException на android.content.ContextWrapper.getResources (ContextWrapper.java:89) на android.view.ContextThemeWrapper.getResources (ContextThemeWrapper.java:78) в android.media.MediaPlayer.create (MediaPlayer.java:844) на ком. app24.gg.relaaax.TextAct. (TextAct.java:132)