blitz-time アプリ開発ブログ

Androidアプリ開発などのTips集

【Flutter開発】プラグインをカスタマイズしたい場合

Flutterでは数多くのプラグインを利用することで様々な機能を容易に実装することができます。

しかし、プラグインの機能が少しでも物足りない場合、カスタマイズする必要があります。

プラグインソースコードも含めて自動的にダウンロードされて利用することが多いため、あまり意識することが少ないですが、そのソースコードを直接変更することで、機能のカスタマイズが可能です。




しかし、自動ダウンロードされたプラグインソースコードは、何かしらのタイミングで自動的に削除される場合があります。そうなると、カスタマイズしたプラグインが消えてしまいます。

それでは問題がありますので、カスタマイズするプラグインは自分のプロジェクトに取り込んでおいた方が良いです。




通常、プラグインを利用する場合は、pubspec.yamlにたとえば次のように記載します。

dependencies:
  share_plus: ^4.0.10+1


まず、プラグインをプロジェクト内にコピーするのですが、プラグインは、

/user/(UserName)/.pub-cache/hosted/pub.dartlang.org

フォルダにインストールされていますので、該当のプロジェクトのフォルダを探し、そのフォルダごと、自分のプロジェクト内にコピーします。




そして、下記のようにすることで、プロジェクト内のプラグインを参照することができます。

share_plus:
    path: ./share_plus-4.0.10+1


これで、プロジェクト内のプラグインを直接編集することで、プラグインのカスタマイズが可能になります。




注意:

ただし、自分でカスタマイズしてしまうと、プラグインの機能拡張などのアップデートの恩恵を受けられなくなりますので、どうしてもカスタマイズが必要な場合にだけにしたほうがよさそうです。