pull/137/head
FongMi 3 years ago
parent a66ebeea7f
commit b65d38fda5
  1. 1
      app/src/leanback/java/com/fongmi/android/tv/ui/activity/DetailActivity.java
  2. 6
      app/src/main/java/com/fongmi/android/tv/utils/FileChooser.java
  3. 1
      app/src/mobile/java/com/fongmi/android/tv/ui/activity/DetailActivity.java

@ -122,6 +122,7 @@ public class DetailActivity extends BaseActivity implements CustomKeyDownVod.Lis
}
public static void file(FragmentActivity activity, String path) {
if (TextUtils.isEmpty(path)) return;
String name = new File(path).getName();
if (Utils.hasPermission(activity)) start(activity, "push_agent", "file://" + path, name, true);
else PermissionX.init(activity).permissions(Manifest.permission.WRITE_EXTERNAL_STORAGE).request((allGranted, grantedList, deniedList) -> start(activity, "push_agent", "file://" + path, name, true));

@ -56,7 +56,7 @@ public class FileChooser {
if (DocumentsContract.isDocumentUri(context, uri)) path = getPathFromDocumentUri(context, uri);
else if (ContentResolver.SCHEME_CONTENT.equals(uri.getScheme())) path = getDataColumn(context, uri);
else if (ContentResolver.SCHEME_FILE.equalsIgnoreCase(uri.getScheme())) path = uri.getPath();
return path != null ? path : createFileFromUri(context, uri).getAbsolutePath();
return path != null ? path : createFileFromUri(context, uri);
}
private static String getPathFromDocumentUri(Context context, Uri uri) {
@ -100,7 +100,7 @@ public class FileChooser {
}
}
private static File createFileFromUri(Context context, Uri uri) {
private static String createFileFromUri(Context context, Uri uri) {
String[] projection = {MediaStore.MediaColumns.DISPLAY_NAME};
Cursor cursor = context.getContentResolver().query(uri, projection, null, null, null);
try (cursor) {
@ -115,7 +115,7 @@ public class FileChooser {
while ((count = is.read(buffer)) != -1) os.write(buffer, 0, count);
os.close();
is.close();
return file;
return file.getAbsolutePath();
} catch (Exception e) {
return null;
}

@ -133,6 +133,7 @@ public class DetailActivity extends BaseActivity implements Clock.Callback, Cust
}
public static void file(FragmentActivity activity, String path) {
if (TextUtils.isEmpty(path)) return;
String name = new File(path).getName();
if (Utils.hasPermission(activity)) start(activity, "push_agent", "file://" + path, name);
else PermissionX.init(activity).permissions(Manifest.permission.WRITE_EXTERNAL_STORAGE).request((allGranted, grantedList, deniedList) -> start(activity, "push_agent", "file://" + path, name));

Loading…
Cancel
Save