Having Context as a required parameter to an email or share means that the resulting builder has a reference to the Application/Activity.
- This reference could cause leaks, depending on the user's use-case and usage.
- In some cases may not even be required.
It could be better to provide the context only when needed to avoid these issues.
This means the API might look something like:
Shelly.share()
.text("shareText")
.send(context);