Difference between revisions of "Share.share"
From GiderosMobile
| (3 intermediate revisions by the same user not shown) | |||
| Line 4: | Line 4: | ||
| === Description === | === Description === | ||
| − | + | Shares a piece of data with an external app. | |
| <syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
| − | Share.share(mimeType,data) | + | (bool) = Share.share(mimeType,data) | 
| </syntaxhighlight> | </syntaxhighlight> | ||
| This invokes the platform default sharing dialog, allowing to save, print, send, share, etc. | This invokes the platform default sharing dialog, allowing to save, print, send, share, etc. | ||
| − | + | Currently supported MIME types: | |
| * '''"text/*"''' | * '''"text/*"''' | ||
| * '''"image/png"''' | * '''"image/png"''' | ||
| Line 20: | Line 20: | ||
| '''data''': (string) the data itself<br/> | '''data''': (string) the data itself<br/> | ||
| − | ===  | + | === Return values === | 
| + | '''Returns''' (boolean) ''true'' if data can be shared<br/> | ||
| + | |||
| + | === Examples === | ||
| + | '''Image from file''' | ||
| + | <syntaxhighlight lang="lua"> | ||
| + | require "Share" | ||
| + | |||
| + | local share = Share.new() | ||
| + | |||
| + | local img = io.open("gfx/cat.jpg") | ||
| + | local rimg = img:read("*all") | ||
| + | |||
| + | share.share("image/jpeg", rimg) -- MIME type, data | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | '''Using a Buffer (faster than IO)''' | ||
| <syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
| local share = require "Share" | local share = require "Share" | ||
Latest revision as of 20:22, 20 February 2025
Available since: Gideros 2020.7
Class: Share
Description
Shares a piece of data with an external app.
(bool) = Share.share(mimeType,data)
This invokes the platform default sharing dialog, allowing to save, print, send, share, etc.
Currently supported MIME types:
- "text/*"
- "image/png"
- "image/jpeg"
Parameters
mimeType: (string) the MIME type of the data
data: (string) the data itself
Return values
Returns (boolean) true if data can be shared
Examples
Image from file
require "Share"
local share = Share.new()
local img = io.open("gfx/cat.jpg")
local rimg = img:read("*all")
share.share("image/jpeg", rimg) -- MIME type, data
Using a Buffer (faster than IO)
local share = require "Share"
local tex = Texture.new("gfx/cat.jpg")
local bmp = Bitmap.new(tex)
local rt = RenderTarget.new(tex:getWidth(), tex:getHeight())
rt:draw(bmp)
local buff = Buffer.new("buffer.jpg") -- create a buffer
rt:save("|B|buffer.jpg") -- write to the buffer
local bdata = buff:get()
share.share("image/jpeg", bdata) -- share buffer data
