Share.share(content, options) opens the system share sheet. content needs a message, a url or both, but Android drops url altogether (React Native 36,878 's Share.js passes only title, sent as the subject, and message), so put the link inside the message. Among the options, Android reads dialogTitle, while iOS reads subject (for mail), excludedActivityTypes, tintColor and anchor (the view an iPad popover points at). The promise resolves with an action: on iOS Share.sharedAction, with the chosen activityType, or Share.dismissedAction; on Android always sharedAction, because the Android module does not find out what the user did.
That last point is easy to test. Sharing a Book from BookNest opens the sheet from BookNest, and pressing Back to close it without sharing still logged:
ReactNativeJS: 'share result:', '{"activityType":null,"action":"sharedAction"}'So never count shares, grant rewards or show "Shared!" based on the result on Android. Files and images are out of scope for the core API, which shares text only; expo-sharing shares a local file through the same sheet, and react-native-share (a community library with more options) covers targeted sharing to specific apps.