All Projects → CaiJingLong → Flutter_photo

CaiJingLong / Flutter_photo

Licence: apache-2.0
Pick image/video from album by flutter. Support ios and android. UI by flutter, no native.

Programming Languages

dart
5743 projects

Projects that are alternatives of or similar to Flutter photo

Flutter photo manager
Provide flutter with the ability to manage photos.
Stars: ✭ 294 (+3.16%)
Mutual labels:  plugin, image, photos, photo, picker
GWLPhotoSelector
相册照片多张选择控件
Stars: ✭ 50 (-82.46%)
Mutual labels:  photos, selector, picker, photo
Imageselector
图片选择器, 支持多图选择和图片预览
Stars: ✭ 62 (-78.25%)
Mutual labels:  image, photos, photo
Assetspickerviewcontroller
Powerfully Customizable - Multiple Photo & Video Picker Controller
Stars: ✭ 321 (+12.63%)
Mutual labels:  image, photo, picker
Lgphotobrowser
照片浏览器,相册选择器,自定义照相机(支持单拍、连拍)
Stars: ✭ 527 (+84.91%)
Mutual labels:  image, photo, picker
Atgmediabrowser
Image slide-show viewer with multiple predefined transition styles, with ability to create new transitions with ease.
Stars: ✭ 186 (-34.74%)
Mutual labels:  image, photo, custom
Fmphotopicker
A modern, simple and zero-dependency photo picker with an elegant and customizable image editor
Stars: ✭ 428 (+50.18%)
Mutual labels:  image, photos, picker
Hephotopicker
自由定制支持视频,图片的相册选择器
Stars: ✭ 146 (-48.77%)
Mutual labels:  image, photos, picker
Hxphotopicker
图片/视频选择器 - 支持LivePhoto、GIF图片选择、3DTouch预览、在线下载iCloud上的资源、编辑图片/视频、浏览网络图片 功能 Imitation wx photo/image picker - support for LivePhoto, GIF image selection, 3DTouch preview, Download the resources on iCloud online, browse the web image function
Stars: ✭ 2,363 (+729.12%)
Mutual labels:  image, photo, picker
Exiftool Vendored.js
Fast, cross-platform Node.js access to ExifTool
Stars: ✭ 200 (-29.82%)
Mutual labels:  image, photos, photo
Photofilters
photofilters library for flutter
Stars: ✭ 229 (-19.65%)
Mutual labels:  plugin, image, photo
Xcodecolorsense
🎈 An Xcode plugin that makes working with color easier
Stars: ✭ 79 (-72.28%)
Mutual labels:  xcode, plugin
Xcode Build Times
This BitBar/SwiftBar plugin shows the time you spend waiting for Xcode to do your builds
Stars: ✭ 122 (-57.19%)
Mutual labels:  xcode, plugin
Faimagecropper
Image Cropper like Instagram
Stars: ✭ 188 (-34.04%)
Mutual labels:  xcode, photos
photos
"Fx Fotos" is an opensource gallery app in react native with the same smoothness and features of Google Photos and Apple Photos. It is backend gnostic and connects to decentralized backends like "box", "Dfinity", "Filecoin" and "Crust".
Stars: ✭ 620 (+117.54%)
Mutual labels:  photos, photo
Phimpme Ios
Phimp.me - Photo Image Editor and Sharing App. Phimp.me is a Photo App for iOS that aims to replace proprietary photo applications. It offers features such as taking photos, adding filters, editing images and uploading them to social networks.
Stars: ✭ 79 (-72.28%)
Mutual labels:  xcode, photos
Awesome Xcode Extensions
Awesome native Xcode extensions.
Stars: ✭ 2,628 (+822.11%)
Mutual labels:  xcode, plugin
WeightedRandomSelector
Very fast C# class for weighted random picking.
Stars: ✭ 117 (-58.95%)
Mutual labels:  selector, picker
photoselect
No description or website provided.
Stars: ✭ 39 (-86.32%)
Mutual labels:  selector, photo
Xcactionbar
"Alfred for Xcode" plugin
Stars: ✭ 1,217 (+327.02%)
Mutual labels:  xcode, plugin

photo

pub package pub package GitHub GitHub stars

image picker, multi picker

support ios icloud

support video

use flutter as ui

if you want to build custom ui, you just need api to make custom ui. to use photo_manager or fork the library to custom ui.

Screenshot

image

install

latest version : pub package pub package

dependencies:
  photo: $latest_version

Import

import 'package:photo/photo.dart';
import 'package:photo_manager/photo_manager.dart';

Usage

Simple use

void pickAssets() async {
    List<AssetEntity> assetList = await PhotoPicker.pickAsset(context: context);
    /// Use assetList to do something.
}

More option

The context is required, other params is optional.

void pickAsset() async {
    List<AssetEntity> imgList = await PhotoPicker.pickAsset(
      context: context,
      // BuildContext requied

      /// The following are optional parameters.
      themeColor: Colors.green,
      // the title color and bottom color
      padding: 1.0,
      // item padding
      dividerColor: Colors.grey,
      // divider color
      disableColor: Colors.grey.shade300,
      // the check box disable color
      itemRadio: 0.88,
      // the content item radio
      maxSelected: 8,
      // max picker image count
      provider: I18nProvider.chinese,
      // i18n provider ,default is chinese. , you can custom I18nProvider or use ENProvider()
      rowCount: 5,
      // item row count
      textColor: Colors.white,
      // text color
      thumbSize: 150,
      // preview thumb size , default is 64
      sortDelegate: SortDelegate.common,
      // default is common ,or you make custom delegate to sort your gallery
      checkBoxBuilderDelegate: DefaultCheckBoxBuilderDelegate(
        activeColor: Colors.white,
        unselectedColor: Colors.white,
        checkColor: Colors.blue,
      ), // default is DefaultCheckBoxBuilderDelegate ,or you make custom delegate to create checkbox

      loadingDelegate:
          this, // if you want to build custom loading widget,extends LoadingDelegate [see example/lib/main.dart]

      badgeDelegate: const DefaultBadgeDelegate(), /// or custom class extends [BadgeDelegate]

      pickType: type, // all/image/video

      List<AssetPathEntity> photoPathList, /// when [photoPathList] is not null , [pickType] invalid .
    );

About photoPathList params

You can use [photo_manager] package to get List<AssetPathEntity> and handle or cache.

This parameter is then passed into the pickAsset method, where the incoming photoList is rendered instead of the data in the album.

Whole example

You can see github main.dart

About android

Migrate to androidX

See the gitbook

Glide

Android native use glide to create image thumb bytes, version is 4.8.0.

If your other android library use the library, and version is not same, then you need edit your android project's build.gradle.

rootProject.allprojects {

    subprojects {
        project.configurations.all {
            resolutionStrategy.eachDependency { details ->
                if (details.requested.group == 'com.github.bumptech.glide'
                        && details.requested.name.contains('glide')) {
                    details.useVersion "4.8.0"
                }
            }
        }
    }

}

if you use the proguard

see the github

About ios

Because the album is a privacy privilege, you need user permission to access it. You must to modify the Info.plist file in Runner project.

like next

<key>NSPhotoLibraryUsageDescription</key>
<string>App need your agree, can visit your album</string>

xcode like image in xcode

Build error

if you build error like include of non-modular header inside framework module, see #10 or so

Thanks

Part of the Android code comes from debuggerx01.

Donate

If my code helps you, and you're willing to buy me a cup of coffee.

you can use paypal

or scan my alipay

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].