Androidシステムはログを収集する仕組み(android.util.Log)を備えています。この仕組みを使えば、アプリケーションの処理の流れや、内部の状態を逐次出力できるので、デバッグ作業に役立ちます。
ですが…
リリース時は不要(リリース後の不具合解析で必要になるもの以外)です。
なので、リリースの前にログ出力の記述を無効にしますが、数が多いと大変な作業になります。
今回、debug/releaseビルドの切り替えで、自動的にログ出力をon/offできるようにしたので紹介します。
Androidシステムはログを収集する仕組み(android.util.Log)を備えています。この仕組みを使えば、アプリケーションの処理の流れや、内部の状態を逐次出力できるので、デバッグ作業に役立ちます。
ですが…
リリース時は不要(リリース後の不具合解析で必要になるもの以外)です。
なので、リリースの前にログ出力の記述を無効にしますが、数が多いと大変な作業になります。
今回、debug/releaseビルドの切り替えで、自動的にログ出力をon/offできるようにしたので紹介します。
Androidアプリケーションはプログラムの一部をNativeコードで作ることが出来ます。
Nativeコードとは端末のCPUが直接解釈できるプログラム(マシン語)のことです。
演算負荷の大きい処理を高速化したい場合に有効な手段です。
NativeコードのプログラミングはAndroid NDK(Native Development Kit)を使ってC/C++で行います。
そのためのNative開発環境を、Android Studioは組み込めるようになっています。
今回、Android StudioへNative開発環境を構築してみたので紹介します。
※本記事はAndroid Studio 4.1.1で実施しています。
Androidアプリケーションはプログラムの一部をNativeコードで作ることが出来ます。
Nativeコードとは端末のCPUが直接解釈できるプログラム(マシン語)のことです。
演算負荷の大きい処理を高速化したい場合に有効な手段です。
NativeコードのプログラミングはAndroid NDK(Native Development Kit)を使ってC/C++で行います。
そのためのNative開発環境を、Android Studioは組み込めるようになっています。
今回、Android StudioへNative開発環境を構築してみたので紹介します。
※本記事はAndroid Studio 4.1.1で実施しています。
プログラムの動作は「入力を処理して出力する」ことの繰り返しです。出力先がデータベースであった場合、ソフトウェアテストでデータベースの内容を確認したくなります。
データベース(バイナリ)自体のアサーションは不一致した時の検証が困難なので、データを取り出した時のCursorの確認できれば良いのですが、アサーションは用意されていません。
なので、Cursorの一致を確認するTruthのSubjectを作成してみました。
Android端末はタッチスクリーンで操作することが当たり前になりました。昔あった、D-Padやトラックボールを装備した端末を見る事はありません。
そのせいもあって、最近はフォーカスを意識することが無くなったように思います。
しかし、アプリ開発を行っていると、まれに対応が必要になったりします。特にEditTextを扱うときなど。
必要な時に混乱しないようにフォーカスについてまとめてみました。