株洲網(wǎng)站建設(shè)服務(wù)平臺廣告競價排名
上一次解決的問題是ac3這些exoplayer本身不支持音頻,添加了ffmpeg擴展實現(xiàn)軟解碼.
另一個問題是flutter端的內(nèi)置字幕顯示不了,也不打算再繼續(xù)探討了,換成native實現(xiàn)播放器.由于主項目是flutter的,所以涉及到了相互通信.
當(dāng)前文章主要涉及到flutter與native相互通信功能
通信有幾類,關(guān)于這些文章就太多了,不再重復(fù).
今天這里用的是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: &#