Android

Android Studioでエラーログを詳細表示する

投稿日:2017年5月17日 更新日:

はじめに

こんにちは。Android開発を久しぶりにやっているのですが、Data Binding関連のビルドエラーメッセージで解決に時間がかかったので、備忘録として今回はブログを書きたいと思います。

初期設定でのビルドエラーメッセージ

RealmとData Bindingの設定をした簡単なプログラムを実行したところ、Android StudioのMessagesに下記のエラーが発生したとします。この場合、「パッケージcom.re_engines.sample.databindingは存在しません」と表示されていることからData Bindingの設定などに問題があると考えて、Data Binding関連の調査を先ずはしようと考える方が多いのではないでしょうか。

ただ、Data Bindingのクラスは自動作成されるため、別の場所でビルドエラーが発生した場合、クラスが作成されずに、上記のエラーとなる場合もあります。そのため、Data Bindingだけの設定などを見直しているだけでは、原因が特定できないことがあります。

詳細なビルドエラーメッセージを出力

上部のメニューの[Preferences]から[Compiler]を選択し、[Command-line Options]に[–debug]を追記し、[OK]を押します。

この設定をした上で再度ビルドすると、一部省略していますが、今度は下記のような詳細エラーが表示されます。

上記をみるとData Bindingとは別にRealm関連でBaseModelにおいてエラーが発生していることがわかります。最終的にはこちらを解消することでビルドが成功するようになります。

おまけ

今回はエラーメッセージから諸々修正を進めましたが、最終的には下記のようなRealmObjectの継承の仕方に問題がありました。

 

すべてのRealmのモデルクラスの親クラスとして、BaseModelクラスを作り、そこに共通処理などを実装していこうと考えたのですが、これがRealmの場合はできないことがわかりました。

Userクラスなどが直接RealmObjectを継承する必要があるようです。これは、GitHub上でも議論されているので、今後に期待ですね。

さいごに

ビルドエラーメッセージが表示されていても、それが直接的な原因ではない場合、解決ができずに無駄に悩むことになりますよね。そんな時は、ちょっと冗長なエラーメッセージが出力されますが、Android Studioの設定を変更して、詳細なビルドエラーメッセージを出力させてみてはいかがでしょうか。

おすすめ書籍

Android/iOSクロス開発フレームワーク Flutter入門 [改訂新版]Android SDKポケットリファレンス (POCKET REFERENCE) 基本からしっかり身につくAndroidアプリ開発入門 Android Studio 3対応 (「黒帯エンジニア」シリーズ)

page_footer_responsive




-Android
-

執筆者:

免責事項

このブログは、記事上部に記載のある投稿日時点の一般的な情報を提供するものであり、投資等の勧誘・法的・税務上の助言を提供するものではありません。仮想通貨の投資・損益計算は複雑であり、個々の取引状況や法律の変更によって異なる可能性があります。ブログに記載された情報は参考程度のものであり、特定の状況に基づいた行動の決定には専門家の助言を求めることをお勧めします。当ブログの情報に基づいた行動に関連して生じた損失やリスクについて、筆者は責任を負いかねます。最新の法律や税務情報を確認し、必要に応じて専門家に相談することをお勧めします。


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


関連記事

【Kotlin】Glideで角丸の画像を作成する

1 はじめに2 使用するライブラリのインポート3 Glideで画像を読み込む4 オプションまとめ5 さいごに6 おすすめ書籍 はじめに こんにちは。miyagawaです。 今回はGlideを使って角丸 ...

Android 11でdeprecatedになったAsyncTask対応Kotlin編

1 はじめに2 基本的な対応2.1 対応後のサンプル3 Coroutinesで実装4 最後に5 おすすめ書籍 はじめに 以前の記事で、Android 11にてdeprecatedになったAsyncTa ...

Kotlin ChartsライブラリとCryptowatchAPIでローソク足を描画してみる。

1 はじめに2 CryptoWatchについて2.1 OHLC3 リクエスト方法3.1 CryptoWatchのAPI4 Androidでの実装4.1 実装前の準備4.2 データクラスの作成4.3 リ ...

[Android] パーミッション管理を簡単・簡潔に書けそうなPermissionsDispatcher

1 はじめに2 環境3 導入4 Activityでの実装例5 @RuntimePermissions(必須)6 PermissionsDispatcherに処理を移譲する7 @NeedsPermiss ...

[Androidアニメーション]Shared Elements遷移

1 はじめに2 Shared Elements遷移とは3 layout xml4 Activity遷移5 その他6 さいごに はじめに 最近、雨が多いですね。そんな時は家にこもって、プログラミングをす ...

フォロー

blog-page_side_responsive

2017年5月
 123456
78910111213
14151617181920
21222324252627
28293031  

アプリ情報

私たちは無料アプリもリリースしています、ぜひご覧ください。 下記のアイコンから無料でダウンロードできます。