将flutter应用加入系统打开方式列表(ANDROID)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

``

最近学习flutter,自己写了一个音乐播放器,打开手机中的MP3格式的文件时,选择播放器,将文件复制到应用目录。

提示:以下是本篇文章正文内容,下面案例可供参考

一、修改AndroidManifest.xml文件

这一步的作用是打开MP3文件时,播放器会加入到系统的打开方式列表中,在AndroidManifest.xml中加入以下内容。

 <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <data android:mimeType="audio/x-mpeg" />
 </intent-filter>

如图

在这里插入图片描述

二、修改MainActivity.java

这一步是在原生代码中获取Intent,然后传递给flutter。
如果是MainActivity.kt,则需重新生成MainActivity.java文件。参考:flutter create -a java projectname
代码如下():

package com.example.demo1;
import androidx.annotation.NonNull;
import io.flutter.embedding.android.FlutterActivity;
import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.plugin.common.MethodChannel;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import com.google.mlkit.common.sdkinternal.CommonUtils;

public class MainActivity extends FlutterActivity {
   
    private static final String CHANNEL = "samples.flutter.dev/battery";//定义通道,要和flutter中的一致
	//原生和flutter通讯
    @Override
    public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
   
        super.configureFlutterEngine(flutterEngine);
        new MethodChannel(flutterEngine.getDartExecutor().getBinaryMessenger(), CHANNEL)
                .setMethodCallHandler(
                        (call, result) -> {
   
                            if (call.method
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值