photos_library 0.0.1

  • README.md
  • CHANGELOG.md
  • Example
  • Installing
  • Versions
  • 26

photos_library #

A simple flutter plugin to demo how to interact to system gallery. Only iOS PhotosKit is supported for now:

  1. get authorization status
  2. request Photos authorization status
  3. fetch assets metadata
  4. fetch assets' thumbnail image in binary form, then sent to flutter side
  5. (in example) display binary-form image with Image.memory

Methods #

  1. PhotosLibrary.authorizeationStatus
  2. PhotosLibrary.requestAuthorization
  3. PhotosLibrary.fetchMediaWithType
  4. PhotosLibrary.requestThumbnail

Notes #

For authorizing to Photos library, you need to add NSPhotoLibraryUsageDescription into your info.plist in project

License #

Copyright 2018 Yang Hongbo

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

0.0.1 #

  • added iOS support only
  • access to authorization status
  • requset authorization to Photos Library
  • fetch assets from Photos Library
  • fetch assets' thumbnails in binary data form and then sent to flutter side (without saving to a local image file like iamge_picker did), displaying with Image.memory

example/lib/main.dart

import 'package:flutter/material.dart';

import 'homeview.dart';

void main() => runApp(new MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => new _MyAppState();
}

class _MyAppState extends State<MyApp> {

  @override
  void initState() {
    super.initState();
  }

  @override
  Widget build(BuildContext context) {
    return new MaterialApp(
      home: new Scaffold(
        appBar: new AppBar(
          title: const Text('Photos Library'),
        ),
        body: HomeView(),
      ),
    );
  }
}

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  photos_library: ^0.0.1

2. Install it

You can install packages from the command line:

with pub:


$ pub get

with Flutter:


$ flutter pub get

Alternatively, your editor might support pub get or flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:photos_library/photos_library.dart';
  
Version Uploaded Documentation Archive
0.0.4 Sep 30, 2018 Go to the documentation of photos_library 0.0.4 Download photos_library 0.0.4 archive
0.0.3 Sep 30, 2018 Go to the documentation of photos_library 0.0.3 Download photos_library 0.0.3 archive
0.0.2 Aug 10, 2018 Go to the documentation of photos_library 0.0.2 Download photos_library 0.0.2 archive
0.0.1 Aug 9, 2018 Go to the documentation of photos_library 0.0.1 Download photos_library 0.0.1 archive
Popularity:
Describes how popular the package is relative to other packages. [more]
51
Health:
Code health derived from static analysis. [more]
--
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
--
Overall:
Weighted score of the above. [more]
26
Learn more about scoring.

The package version is not analyzed, because it does not support Dart 2. Until this is resolved, the package will receive a health and maintenance score of 0.

Analysis issues and suggestions

Support Dart 2 in pubspec.yaml.

The SDK constraint in pubspec.yaml doesn't allow the Dart 2.0.0 release. For information about upgrading it to be Dart 2 compatible, please see https://dart.dev/dart-2#migration.

Maintenance issues and suggestions

Make sure dartdoc successfully runs on your package's source files. (-10 points)

Dependencies were not resolved.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=1.19.0 <2.0.0