public class SplashScreen extends AppCompatActivity {
static MediaPlayer mediaPlayer;
public SplashScreen(){
mediaPlayer = MediaPlayer.create(this, R.raw.acdc);
mediaPlayer.start();
}
}
на первой строке конструктора получаю Null , с сообщением о том, что невозможно создать экземпляр класса. Я так полагаю, что в момент отработки конструктора сам класс SplashScreen не полностью готов , еще не создался, чтобы передать себя .После чего он будет готов?
Краткий ответ: в методе onCreate.
Обычно пустая и готовая ко всему активити выглядит примерно так:
public class ExampleActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_example);
// Вот здесь можно начинать творить
}
}
UPD: Только сейчас заметил. У Вас объявлен static MediaPlayer mediaPlayer;, не стоит так делать, лучше объявите медиа плеер как обычное поле класса private MediaPlayer mediaPlayer;. Если Вы хотите, чтобы Ваш медиа плеер был доступен дольше, чем живёт Ваша активити, воспользуйтесь сервисом.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости