fluttercommunity / fluttercommunity/flutter_downloader

Request From Flutter Team: Migrate to `registrar.viewController` API

Open
#1,020 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
940
Forks
561
Avg merge
1h 18m
Merged PRs (30d)
1

Description

This plugin currently relies on legacy UIApplication APIs to access the root view controller ([code here](https://github.com/fluttercommunity/flutter_downloader/blob/4b28cbec41b2c51882d68522420b0787a03e8887/ios/Classes/FlutterDownloaderPlugin.m#L1150)). With Apple's mandatory adoption of the UIScene lifecycle in iOS 27, these legacy patterns will result in unexpected behavior. Please migrate to the new `registrar.viewController` API to ensure compatibility.

For detailed instructions, please see [the official UIScene adoption guide for plugins](https://docs.flutter.dev/release/breaking-changes/uiscenedelegate#migrate-a-flutter-plugin).

Consider using the provided [SKILL](https://github.com/flutter/flutter/issues/190156#issuecomment-5108050627) designed to identify and refactor these legacy patterns.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in ios/Classes/FlutterDownloaderPlugin.m around line 1150, where the plugin accesses the root view controller through legacy UIApplication APIs. Read Flutter's UIScene adoption guide for plugins and migrate this lookup to registrar.viewController; done means the plugin no longer relies on the legacy pattern and remains compatible with the UIScene lifecycle.

Written by the indexing model from the issue text.

Assessment

Tech stack
flutter, ios, objective-c
Domain
mobile
Issue type
Refactor
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
72/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.