gpt4 book ai didi

java - 如何检测Android中正在播放的文件的路径(无论是从内部播放还是从URL流播放)?

转载 作者:太空宇宙 更新时间:2023-11-04 11:45:14 26 4
gpt4 key购买 nike

我编写了一个自定义 exoplayer videoview 来播放内存和 URL 中的视频。现在我想检查当前在 Videoview 中播放的视频是来自 URL Stream 还是内部存储。我怎样才能检查这个?

最佳答案

您可以使用两种方法来确定它是内部的还是远程的。

方法 1 - 使用 Uri

使用Uri.parse(...)解析给定的URI,然后使用getScheme()获得方案。对于(内部)文件,它将是 file

例如:

String file = "file:///path/of/your/file";
String remote = "https://www.example.com/your_video.mp4";

Uri fileUri = Uri.parse(file);
Uri remoteUri = Uri.parse(remote);

String fileScheme = fileUri.getScheme();
String remoteScheme = remoteUri.getScheme();

Log.d("Scheme", fileScheme); // prints file
Log.d("Scheme", remoteScheme); // prints https

方法 2 - 使用文件

从 URI 创建一个新的 File 实例并检查它是否存在。

例如:

String file = "file:///path/of/your/file";
String remote = "https://www.example.com/your_video.mp4";

File fileFile = new File(file);
File remoteFile = new File(remote);

Log.d("File", "" + fileFile.exists()); // prints true if the file exists
Log.d("File", "" + remoteFile.exists()); // prints false always

关于java - 如何检测Android中正在播放的文件的路径(无论是从内部播放还是从URL流播放)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42415868/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com