現在、 image_pickerプラグインは、ヘルパーライブラリGlideと一緒にGitHubに存在するAndroid ImagePickerAndroidライブラリに依存しています。 これらのライブラリをプルするには、GItにリクエストをプロキシするパッケージリポジトリであるJitpackを使用する必要があります。 codelabには現在、開発者がbuild.gradleに以下を追加してJitpackを有効にするステップがあります。
allprojects {
repositories {
jcenter()
maven { url "https://jitpack.io" } // new
}
}
プラグインがJitpackリポジトリに依存していることを認識し、この依存関係を自動的に追加できれば便利です。 iOSに関連して、おそらくプラグインはサードパーティのCocoapodsスペックリポジトリへの依存関係も追加する可能性があります。
この制限を修正することの欠点は、すべてのコードがどこから来ているのかをFlutter開発者が予測しにくくなることです。 それで、これは「意図したとおりに機能している」のでしょうか。 ただし、プラグインを使用している場合は、ビルドを作成するためにすでにpubに依存しています。 開発者がbuild.gradleを編集せずにプラグインで物事を成し遂げることができれば、確かに素晴らしいでしょう。
これはおそらくAPIの重大な変更ではない方法で修正できるという点で、優先度はやや低くなっています。
/ cc @ mravn-google @ mit-mit @ jakobr-google @szakarias
参考:この問題により、 https://github.com/flutter/plugins/pull/141が重大な変更になります(プラグインAPIは変更されていませんが、プラグインに新しい依存関係を追加しているだけです)。
cc @ mravn-google
最も参考になるコメント
このバグを一般化して、カスタムMavenリポジトリへの依存関係の指定をカバーします。
maven { url '<maven_repo_url>' }
元のjitpackの例に加えて、他の同様のケースにはZenDeskとfabric.ioが含まれます。