exoplayer的使用-2,与flutter相互通信

上一次解决的问题是ac3这些exoplayer本身不支持音频,添加了ffmpeg扩展实现软解码.

另一个问题是flutter端的内置字幕显示不了,也不打算再继续探讨了,换成native实现播放器.由于主项目是flutter的,所以涉及到了相互通信.

当前文章主要涉及到flutter与native相互通信功能

通信有几类,关于这些文章就太多了,不再重复.

今天这里用的是pigeon

先在flutter配置的dev_dependencies下面加入pigeon: ^9.2.5

建一个目录pigeons与lib同级,里面放着messages.dart类

import 'package:pigeon/pigeon.dart';

// dart run pigeon --input pigeons/messages.dart --dart_out lib/src/messages.g.dart --java_out android/src/main/java/io/flutter/plugins/exoplayer/Messages.java
@ConfigurePigeon(PigeonOptions(
  dartOut: 'lib/src/messages.g.dart',
  dartTestOut: 'test/test_api.g.dart',
  javaOut: 'android/src/main/java/io/flutter/plugins/exoplayer/Messages.java',
  javaOptions: JavaOptions(
    package: 'io.flutter.plugins.exoplayer',
  ),
))

flutter想与native通信,那么messages.dart后面加入一个类

@HostApi(dartHostTestHandler: &#

你可能感兴趣的:(exoplayer,flutter,android)