ihr*_*pin 6 android video-streaming android-widget android-webview android-videoview
我有VideoView实例.我需要知道它的视频源路径.
可能吗?有谁能够帮我?
我在WebChromeClient类中的代码是:
@Override
public void onShowCustomView(final View view, final CustomViewCallback callback) {
super.onShowCustomView(view, callback);
if (view instanceof FrameLayout) {
final FrameLayout frame = (FrameLayout) view;
if (frame.getFocusedChild() instanceof VideoView) {
// get video view
video = (VideoView) frame.getFocusedChild();
}
}
}
Run Code Online (Sandbox Code Playgroud)
如何获取视频对象的视频源路径?
Tom*_*mik 21
VideoView没有视频路径/ Uri的getters.你唯一的机会就是使用反射.将Uri存储在private Uri mUri.要访问它,您可以使用:
Uri mUri = null;
try {
Field mUriField = VideoView.class.getDeclaredField("mUri");
mUriField.setAccessible(true);
mUri = (Uri)mUriField.get(video);
} catch(Exception e) {}
Run Code Online (Sandbox Code Playgroud)
请记住,私有字段可能会在未来的Android版本中发生变化.
小智 9
如果你不喜欢使用像这样的私有方法,你可以覆盖setVideoUriMethodin VideoView:
public class MyVideoView extends VideoView
{
Uri uri;
@Override
public void setVideoURI (Uri uri)
{
super.setVideoURI(uri);
this.uri = uri;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,您可以根据需要访问视频的uri.希望有所帮助.
| 归档时间: |
|
| 查看次数: |
8021 次 |
| 最近记录: |