Switch branches/tags
Find file History
ened and dnfield Upgrade Google services plugin to 4.2.0 (#917)
* Upgrade Google services plugin to 4.2.0

https://github.com/google/play-services-plugins/tree/master/google-services-plugin

The plugin now highlights dependency conflicts a lot better.

* Also upgrade google-services plugin reference in android_alarm_manager plugin and the README.md files
Latest commit b401d36 Nov 23, 2018

README.md

firebase_remote_config plugin

A Flutter plugin to use the Firebase Remote Config API.

pub package

For Flutter plugins for other Firebase products, see FlutterFire.md.

Note: This plugin is still under development, and some APIs might not be available yet. Feedback and Pull Requests are most welcome!

Usage

Import the firebase_remote_config plugin

To use the firebase_remote_config plugin, follow the plugin installation instructions.

Android integration

Enable the Google services by configuring the Gradle scripts as such.

  1. Add the classpath to the [project]/android/build.gradle file.
dependencies {
  // Example existing classpath
  classpath 'com.android.tools.build:gradle:3.2.1'
  // Add the google services classpath
  classpath 'com.google.gms:google-services:4.2.0'
}
  1. Add the apply plugin to the [project]/android/app/build.gradle file.
// ADD THIS AT THE BOTTOM
apply plugin: 'com.google.gms.google-services'

Note: If this section is not completed you will get an error like this:

java.lang.IllegalStateException:
Default FirebaseApp is not initialized in this process [package name].
Make sure to call FirebaseApp.initializeApp(Context) first.

Note: When you are debugging on android, use a device or AVD with Google Play services. Otherwise you will not be able to use Firebase Remote Config.

Use the plugin

Add the following imports to your Dart code:

import 'package:firebase_remote_config/firebase_remote_config.dart';

Initialize RemoteConfig:

final RemoteConfig remoteConfig = await RemoteConfig.instance;

You can now use the Firebase remoteConfig to fetch remote configurations in your Dart code, e.g.

final defaults = <String, dynamic>{'welcome': 'default welcome'};
await remoteConfig.setDefaults(defaults);

await remoteConfig.fetch(expiration: const Duration(hours: 5));
await remoteConfig.activateFetched();
print('welcome message: ' + remoteConfig.getString('welcome'));

Example

See the example application source for a complete sample app using the Firebase Remote Config.

Issues and feedback

Please file issues to send feedback or report a bug. Thank you!