首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Android Wearable上播放视频文件?

如何在Android Wearable上播放视频文件?
EN

Stack Overflow用户
提问于 2014-08-13 06:55:10
回答 2查看 931关注 0票数 3

您好,我正在尝试播放我的Android穿戴的视频文件。视频文件位于可穿戴设备上的sdcard文件夹中。但我无法使用我的Android应用程序播放它。如果我在我的智能手机(Nexus 5)上运行相同的应用程序,它就可以工作。

如何使用Android应用程序在android可穿戴设备上播放视频文件。

EN

回答 2

Stack Overflow用户

发布于 2015-01-21 20:10:50

Android Wear从Android Wear 5.0开始只包含音频编解码器,因此正常的MediaPlayer API将无法工作。你需要使用像ffmpeg这样的视频库来滚动自己的视频,...

票数 1
EN

Stack Overflow用户

发布于 2015-02-07 03:11:20

最后我让它起作用了。我不知道这是Android Wear特有的东西还是一个bug,但事实证明

代码语言:javascript
复制
String path = "android.resource://" + getPackageName() + "/" + R.raw.video_file;
File file = new File(path);

不允许访问Android Wear设备上的文件。

相反,必须首先将文件转换为临时文件:

代码语言:javascript
复制
InputStream ins = MainActivityBackup.this.getResources().openRawResource (R.raw.hyperlapse2);
File tmpFile = null;
OutputStream output;

try {
    tmpFile = File.createTempFile("video","mov");
    output = new FileOutputStream(tmpFile);

    final byte[] buffer = new byte[102400];
    int read;

    while ((read = ins.read(buffer)) != -1) {
        output.write(buffer, 0, read);
    }
    output.flush();
    output.close();
    ins.close();
} catch (IOException e) {
    e.printStackTrace();
}

然后可以将其加载到videoView中

代码语言:javascript
复制
mVideoView.setVideoPath(tmpFile.getPath());

如果你使用自己的视频解码器或者像ffmpeg或vitamio这样的库,因为Android Wear还不支持原生视频播放。

我在大约5分钟内实现了vitamio,如果需要,可以通过gradle dependency导入(在gradleplease上查找)。围绕vitamio videoView构建了我的应用程序,它的工作方式非常出色。它甚至可以播放flash视频。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25275417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档