デバッグ - Java SDK
Android Studio デバッグ
重要
Android Studio デバッグでは、Realm オブジェクト フィールドに誤りが生じる値を提供できます。 正しい値については、代わりにアクセス値を監視するか、Realm オブジェクト toString()
メソッドを使用して最新のフィールド値を確認できます。
このセクションでは、誤った値の報告を避けるために、Android Studio で Realm アプリケーションをデバッグする際に注意する必要がある情報について詳しく説明します。 Realm オブジェクトを監視すると、オブジェクトのフィールドに値が表示されます。 フィールド値自体は使用されていないため、これらの値は誤りです。 これは、Realm がステージの背後にプロキシ オブジェクトを作成し、Realm 内の永続データにアクセスするために getter と setter をオーバーライドするためです。 正しい値を確認するには、アクターに監視を追加します。 以下の画像を参照してください。
上記の画像では、デバッグは行113
で停止しています。 監視値は 3 つあります。
person
変数person.getName()
アクセスperson.getAge()
アクセス
107
から111
行のコードは、書込みトランザクション(write transaction)の名前と経過時間を変更することで、 person
インスタンスを変更します。 113
行では、 person
監視インスタンスがフィールド監視値の誤った値を報告します。 アクセス ラーを使用する監視値は正しい値を報告します。
NDK デバッグ
Realm Java SDK ライブラリにはネイティブ コードが含まれています。 デフォルトのスタック トレースでは最小限の情報が提供されるため、NDK クラッシュのデバッグは複雑になる可能性があります。
Cruslytics などのクラッシュ レポート作成ツールを使用することをお勧めします 。これにより、ネイティブ エラーを追跡し、その他の重要な情報を収集する能力ができます。この情報があれば、問題をより迅速に解決できます。
プロジェクトの クラッシュ で NDK クラッシュのレポート作成を有効にするには、次の内容をアプリケーションのbuild.gradle
ファイルのルートに追加します。
crashlytics { enableNdk true }
注意
値androidNdkOut
とandroidNdkLibsOut
は必要ありません。