如何让 VideoView 播放带有 Drive 链接的视频?
Posted
技术标签:
【中文标题】如何让 VideoView 播放带有 Drive 链接的视频?【英文标题】:How do I make the VideoView play the video with the Drive link? 【发布时间】:2021-10-29 00:58:24 【问题描述】:所以我试图让 VideoView 播放带有云端硬盘链接的视频。我做了网络安全配置,视频还是不能播放(“你的视频不能播放。”)我意识到问题不是代码,而是链接。我尝试了来自已经制作的玩家的链接,有些工作没有。我只想让视频工作。使用驱动链接或其他方法。我要告诉你我做了什么。如果有人能帮助我,我将不胜感激。
代码:
VideoView videoView = findViewById(R.id.SY);
Uri uri = Uri.parse("https://drive.google.com/file/d/1CRJ8tL-DyjD0Nwd7ezkboGm6570zMf4C/view?usp=sharing");
videoView.setVideoURI(uri);
MediaController mc = new MyMediaController(videoView.getContext());
mc.setMediaPlayer(videoView);
videoView.setMediaController(mc);
videoView.start();
videoView.setOnCompletionListener(mp -> onBackPressed());
网络xml:
<network-security-config>
<domain-config>
<domain includeSubdomains="true">diligent_app.com</domain>
<trust-anchors>
<certificates src="system"/>
</trust-anchors>
</domain-config>
Manifest:
android:usesCleartextTraffic="true"
android:networkSecurityConfig="@xml/network"
我得到的错误
2021-08-30 14:53:35.338 4582-7140/? E/WindowManager: win=Window4c93299
u0 com.example.diligent/com.diligent_app.diligent.yoga.Yoga
destroySurfaces: appStopped=true win.mWindowRemovalAllowed=false
win.mRemoveOnExit=false win.mViewVisibility=8
caller=com.android.server.wm.ActivityRecord.destroySurfaces:5227
com.android.server.wm.ActivityRecord.destroySurfaces:5208
com.android.server.wm.ActivityRecord.notifyAppStopped:5267
com.android.server.wm.ActivityRecord.activityStopped:5894
com.android.server.wm.ActivityTaskManagerService.activityStopped:2584
android.app.IActivityTaskManager$Stub.onTransact:2215
android.os.Binder.execTransactInternal:1190
2021-08-30 14:53:35.605 4302-16264/? E/GenericSource: text/html from
getMIMEType()
2021-08-30 14:53:35.605 12855-15380/com.example.diligent
E/MediaPlayerNative: error (1, -1015)
2021-08-30 14:53:35.606 12855-12855/com.example.diligent E/MediaPlayer:
Error (1,-1015)
2021-08-30 14:53:37.695 4582-6879/? E/TaskPersister: File error
accessing recents directory (directory doesn't exist?).
2021-08-30 14:53:42.774 4582-4618/? E/BatteryStatsService: Unable to load
Power Hal or power.stats HAL
提前谢谢你。
【问题讨论】:
【参考方案1】:URL 中带有sharing
的链接只会将您带到一个网页(不是视频数据)。
要将视频数据下载到播放器中,请尝试:
Uri uri = Uri.parse("https://drive.google.com/uc?export=download&id=1CRJ8tL-DyjD0Nwd7ezkboGm6570zMf4C");
【讨论】:
非常感谢,先生。你救了我。以上是关于如何让 VideoView 播放带有 Drive 链接的视频?的主要内容,如果未能解决你的问题,请参考以下文章
带有“ 307临时重定向”的Android VideoView播放URL
“无法播放此视频”错误使用带有 VideoView 和 Mediacontroller 的 URL