Extended Share plugin #
A flutter plugin for sharing with an optional subject.
Why another plugin? #
The flutter team's Share plugin doesn't support anything but sharing basic text. I wanted to be able to add a subject as well.
There are other plugins that could do this but they didn't seem to be consistent between android & ios, or they used Kotlin/Swift. Swift is fine since I'm already using it, but I didn't want to incur the overhead of adding kotlin to my app. So I decided to write a simple plugin that does sharing, in obj-c and java, with an optional subject.
Usage is very simple. Add
extended_share to your pubspec.
Then import the library with:
Then invoke the static
share method anywhere in your Dart code:
ExtendedShare.share(text: 'some text to be shared', subject: 'a subject to be shown');
You can choose not to use a subject in which case it will just share the text.
If anyone else needs to do something that the basic share plugin doesn't support, I encourage them to add an issue asking for it (although I have pretty limited time to work on this) or even better do a PR to add it (but still using only obj-c and java), that way this plugin can become more useful!
While I wrote all of this code character by character, I did occaisionally refer to its code of the flutter team's share plugin, and as such should probably reference it here. Anyone modifying this code should take into account that it might fall under the original licence of that code, which can be found at: https://github.com/flutter/plugins/blob/master/packages/share.
First release, supports sharing with subject. Not much else to be said =D
Demonstrates how to use the extended_share plugin.
Getting Started #
This project is a starting point for a Flutter application.
A few resources to get you started if this is your first Flutter project:
For help getting started with Flutter, view our online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.
Use this package as a library
1. Depend on it
Add this to your package's pubspec.yaml file:
dependencies: extended_share: ^0.0.1
2. Install it
You can install packages from the command line:
$ flutter pub get
Alternatively, your editor might support
flutter pub get.
Check the docs for your editor to learn more.
3. Import it
Now in your Dart code, you can use:
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
We analyzed this package on Oct 24, 2019, and provided a score, details, and suggestions below. Analysis was completed with status completed using:
- Dart: 2.5.1
- pana: 0.12.21
- Flutter: 1.9.1+hotfix.4
Detected platforms: Flutter
References Flutter, and has no conflicting libraries.
Package is pre-v0.1 release. (-10 points)
While nothing is inherently wrong with versions of
0.0.*, it might mean that the author is still experimenting with the general direction of the API.