Android中如何让自己的播放器被调起

本文介绍如何通过配置AndroidManifest.xml文件中的intent-filter来使自定义播放器响应系统的视频播放请求,实现与系统默认播放器相同的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原理分析:当选择一个视频的时候,如果系统有多个播放器,此时会发一个隐式意图,匹配该隐式意图的播放器都能播放

可以参照系统是如何调起系统默认播放器的,在系统上层应用Gallery的AndroidManifest.xml中找到MovieView(系统默认播放器)这个activity

<activity android:name="com.android.camera.MovieView"
                android:label="@string/movieviewlabel"
                android:screenOrientation="landscape"
                android:configChanges="orientation|keyboardHidden"
                android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen">
             <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="rtsp" />
             </intent-filter>
             <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="video/*" />
                <data android:mimeType="application/sdp" />
             </intent-filter>
             <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <data android:scheme="http" />
                <data android:mimeType="video/mp4" />
                <data android:mimeType="video/3gp" />
                <data android:mimeType="video/3gpp" />
                <data android:mimeType="video/3gpp2" />
             </intent-filter>
        </activity>

将所有的意图拷贝到自己的播放的activity的配置中

这样在系统发送隐私意图,打开选择界面activity的时候,我们的播放器也会出现在选择界面

下面的代码是系统调起所有的播放器

 Intent intent = new Intent();
           intent.setDataAndType(Uri.parse("视频播放地址"),"video/*");
           context.startActivity(intent);

这样就能让我们的播放器播放视频了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值