receive_intent_android34/README.md
2021-04-25 10:43:00 +05:30

3.9 KiB

receive_intent

pub.dev pub points popularity likes analysis GitHub issues GitHub milestone GitHub stars GitHub forks

A Flutter plugin to pass Android Intents to the Flutter environment.

Intent in Android is the backbone of communicating between and within apps. This plugin passes the Intent, which "started" the Activity (which is running flutter runtime) to the flutter environment. It also passes any "new Intent" that was received (via Activity.onNewIntent) while the Activity was already "started".

If the Intent was "started" via startActivityForResult, then this plugin also sends additional information (package name and app signature) about the "calling" Android Component, and can send "result" back (via Activity.setResult) to it.

This widget is in active development. Any contribution, idea, criticism or feedback is welcomed.

package https://pub.dev/packages/receive_intent
Git Repo https://github.com/daadu/receive_intent
Issue Tracker https://github.com/daadu/receive_intent/issues

Use cases

  • OAuth based App Flip - This was the initial motivation for this plugin. The plugin can be used to pass the Intent sent by Google App to the flutter environment - where the consent UI is shown - once it is authorized (or not), the result is sent back to the Google App.
  • Deeplink/Applink - This plugin is a genric implementation of uni_links plugin. While this plugin passes "any" Intents, uni_links only passes app-link/deep-link Intents.
  • In general, if you want other apps to "start" your app, then this plugin can pass the Intent that "triggered" it to the flutter environment of the app. These Intent will give the app understanding of why the app was started. Check Getting started section to implement this.

Getting started

TODO

Todo

  • Document API references properly
  • Receive Intent for non-Activity based intent-filter (BroadcastReceiver, Service)
  • Automatic testing

Contribute

Check the Todo section above, before you begin with any contribution.

  1. You'll need a GitHub account.
  2. Fork the repository.
  3. Pick an issue to work on from issue tracker.
  4. Implement it.
  5. Add your name and email in authors section in pubspec.yaml file.
  6. Send merge request.
  7. Star this project.
  8. Become a hero!!

Features and bugs

Please file feature requests and bugs at the issue tracker.