The permission confirmation screen is outside of our control unfortunately. It's an operating system level dialog that we cannot bypassed using FlutterDriver alone.
As for the app where you manually grant permission, make sure that driver does not reinstall the app (thus losing the previously granted permissions). You can use the `--use-existing-app` option. However, this option assumes that something else launches the app before you run the test script. Unfortunately we don't have a way to launch a preinstalled app (please file a feature request if that's important to you). You should be able to use libimobiledevice to achieve this effect though.