4.2 KiB
receive_intent
A Flutter plugin to pass Android Intents to the Flutter environment.
Intent
in Android is the "payload" for the communication between and within apps. This plugin passes the Intent
, that "started" the Activity
to the flutter environment. It also passes any "new Intents" that are received (via Activity.onNewIntent
) while the Activity
is 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 plugin is in active development. Any contribution, idea, criticism or feedback is welcomed.
Quick links
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 generic implementation of uni_links plugin. While this plugin passes "any" Intents,
uni_links
only passes app-link/deep-link Intents. - Receive Share Intents - This plugin is a generic implementation of receive_sharing_intent plugin. While this plugin passes "any" Intents,
receive_sharing_intent
only passes "android.intent.action.SEND" (or related) 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. TheseIntent
will give the app understanding of why the app was started. Check Getting started section to implement this.
Getting started
TODO
Todo
- Write Getting started section
- Document API references properly
- Receive Intent for non-
Activity
basedintent-filter
(BroadcastReceiver
,Service
) - Automatic testing
Contribute
Check the Todo section above, before you begin with any contribution.
- You'll need a GitHub account.
- Fork the repository.
- Pick an issue to work on from issue tracker.
- Implement it.
- Add your name and email in
authors
section inpubspec.yaml
file. - Send merge request.
- Star this project.
- Become a hero!!
Features and bugs
Please file feature requests and bugs at the issue tracker.