public static boolean canWrite(String path) { if (path == null) return false; if (path.startsWith("file://")) path = path.substring(7); if (!path.startsWith("/")) return false; if (path.startsWith(AndroidDevices.EXTERNAL_PUBLIC_DIRECTORY)) return true; if (AndroidUtil.isLolliPopOrLater()) return false; File file = new File(path); return (file.exists() && file.canWrite()); }
private void setContextMenuItems(Menu menu, MediaWrapper mediaWrapper) { long lastTime = mediaWrapper.getTime(); if (lastTime > 0) menu.findItem(R.id.video_list_play_from_start).setVisible(true); boolean hasInfo = false; final Media media = new Media(VLCInstance.get(), mediaWrapper.getUri()); media.parse(); media.release(); if (media.getMeta(Media.Meta.Title) != null) hasInfo = true; menu.findItem(R.id.video_list_info).setVisible(hasInfo); menu.findItem(R.id.video_list_delete) .setVisible( !AndroidUtil.isLolliPopOrLater() || mediaWrapper .getLocation() .startsWith("file://" + AndroidDevices.EXTERNAL_PUBLIC_DIRECTORY)); }