java - Android 查看视频文件的隐式 Intent

标签 java android android-intent uri android-virtual-device

在我的 Android 应用程序中,我有一个按钮,单击该按钮后,会启动我选择的外部应用程序来播放视频(我认为这称为“隐式 Intent ”)。以下是我的 onCreate 方法中的相关 Java 代码。

Button button = (Button) findViewById(R.id.button);

button.setOnClickListener
(
    new Button.OnClickListener()
    {
        public void onClick(View v)
        {
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.setDataAndType(Uri.parse("https://youtu.be/jxoG_Y6dvU8"), "video/*");
            startActivity(i);
         }
    }
);

我预计这会起作用,因为我非常仔细地遵循了教程和 Android 开发人员文档,但是当我在 AVD 中测试我的应用程序时,应用程序并没有提示我可以在其中查看视频的外部应用程序菜单崩溃。

是什么导致我的应用程序崩溃?

最佳答案

将 onClick 方法更改为以下代码。您应该提供选择外部播放器的选项。

@Override
public void onClick(View v) {

        Intent intent = new Intent(Intent.ACTION_VIEW);

        intent.setDataAndType(Uri.parse("https://youtu.be/jxoG_Y6dvU8"), "video/*");

        startActivity(Intent.createChooser(intent, "Complete action using"));


}

关于java - Android 查看视频文件的隐式 Intent ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30971560/

相关文章:

java - 如何处理 Spring data mongodb 中的 DuplicateKeyException

android - ADT 20 在属性列表中设置布局高度/宽度

java - 将音乐文件从一个应用程序发送到另一个应用程序

Android 启动器在启动器中按主页以转到默认屏幕

java - 如何使用 protobuf-java-format 保留未知字段

java - 如何更改 MaterialCalendarView 中日历日期的背景颜色

java - 操作图像的内存有效方法?

android - 最佳测试 Android 设备?

android - 与 Android 上的加密相比,解密要慢得多

java - 调用 Bundle.getParcelable 时收到 NullPointerException