Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/britzl/defold-sharing
Defold native extension to share data from a Defold application using native dialogs
https://github.com/britzl/defold-sharing
defold defold-library
Last synced: 2 months ago
JSON representation
Defold native extension to share data from a Defold application using native dialogs
- Host: GitHub
- URL: https://github.com/britzl/defold-sharing
- Owner: britzl
- License: mit
- Created: 2017-10-18T09:28:55.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2024-06-12T08:39:46.000Z (7 months ago)
- Last Synced: 2024-11-09T01:42:16.282Z (2 months ago)
- Topics: defold, defold-library
- Language: C++
- Homepage:
- Size: 506 KB
- Stars: 23
- Watchers: 4
- Forks: 8
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- awesome-defold - Sharing
README
![](logo.png)
# Defold Sharing
[Defold](https://www.defold.com) native extension to share application data using native sharing dialogs.## System requirements
The extension currently supports OSX, iOS, Android and HTML5.
[Browser compatibility](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/share#browser_compatibility)## Installation
You can use the Sharing extension in your own project by adding this project as a [Defold library dependency](http://www.defold.com/manuals/libraries/). Open your game.project file and in the dependencies field under project add:https://github.com/britzl/defold-sharing/archive/master.zip
Or point to the ZIP file of a [specific release](https://github.com/britzl/defold-sharing/releases).
Starting Defold 1.2.165 the Android dependencies are resolved using the `build.gradle` file.
## Usage
The share.* namespace will be nil if the share extension isn't supported (see [System requirements](#system-requirements) above).### share.text(text)
Share text using a native sharing dialog.**PARAMETERS**
* ```text``` (string) - The text to share### share.image(bytes, [text], [file_name])
Share an image (with optional text) using a native sharing dialog. Supported formats depend on the platform:* Android - The image format must be supported by ```BitmapFactory.decodeByteArray()```. On Android the image will first be stored locally as a file and then shared using a FileProvider.
* iOS and macOS - The image format must be supported by ```UIImage.initWithData```.
* HTML5 - Either [DataURI](https://developer.mozilla.org/en-US/docs/Web/HTTP/Basics_of_HTTP/Data_URIs) or any image format supported by the underlying platform.**PARAMETERS**
* ``` bytes``` (string) - The image bytes to share
* ```text``` (string) - Optional text to share
* ```file_name``` (string) - Optional Only for `HTML5` image name. Default `"file.png"`### share.file(path, [text], [options])
Share a file (with optional text) using a native sharing dialog. On Android the file will first be copied to a predefined location and then shared using a FileProvider. Files are shared with their original filename and extension. This will allow iOS to offer different kinds of applications depending on the shared content.**PARAMETERS**
* ``` path``` (string) - Full path to the file to share. For `HTML5`: specify the name of the file. Default `file.txt`.
* ```text``` (string) - Optional text to share. For `HTML5`: specify the data that should be in the file.* ```options``` (table) - Optional Only for `HTML5`.
* type (string) - data [type](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/share#shareable_file_types). Default `"text/plain"`
* text (string) - text to be shared
* title (string) - title to be shared. May be ignored by the target
* url (string) - URL to be shared