В настоящее время я пытаюсь создать медиаплеер, и я пытаюсь вызвать метод updateMusic из класса активности, который я создал, и это отображает его в списокFragemnt классСистемные службы недоступны для деятельности до onCreate()?
, но я продолжаю получать эту ошибку и im не уверен, как заставить его работать Недавно у меня было все приложение, созданное в Action, и оно отлично работало, поэтому я пытаюсь отформатировать его на фрагменты, поэтому я могу добавить просмотрщик для прокрутки, но кроме того, что точка
MediaActivity class
public class MediaActivity extends ListActivity {
Uri uri = Uri.parse(Environment.getExternalStorageDirectory() + "/");
public Uri uriMusic = Uri.parse("/storage/emulated/0/MUSIC/");
public Uri uriVideo = Uri.parse("/storage/emulated/0/VIDEOS/");
private static final String SD_PATH = new String(Environment.getExternalStorageDirectory().getPath() + "/");
public static final String MUSIC_PATH = new String("/storage/emulated/0/MUSIC/");
public static final String VIDEO_PATH = new String("/storage/emulated/0/VIDEOS/");
public List<String> videos = new ArrayList<String>();
public List<String> songs = new ArrayList<String>();
private MediaPlayer mp = new MediaPlayer();
public void updateMusic() {
File home = new File(MUSIC_PATH);
if (home.listFiles(new mp3Filter()).length > 0) {
for (File file : home.listFiles(new mp3Filter())) {
songs.add(file.getName());
}
ArrayAdapter<String> songList = new ArrayAdapter<String>(this, R.layout.song_item, songs);
setListAdapter(songList);
}
}
, то это класс CategorySong, который расширяет фрагмент, чтобы отобразить список
public class CategorySongs extends ListFragment {
MediaActivity mediaActivity;
@Override
public View onCreateView(LayoutInflater inflater,
@Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
container.removeAllViews();
mediaActivity = new MediaActivity();
mediaActivity.updateMusic();
mediaActivity.buttons();
return inflater.inflate(R.layout.activity_media, container, false);
}
}
Но я получаю эту ошибку
07-13 20:54:26.701 7281-7281/com.example.mason.mediaplayer E/MediaPlayer-JNI﹕ QCMediaPlayer mediaplayer NOT present 07-13 20:54:26.711 7281-7281/com.example.mason.mediaplayer E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: com.example.mason.mediaplayer, PID: 7281
java.lang.IllegalStateException: System services not available to Activities before onCreate()
at android.app.Activity.getSystemService(Activity.java:5259)
at android.widget.ArrayAdapter.init(ArrayAdapter.java:310)
at android.widget.ArrayAdapter.<init>(ArrayAdapter.java:153)
at com.example.mason.mediaplayer.MediaActivity.updateMusic(MediaActivity.java:287)
at com.example.mason.mediaplayer.CategorySongs.onCreateView(CategorySongs.java:28)