minor fixes
This commit is contained in:
parent
41faaffd34
commit
4d226e6e38
3 changed files with 16 additions and 7 deletions
|
@ -39,6 +39,7 @@ open class MainActivity : FlutterActivity() {
|
||||||
private lateinit var analysisStreamHandler: AnalysisStreamHandler
|
private lateinit var analysisStreamHandler: AnalysisStreamHandler
|
||||||
internal lateinit var intentDataMap: MutableMap<String, Any?>
|
internal lateinit var intentDataMap: MutableMap<String, Any?>
|
||||||
private lateinit var analysisHandler: AnalysisHandler
|
private lateinit var analysisHandler: AnalysisHandler
|
||||||
|
private lateinit var mediaSessionHandler: MediaSessionHandler
|
||||||
|
|
||||||
override fun onCreate(savedInstanceState: Bundle?) {
|
override fun onCreate(savedInstanceState: Bundle?) {
|
||||||
Log.i(LOG_TAG, "onCreate intent=$intent")
|
Log.i(LOG_TAG, "onCreate intent=$intent")
|
||||||
|
@ -77,13 +78,14 @@ open class MainActivity : FlutterActivity() {
|
||||||
errorStreamHandler = ErrorStreamHandler().apply {
|
errorStreamHandler = ErrorStreamHandler().apply {
|
||||||
EventChannel(messenger, ErrorStreamHandler.CHANNEL).setStreamHandler(this)
|
EventChannel(messenger, ErrorStreamHandler.CHANNEL).setStreamHandler(this)
|
||||||
}
|
}
|
||||||
val mediaCommandHandler = MediaCommandStreamHandler().apply {
|
val mediaCommandStreamHandler = MediaCommandStreamHandler().apply {
|
||||||
EventChannel(messenger, MediaCommandStreamHandler.CHANNEL).setStreamHandler(this)
|
EventChannel(messenger, MediaCommandStreamHandler.CHANNEL).setStreamHandler(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
// dart -> platform -> dart
|
// dart -> platform -> dart
|
||||||
// - need Context
|
// - need Context
|
||||||
analysisHandler = AnalysisHandler(this, ::onAnalysisCompleted)
|
analysisHandler = AnalysisHandler(this, ::onAnalysisCompleted)
|
||||||
|
mediaSessionHandler = MediaSessionHandler(this, mediaCommandStreamHandler)
|
||||||
MethodChannel(messenger, AnalysisHandler.CHANNEL).setMethodCallHandler(analysisHandler)
|
MethodChannel(messenger, AnalysisHandler.CHANNEL).setMethodCallHandler(analysisHandler)
|
||||||
MethodChannel(messenger, AppAdapterHandler.CHANNEL).setMethodCallHandler(AppAdapterHandler(this))
|
MethodChannel(messenger, AppAdapterHandler.CHANNEL).setMethodCallHandler(AppAdapterHandler(this))
|
||||||
MethodChannel(messenger, DebugHandler.CHANNEL).setMethodCallHandler(DebugHandler(this))
|
MethodChannel(messenger, DebugHandler.CHANNEL).setMethodCallHandler(DebugHandler(this))
|
||||||
|
@ -94,7 +96,7 @@ open class MainActivity : FlutterActivity() {
|
||||||
MethodChannel(messenger, HomeWidgetHandler.CHANNEL).setMethodCallHandler(HomeWidgetHandler(this))
|
MethodChannel(messenger, HomeWidgetHandler.CHANNEL).setMethodCallHandler(HomeWidgetHandler(this))
|
||||||
MethodChannel(messenger, MediaFetchBytesHandler.CHANNEL, AvesByteSendingMethodCodec.INSTANCE).setMethodCallHandler(MediaFetchBytesHandler(this))
|
MethodChannel(messenger, MediaFetchBytesHandler.CHANNEL, AvesByteSendingMethodCodec.INSTANCE).setMethodCallHandler(MediaFetchBytesHandler(this))
|
||||||
MethodChannel(messenger, MediaFetchObjectHandler.CHANNEL).setMethodCallHandler(MediaFetchObjectHandler(this))
|
MethodChannel(messenger, MediaFetchObjectHandler.CHANNEL).setMethodCallHandler(MediaFetchObjectHandler(this))
|
||||||
MethodChannel(messenger, MediaSessionHandler.CHANNEL).setMethodCallHandler(MediaSessionHandler(this, mediaCommandHandler))
|
MethodChannel(messenger, MediaSessionHandler.CHANNEL).setMethodCallHandler(mediaSessionHandler)
|
||||||
MethodChannel(messenger, MediaStoreHandler.CHANNEL).setMethodCallHandler(MediaStoreHandler(this))
|
MethodChannel(messenger, MediaStoreHandler.CHANNEL).setMethodCallHandler(MediaStoreHandler(this))
|
||||||
MethodChannel(messenger, MetadataFetchHandler.CHANNEL).setMethodCallHandler(MetadataFetchHandler(this))
|
MethodChannel(messenger, MetadataFetchHandler.CHANNEL).setMethodCallHandler(MetadataFetchHandler(this))
|
||||||
MethodChannel(messenger, StorageHandler.CHANNEL).setMethodCallHandler(StorageHandler(this))
|
MethodChannel(messenger, StorageHandler.CHANNEL).setMethodCallHandler(StorageHandler(this))
|
||||||
|
@ -167,6 +169,7 @@ open class MainActivity : FlutterActivity() {
|
||||||
|
|
||||||
override fun onDestroy() {
|
override fun onDestroy() {
|
||||||
Log.i(LOG_TAG, "onDestroy")
|
Log.i(LOG_TAG, "onDestroy")
|
||||||
|
mediaSessionHandler.dispose()
|
||||||
mediaStoreChangeStreamHandler.dispose()
|
mediaStoreChangeStreamHandler.dispose()
|
||||||
settingsChangeStreamHandler.dispose()
|
settingsChangeStreamHandler.dispose()
|
||||||
super.onDestroy()
|
super.onDestroy()
|
||||||
|
|
|
@ -33,15 +33,19 @@ class MediaSessionHandler(private val context: Context, private val mediaCommand
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fun dispose() {
|
||||||
|
context.unregisterReceiver(noisyAudioReceiver)
|
||||||
|
}
|
||||||
|
|
||||||
override fun onMethodCall(call: MethodCall, result: MethodChannel.Result) {
|
override fun onMethodCall(call: MethodCall, result: MethodChannel.Result) {
|
||||||
when (call.method) {
|
when (call.method) {
|
||||||
"update" -> ioScope.launch { safeSuspend(call, result, ::update) }
|
"update" -> ioScope.launch { safeSuspend(call, result, ::updateSession) }
|
||||||
"release" -> ioScope.launch { safe(call, result, ::release) }
|
"release" -> ioScope.launch { safe(call, result, ::releaseSession) }
|
||||||
else -> result.notImplemented()
|
else -> result.notImplemented()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private suspend fun update(call: MethodCall, result: MethodChannel.Result) {
|
private suspend fun updateSession(call: MethodCall, result: MethodChannel.Result) {
|
||||||
val uri = call.argument<String>("uri")?.let { Uri.parse(it) }
|
val uri = call.argument<String>("uri")?.let { Uri.parse(it) }
|
||||||
val title = call.argument<String>("title")
|
val title = call.argument<String>("title")
|
||||||
val durationMillis = call.argument<Number>("durationMillis")?.toLong()
|
val durationMillis = call.argument<Number>("durationMillis")?.toLong()
|
||||||
|
@ -115,7 +119,7 @@ class MediaSessionHandler(private val context: Context, private val mediaCommand
|
||||||
result.success(null)
|
result.success(null)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun release(@Suppress("unused_parameter") call: MethodCall, result: MethodChannel.Result) {
|
private fun releaseSession(@Suppress("unused_parameter") call: MethodCall, result: MethodChannel.Result) {
|
||||||
session?.let {
|
session?.let {
|
||||||
it.release()
|
it.release()
|
||||||
session = null
|
session = null
|
||||||
|
|
|
@ -384,8 +384,10 @@ class _AvesAppState extends State<AvesApp> with WidgetsBindingObserver {
|
||||||
void didChangeMetrics() => _updateCutoutInsets();
|
void didChangeMetrics() => _updateCutoutInsets();
|
||||||
|
|
||||||
Future<void> _updateCutoutInsets() async {
|
Future<void> _updateCutoutInsets() async {
|
||||||
|
if (await windowService.isCutoutAware()) {
|
||||||
AvesApp.cutoutInsetsNotifier.value = await windowService.getCutoutInsets();
|
AvesApp.cutoutInsetsNotifier.value = await windowService.getCutoutInsets();
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Widget _getFirstPage({Map? intentData}) => settings.hasAcceptedTerms ? HomePage(intentData: intentData) : const WelcomePage();
|
Widget _getFirstPage({Map? intentData}) => settings.hasAcceptedTerms ? HomePage(intentData: intentData) : const WelcomePage();
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue