Код: Выделить всё
public class AllVideosActivity extends AppCompatActivity {
ActivityAllVideosBinding binding;
ArrayList videoList;
ListVideoAdapter adapter;
String foldername;
String folderPath;
private static String AD_UNIT_BANNER = "ca-app-pub-3940256099942544/9214589741";
public static InterstitialAd interaddds;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
binding = ActivityAllVideosBinding.inflate(getLayoutInflater());
setContentView(binding.getRoot());
binding.foldertitle.setSelected(true);
folderPath = getIntent().getStringExtra("folderPath");
videoList = new ArrayList();
ArrayUtil.videoItemArrayList = new ArrayList();
ArrayUtil.videoItemArrayList.addAll(videoList);
adapter = new ListVideoAdapter(videoList, this, 1, new OnClickAdapter() {
@Override
public void onClick(int position) {
Intent intent = new Intent(AllVideosActivity.this, VideoPlaingActivity.class);
intent.putExtra("position", position);
intent.putExtra("videotitle", videoList.get(position).getVideoName());
intent.putExtra("videopath", videoList.get(position).getVideoPath());
intent.putExtra("foldername", foldername);
startActivity(intent);
}
});
listVideos();
binding.videolist.setLayoutManager(new LinearLayoutManager(this));
binding.videolist.setAdapter(adapter);
foldername = getIntent().getStringExtra("folderName");
binding.foldertitle.setText(foldername);
binding.back.setOnClickListener(v -> {
onBackPressed();
});
}
private void listVideos() {
Uri uri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
String[] projection = {
MediaStore.Video.Media.TITLE,
MediaStore.Video.Media.DATA,
MediaStore.Video.Media.SIZE,
MediaStore.Video.Media.DURATION,
MediaStore.Video.Media.DATE_MODIFIED
};
String selection = MediaStore.Video.Media.DATA + " like ?";
String[] selectionArgs = new String[]{"%" + folderPath + "%"};
String sortOrder = MediaStore.Video.Media.DATE_MODIFIED + " DESC";
Cursor cursor = getContentResolver().query(uri, projection, selection, selectionArgs, sortOrder);
if (cursor != null) {
while (cursor.moveToNext()) {
String videoName = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.TITLE));
String videoPath = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATA));
String videoDuration = cursor.getString(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATION));
long videoSize = cursor.getLong(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.SIZE));
long modifiedDateMillis = cursor.getLong(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DATE_MODIFIED)) * 1000L;
String formattedDate = new SimpleDateFormat(" dd MMM", Locale.getDefault()).format(modifiedDateMillis);
VideoItem videoItem = new VideoItem(videoName, videoPath, videoDuration, videoSize, formattedDate, null);
videoList.add(videoItem);
ArrayUtil.videoItemArrayList.add(videoItem);
}
cursor.close();
}
}
@Override
protected void attachBaseContext(Context newBase) {
SharedPreferences sharedPreferences = newBase.getSharedPreferences("LanguagePrefs", Context.MODE_PRIVATE);
String keylott = sharedPreferences.getString("keylot", "en");
super.attachBaseContext(LocaleHelper.setLocale(newBase, keylott));
}
}
Как загрузить только 20 видео одновременно?
Подробнее здесь: https://stackoverflow.com/questions/791 ... droid-java