ログ(Logcat出力)をdebug/releaseビルドでon/offする

投稿日:  更新日:

Androidシステムはログを収集する仕組み(android.util.Log)を備えています。この仕組みを使えば、アプリケーションの処理の流れや、内部の状態を逐次出力できるので、デバッグ作業に役立ちます。

ですが…

リリース時は不要(リリース後の不具合解析で必要になるもの以外)です。

なので、リリースの前にログ出力の記述を無効にしますが、数が多いと大変な作業になります。

今回、debug/releaseビルドの切り替えで、自動的にログ出力をon/offできるようにしたので紹介します。

続きを読む

Native開発環境の構築~既存のProject編~

投稿日:  更新日:

Androidアプリケーションはプログラムの一部をNativeコードで作ることが出来ます。

Nativeコードとは端末のCPUが直接解釈できるプログラム(マシン語)のことです。

演算負荷の大きい処理を高速化したい場合に有効な手段です。

NativeコードのプログラミングはAndroid NDK(Native Development Kit)を使ってC/C++で行います。

そのためのNative開発環境を、Android Studioは組み込めるようになっています。

今回、Android StudioへNative開発環境を構築してみたので紹介します。

※本記事はAndroid Studio 4.1.1で実施しています。

続きを読む

Native開発環境の構築~新規のProject編~

投稿日:  更新日:

Androidアプリケーションはプログラムの一部をNativeコードで作ることが出来ます。

Nativeコードとは端末のCPUが直接解釈できるプログラム(マシン語)のことです。

演算負荷の大きい処理を高速化したい場合に有効な手段です。

NativeコードのプログラミングはAndroid NDK(Native Development Kit)を使ってC/C++で行います。

そのためのNative開発環境を、Android Studioは組み込めるようになっています。

今回、Android StudioへNative開発環境を構築してみたので紹介します。

※本記事はAndroid Studio 4.1.1で実施しています。

続きを読む

Cursorの一致を確認するTruthのSubject

投稿日:  更新日:

プログラムの動作は「入力を処理して出力する」ことの繰り返しです。出力先がデータベースであった場合、ソフトウェアテストでデータベースの内容を確認したくなります。

データベース(バイナリ)自体のアサーションは不一致した時の検証が困難なので、データを取り出した時のCursorの確認できれば良いのですが、アサーションは用意されていません。

なので、Cursorの一致を確認するTruthのSubjectを作成してみました。

続きを読む

AndroidのFocusとTouchMode

投稿日:  更新日:

Android端末はタッチスクリーンで操作することが当たり前になりました。昔あった、D-Padやトラックボールを装備した端末を見る事はありません。

そのせいもあって、最近はフォーカスを意識することが無くなったように思います。

しかし、アプリ開発を行っていると、まれに対応が必要になったりします。特にEditTextを扱うときなど。

必要な時に混乱しないようにフォーカスについてまとめてみました。

続きを読む