モジュールやライブラリ構成管理としてGradleが付属されています。
新機能を使うためにGradleでモジュールを追加したりした場合
Gradleビルドを行う必要があります。
(構成に変更を加えたら”同期”というリンクが表示されるためクリックすると再ビルドが走ります。)
そのときに以下のようなエラーが表示されることがあります。
Error: Program type already present:xxxxxxx
私の場合AWS IoTへの接続機能を使用しようとして以下が表示されました。
Error: Program type already present: com.amazonaws.mobileconnectors.iot.AWSIotMqttQos
要するに
読み込みモジュールが重複して存在しています
ということですね。
gradleではbuild.gradleファイルに必要なモジュールを記載することで
モジュールを勝手にインストールしてくれますが、
手動でapp/libsフォルダ配下にxxx.jarファイルを入れてしまっていた場合などに本現象が発生します。
app/libsフォルダ配下のxxx.jarファイルを消して、再度ビルドすることでエラーが表示されなくなりました。
コメント