Плагин Flutter Screen_protector не работает с Flutter, которые имеют Scenedelegate и AppDelegateIOS

Программируем под IOS
Ответить
Anonymous
 Плагин Flutter Screen_protector не работает с Flutter, которые имеют Scenedelegate и AppDelegate

Сообщение Anonymous »

Flutter Screen_protector Plugin
не работает с Flutter, которые имеют конфигурации ScenedElegate и AppDelegate, пожалуйста, вам нужна вам поддержать < /p>
Пользователь может сделать снимок экрана и записи экрана
, но я хочу показать ему черный экран на съемке экрана или на экране < /p>
Scedelegate < /P> u -импорт
Импорт Flutter < /p>
class scenedelegate: uiresponder, uiwindowscenedelegate {
var window: uiwindow? {< /p>
guard let windowScene = (scene as? UIWindowScene) else { return }

let appDelegate = UIApplication.shared.delegate as! AppDelegate
guard let flutterEngine = appDelegate.flutterEngine else { return }

let flutterViewController = FlutterViewController(engine: flutterEngine,
nibName: nil,
bundle: nil)

let window = UIWindow(windowScene: windowScene)
window.rootViewController = flutterViewController
self.window = window
window.makeKeyAndVisible()
< /code>
}
} `< /p>
marker info.plist < /p>
` uiapplicationscenemanifest < /p>
uiapplicationsupportsmultiplescenes < /p>
uiapplications /> uiwindowscenesessionRoleApplicalation < /p>
uisceneconfigurationname
configuration
uiscenedelegateclassname
$(product_module_name).scenedegate
`< /p>
appdelegate
` < /p>
appdelegate
`< /p>
appdelegateimport UIKit
import Flutter
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
var flutterEngine: FlutterEngine?
// MARK: - App Lifecycle
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
self.flutterEngine = FlutterEngine(name: "my_engine")
self.flutterEngine?.run()
GeneratedPluginRegistrant.register(with: self.flutterEngine!)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}

override func applicationDidEnterBackground(_ application: UIApplication) {
var bgTask: UIBackgroundTaskIdentifier = UIBackgroundTaskIdentifier(rawValue: 0)
bgTask = application.beginBackgroundTask {
application.endBackgroundTask(bgTask)
bgTask = UIBackgroundTaskIdentifier.invalid
}
}
}
< /code>
Если я использую Appdelegate только это, это работает
. Снимки экрана и запись экрана показывают черный экран для пользователя
, но после того, как я добавляю Scenedelegate для обновления с помощью ОС 26.1 ios
. Снимк экрана и записи экрана. Не показывать черный экран к пользователю < /p ios
.>

Подробнее здесь: https://stackoverflow.com/questions/797 ... elegate-an
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»