我正在 android 中开发 radio 流应用程序,我的链接列表中有一个 url,它是来自 .pls 文件链接的已解析内容,我需要的是从 url 解析我需要获取的内容使用 get(position) 方法从我的链表中获取元素。任何人都可以在这里提出任何建议吗?我需要帮助。
这是一个代码 fragment ,我想使用链表中的 url 到 player=MediaPlayer.create(this,Uri.parse("//Url from linked list"));
我的链接列表中有来自 .pls 文件链接的已解析 url,我只需要从链接列表中获取元素 链表对象
LinkedList<String> urls;
private LinkedList<String> fGetPlayableUrl( String mPls) {
GetStreamingUrl oGetStreamingUrl = new GetStreamingUrl(MainActivity.this);
urls=new LinkedList<String>();
urls = oGetStreamingUrl.getStreamingUrl(mPls);
return urls;
}
private void initializeMediaPlayer() throws IOException {
player = new MediaPlayer();
//int i ;
/* for (i=0;i<='\0';i++)
{
}*/
//URL=urls.get(2).toString();
try {
player=MediaPlayer.create(this,Uri.parse("//url here"));
player.setDataSource(URL);
//player.prepareAsync();
//player.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
}
player.setOnBufferingUpdateListener(new OnBufferingUpdateListener() {
public void onBufferingUpdate(MediaPlayer mp, int percent) {
playSeekBar.setSecondaryProgress(percent);
Log.i("Buffering", "" + percent);
}
});
}
最佳答案
为什么不尝试将 player=MediaPlayer.create(this,Uri.parse("//url here"));
放在链接列表的循环中,就像这样:
LinkedList<String> urls;
// Just make this method void.
//Anyways your LinkedList is still accessible globally
//and you are instantiating your linkedlist inside this method;
private void fGetPlayableUrl( String mPls) {
GetStreamingUrl oGetStreamingUrl = new GetStreamingUrl(MainActivity.this);
urls=new LinkedList<String>();
urls = oGetStreamingUrl.getStreamingUrl(mPls);
}
private void initializeMediaPlayer() throws IOException {
player = new MediaPlayer();
//int i ;
/* for (i=0;i<='\0';i++)
{
}*/
//URL=urls.get(2).toString();
fGetPlayableUrl(url String here);
for(String url:urls){
try {
player=MediaPlayer.create(this,Uri.parse(url));
player.setDataSource(URL);
//player.prepareAsync();
//player.start();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (IllegalStateException e) {
e.printStackTrace();
}
player.setOnBufferingUpdateListener(new OnBufferingUpdateListener() {
public void onBufferingUpdate(MediaPlayer mp, int percent) {
playSeekBar.setSecondaryProgress(percent);
Log.i("Buffering", "" + percent);
}
});
}
}
关于java - 如何使用 get 方法从链表中获取元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21595050/