7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Flutterの共有プリファレンスプラグイン使用時にMissingPluginExceptionが表示された際の対処

Posted at

Flutterの共有プリファレンスプラグイン使用時にMissingPluginExceptionが表示される

Flutterでの開発において、共有プリファレンスプラグイン(shared_preferences plugin)を使用することで、キー・バリュー型の小さなデータを保存することができる。

pubspec.yamlファイルに追加

公式ドキュメントにしたがって、shared_preferencesプラグインをpubspec.yamlファイルに追加し、Packages getをクリック。

dependencies:
  flutter:
    sdk: flutter
  shared_preferences: ^0.5.6+3 # 執筆時点

Dartファイルに追加

Dartファイルにshared_preferencesプラグインを追加。

import 'package:shared_preferences/shared_preferences.dart';

共有プリファレンスに書き込み

ログイン時にAPIから返されるJSONファイルに含まれるトークンを共有プリファレンスに書き込むため、Dartファイルに下記のコードを追加。

final prefs = await SharedPreferences.getInstance();
prefs.setString('token', token);

MissingPluginExceptionが表示される

ホットリスタートしてエミュレータからログイン処理を行い、トークンが書き込めているか確認したところ、下記のエラーが発生。

flutter: MissingPluginException(No implementation found for method getAll on channel plugins.flutter.io/shared_preferences)

MissingPluginExceptionの対処方法

コールドリスタート(停止して再起動)したところ、エラーが解消し、共有プリファレンスへの書き込みを確認できた。

参考リンク

Stack Overflow

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?