I am stuck with my flutter desktop application development. I'm looking for features like Java Robot for send keypress from my Flutter desktop application. Unfortunately, I did not find any Flutter desktop plugin or core functionality in Flutter.
Robot r = new Robot();
r.keyPress(KeyEvent.VK_E);
r.keyRelease(KeyEvent.VK_E);
Flutter does not have any APIs for posting synthetic events to the OS. You would need to write native code (either as a plugin, or directly in the native part of your application) for each platform to do that.
Related
I'm using quick_actions plugin in one of my Flutter apps and wish to invoke a headless Dart function when user clicks on a shortcut.
I just wish to execute the dart code in background without showing the app screen to the user. I know many plugins like background_fetch, WorkManager etc can schedule to run dart code in background.
I'm assuming that the java code in quick_actions plugin might have to be modified to achieve?
My team are developing an app that will involve some on device ML model that are in onnx format. Currently we considering Flutter & React Native. I prefer Flutter but couldn't find any plugin that support running on device onnx model. in RN we could use onnx.js from Microsoft.
I think there is no Flutter Plugin to do this but you only need to create one in your project (link) and take implement Android version and iOS version. The plugin will make the wrapper and you can use it in your Flutter code. Depending of the phone OS, flutter will execute Android or iOS code.
I want my app to take OTP automatically, In android, we have the SMS retrieval API for that, so how to implement the same thing for IOS and android using flutter
Currently, there is no official Flutter plugin developed by the Flutter team for this. You have two options for this:
Use plugins created by the developer community. Try sms_retriever.
Write your own platform-specific code (e.g. your Android code in Java), and invoke it from Flutter. Read more about this here.
Recently I've found out about Flutter being able to support desktop applications as well. I'm just curious how far this technology is and if any of you had success porting your mobile apps to the desktop. If so, what was the experience like? Are desktop-specific features like windows, mouse interaction, desktop notifications, etc. supported?
It was demonstrated at the Flutter Live event in December, but nothing official has been released that I'm aware of.
Flutter for Desktop was launched as alpha build at flutter interact 2019.
The official documentation is available at https://flutter.dev/desktop
The following video describes how to run your flutter app on a MacOS
You can watch the following video is you don't wanna read the docs
https://www.youtube.com/watch?v=9tEdoVuC1uQ&t=23s
(Skip to 0:48 seconds, as slight noise occurs for few seconds)
A simple app is created using android studio and we can easily see the options available to port the code to all platforms. For example, if you create a default app using android studio, the mouse event will help you to tap on a button and increase the count.
Regarding the experience, it feels good to write a single code and port/deploy on any platform. Using VSCode or android studio, both are helpful.
When an external component such as a Camera or File picker is needed, the Flutter for Android Developers documentation (currently in the works) states that we would have to build a native platform integration.
I currently have a device that has a built-in barcode reader with a manufacturer-provided Android API. So, for that I would need to pursue this native platform integration method - or even for playing videos or using the camera for that matter I would think.
Is there an example repo that demonstrates how a well-integrated app should be? ..a project that integrated ExoPlayer for example?
You can use platform channels to call native APIs that aren't exposed by the Flutter platform.
There is an example in the Writing custom platform-specific code docs:
The full, runnable source-code for this example is available in /examples/platform_channel/ for Android with Java and iOS with Objective-C.
If you want to make your code reusable by others, you can publish it as a package, but this is optional. There is a repo of plugins maintained by the Flutter team that you can use for inspiration.