leancloud_flutter_plugin 0.0.5

  • Readme
  • Changelog
  • Example
  • Installing
  • 62

LeanCloud flutter plugin #

Bless Package version Build Status

Leancloud flutter plugin by Luna Gao

Dark packages

Description #

This plugin depends on Leancloud Native(iOS / Android) SDK. It's just convert the code from dart to those native language(Objective-C / Java).

Getting Started #

Install #

  • Add this to your package's pubspec.yaml file:
  leancloud_flutter_plugin: ^0.0.5
  • Install packages from the command line:
flutter packages get
  • Import it
import 'package:leancloud_flutter_plugin/leancloud_flutter_plugin.dart';

How to use #

Before your runApp function, initialize the leancloud. Such as the example app does.


  • initialize plugin
  • setup log level (Optional, default value is OFF)
  • setup region (Optional, default value is NorthChina)
  • initialize leancloud
  • save object or you can do whet ever you want :)

Initialize plugin

Plugin is Singleton mode. Please NOT initialize it by yourself.

Import: import 'package:leancloud_flutter_plugin/leancloud_flutter_plugin.dart';

LeancloudFlutterPlugin leancloudFlutterPlugin = LeancloudFlutterPlugin.getInstance();

Log Level (Optional)

Setup log level must be earlier than initialize leancloud function.


Region (Optional)

Setup region must be earlier than initialize leancloud function.


Initialize Leancloud

leancloudFlutterPlugin.initialize(appId, appKey);

Create and update an Object

Import: import 'package:leancloud_flutter_plugin/leancloud_object.dart';

// Create
AVObject object = new AVObject("YOUR_OBJECT");
object.put("FIELD_NAME", "VALUE"); // String
object.put("OR_INT", 10); // int
object.put("OR_BOOLEAN", true); // boolean
object.put("OR_FLOAT", 10.01); // float
object.save().then((object) {
  // Saved
  // and Update
  object.put("description", "updated!");
  object.save().then((object) {
    // Updated

If your update your object, {"code":403,"error":"Forbidden writing by object's ACL."} happened, then please check leancloud data's ACL field.

Delete an Object

// object is an AVObject
object.delete().then((isDeleted) {
  // Deleted
  if (isDeleted) {
    object = null; // you should set ref to null manually if you don't using this object

Query an Object

Import: import 'package:leancloud_flutter_plugin/leancloud_query.dart';

// query by object_id
AVQuery avQuery = new AVQuery("DemoObject");
avQuery.get("OBJECT_ID").then((object) {

// query objects
AVQuery avQuery = new AVQuery("DemoObject");
avQuery.whereEqualTo("KEY", "VALUE"); // string value
avQuery.whereNotEqualTo("KEY", 10); // int value
avQuery.whereGreaterThan("KEY", true); // bool value
avQuery.whereGreaterThanOrEqualTo("KEY", "VALUE");
avQuery.whereLessThan("KEY", "VALUE");
avQuery.whereLessThanOrEqualTo("KEY", "VALUE");
avQuery.find().then((objects) {
  print("All Objects Queryed!");

Example App #

Example App README.md

Publish Plugin #

flutter format .
flutter pub pub publish --dry-run
flutter pub pub publish

0.0.5 #

  • add
    • cql query
    • domain function
    • return error code when throw leancloud error

0.0.4 #

0.0.3 #

  • add query function
    • orderByAscending
    • orderByDescending
    • addAscendingOrder
    • addDescendingOrder
    • limit
    • skip
  • Fixed query object by objectId on Android

0.0.2 #

  • fixed android package error.

0.0.1 #

  • Init leancloud plugin
  • Setup Log Level
  • Setup Region
  • Create object
  • Update object
  • Query object by objectId(iOS only)
  • Query objects


import 'package:flutter/material.dart';

import 'package:leancloud_flutter_plugin/leancloud_flutter_plugin.dart';
import 'list_screen.dart';

void main() {

void initPlatformState() {
  LeancloudFlutterPlugin leancloudFlutterPlugin =
  String appId = "EnJt7BXlJ2Oc3nvk23lN39jN-gzGzoHsz";
  String appKey = "Iao5JCNRyH99m9B24G2RLQc8";
      LeancloudOSService.API, "https://api.maomishen.com");
  leancloudFlutterPlugin.initialize(appId, appKey);

class MyApp extends StatefulWidget {
  _MyAppState createState() => _MyAppState();

class _MyAppState extends State<MyApp> {
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Leancloud Plugin example app',
      home: ListScreen(),

Use this package as a library

1. Depend on it

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

  leancloud_flutter_plugin: ^0.0.5

2. Install it

You can install packages from the command line:

with Flutter:

$ flutter pub get

Alternatively, your editor might support 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:leancloud_flutter_plugin/leancloud_flutter_plugin.dart';
Describes how popular the package is relative to other packages. [more]
Code health derived from static analysis. [more]
Reflects how tidy and up-to-date the package is. [more]
Weighted score of the above. [more]
Learn more about scoring.

We analyzed this package on Mar 31, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.7.1
  • pana: 0.13.6
  • Flutter: 1.12.13+hotfix.8

Maintenance suggestions

Package is pre-v0.1 release. (-10 points)

While nothing is inherently wrong with versions of 0.0.*, it might mean that the author is still experimenting with the general direction of the API.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.68.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11 1.14.12
meta 1.1.8
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies
test ^1.5.1