diff --git a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java index 01bfa8192..7fe3020d4 100644 --- a/app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java +++ b/app/src/leanback/java/com/fongmi/android/tv/ui/activity/HomeActivity.java @@ -60,6 +60,7 @@ import com.fongmi.android.tv.utils.FileChooser; import com.fongmi.android.tv.utils.ImgUtil; import com.fongmi.android.tv.utils.KeyUtil; import com.fongmi.android.tv.utils.Notify; +import com.fongmi.android.tv.utils.PermissionUtil; import com.fongmi.android.tv.utils.ResUtil; import com.fongmi.android.tv.utils.UrlUtil; import com.github.catvod.net.OkHttp; @@ -141,11 +142,15 @@ public class HomeActivity extends BaseActivity implements CustomTitleView.Listen if (Intent.ACTION_SEND.equals(intent.getAction())) { VideoActivity.push(this, intent.getStringExtra(Intent.EXTRA_TEXT)); } else if (Intent.ACTION_VIEW.equals(intent.getAction()) && intent.getData() != null) { - if ("text/plain".equals(intent.getType()) || UrlUtil.path(intent.getData()).endsWith(".m3u")) { - loadLive("file:/" + FileChooser.getPathFromUri(intent.getData())); - } else { - VideoActivity.push(this, intent.getData().toString()); - } + PermissionUtil.requestFile(this, allGranted -> checkType(intent)); + } + } + + private void checkType(Intent intent) { + if ("text/plain".equals(intent.getType()) || UrlUtil.path(intent.getData()).endsWith(".m3u")) { + loadLive("file:/" + FileChooser.getPathFromUri(intent.getData())); + } else { + VideoActivity.push(this, intent.getData().toString()); } } diff --git a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/HomeActivity.java b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/HomeActivity.java index a3350bcf0..367861026 100644 --- a/app/src/mobile/java/com/fongmi/android/tv/ui/activity/HomeActivity.java +++ b/app/src/mobile/java/com/fongmi/android/tv/ui/activity/HomeActivity.java @@ -39,6 +39,7 @@ import com.fongmi.android.tv.ui.fragment.SettingPlayerFragment; import com.fongmi.android.tv.ui.fragment.VodFragment; import com.fongmi.android.tv.utils.FileChooser; import com.fongmi.android.tv.utils.Notify; +import com.fongmi.android.tv.utils.PermissionUtil; import com.fongmi.android.tv.utils.UrlUtil; import com.github.catvod.net.OkHttp; import com.google.android.material.navigation.NavigationBarView; @@ -88,11 +89,15 @@ public class HomeActivity extends BaseActivity implements NavigationBarView.OnIt if (Intent.ACTION_SEND.equals(intent.getAction())) { VideoActivity.push(this, intent.getStringExtra(Intent.EXTRA_TEXT)); } else if (Intent.ACTION_VIEW.equals(intent.getAction()) && intent.getData() != null) { - if ("text/plain".equals(intent.getType()) || UrlUtil.path(intent.getData()).endsWith(".m3u")) { - loadLive("file:/" + FileChooser.getPathFromUri(intent.getData())); - } else { - VideoActivity.push(this, intent.getData().toString()); - } + PermissionUtil.requestFile(this, allGranted -> checkType(intent)); + } + } + + private void checkType(Intent intent) { + if ("text/plain".equals(intent.getType()) || UrlUtil.path(intent.getData()).endsWith(".m3u")) { + loadLive("file:/" + FileChooser.getPathFromUri(intent.getData())); + } else { + VideoActivity.push(this, intent.getData().toString()); } } diff --git a/build.gradle b/build.gradle index d262f08f7..4f75783c2 100644 --- a/build.gradle +++ b/build.gradle @@ -12,5 +12,5 @@ project.ext { gsonVersion = '2.13.2' glideVersion = '5.0.5' media3Version = '1.8.0' - okhttpVersion = '5.2.0' + okhttpVersion = '5.3.0' }