Skip to content

Latest commit

 

History

History
59 lines (40 loc) · 1.36 KB

README.md

File metadata and controls

59 lines (40 loc) · 1.36 KB

esys_flutter_share

A Flutter plugin for sharing images & text with other applications.

Usage

Import:

import 'package:esys_flutter_share/esys_flutter_share.dart';

Share text:

await EsysFlutterShare.shareText('This is my text to share with other applications.', 'my text title');

Share image:

final ByteData bytes = await rootBundle.load('assets/image.png');
await EsysFlutterShare.shareImage('myImageTest.png', bytes, 'my image title');

Share images:

List<ByteData> byteDatas = List<ByteData>();
List<String> fileNames = List<String>();

ByteData bytes = await rootBundle.load('assets/image.png');
byteDatas.add(bytes);
fileNames.add("image1");

ByteData bytes2 = await rootBundle.load('assets/image2.png');
byteDatas.add(bytes2);
fileNames.add("image2");

await EsysFlutterShare.shareImages(fileNames, byteDatas, 'my image title');

Share image from URL:

This method return ByteData from given image's url.

  Future<ByteData> _getImageBytes(String imageUrl) async {
    var request = await HttpClient().getUrl(Uri.parse(imageUrl));
    var response = await request.close();
    Uint8List bytes = await consolidateHttpClientResponseBytes(response);
    ByteData byteData = ByteData.view(bytes.buffer);
    return byteData;
  }

Check out the example app in the Repository for further information.