我使用String Arrays
來執行一些任務[承擔播放視頻]在一個正確的順序和它工作爲每expectations
,請參閱下面的代碼:直接調用ArrayList中的最後一個項目
String[] videoUriList = {str1, str2, str3};
if(null != videoUriList && videoUriList.length > 1) {
// Plays the first video, then the second video.
mediaSource = new ConcatenatingMediaSource(
buildMediaSource(Uri.parse(videoUriList[0])),
buildMediaSource(Uri.parse(videoUriList[1])),
buildMediaSource(Uri.parse(videoUriList[2]))
);
}
RESULT:
在一個正確的順序使用上述情況下其播放的視頻只,首先它STR1開始的......然後STR1完成後,它的動作到STR2賽車。如果我使用for循環來實現同樣的結果在最後它起着STR3
但,我facing an issue
,它可以直接播放STR3(第3項該列表[即 - 第二個索引])簡而言之,跳過 str1和str2來玩。
ArrayList<String> arrayList = new ArrayList<String>();
arrayList.add(str1);
arrayList.add(str2);
arrayList.add(str3);
if(null != arrayList) {
Log.d("arrayList::", String.valueOf(arrayList.size()));
for(int i=0; i<arrayList.size(); i++)
{
String string = arrayList.get(i);
Log.d("string::", string+", "+String.valueOf(i));
mediaSource = new ConcatenatingMediaSource(buildMediaSource(Uri.parse(string)));
}
}
我LOG說:
D/arrayList::: 3
D/string::: http://www.storiesinflight.com/js_videosub/jellies.mp4, 0
D/string::: http://clips.vorwaerts-gmbh.de/VfE_html5.mp4, 1
D/string::: http://www.html5videoplayer.net/videos/toystory.mp4, 2
那麼,我做的錯誤,是什麼地方出了問題的for循環
不要使用代碼降級來突出顯示單詞。 – shmosel
如果這是關於exoplayer的,你應該在問題中加上標籤。 – shmosel