Androidアプリケーションのコンポーネントには、アクティビティ、サービス、コンテンツ プロバイダ、ブロードキャスト レシーバーの4種類があります。アクティビティは画面を持つコンポーネント、サービスはバックグランドで動作するコンポーネントです。

アプリケーションの形態によっては、バックグランドで動作しているサービスからアクティビティを開始して画面表示をしたい、といったことがあります。

startActivityメソッドでインテントを送信することでアクティビティを開始する方法が良く知られていますが、実はこの方法には状況によって5秒程度の時間がかかるという落とし穴があります。

続きを読む...

2017年7月10日~11日までの2日間開催されていたAmazonプライムデーで、Fire HD 8が半額の5,980円で販売されていたので購入してみました。

この端末にはFire OSという専用のOSが搭載されているのですが、中身はほとんどAndroidです。

ADB接続も簡単にできるのでAndroidアプリケーション開発時の動作検証用タブレット端末としても役立ちます。開発用PCのスペックが低いとAndroidエミューレーター起動するのも重荷ですからね。実機があるとデバッグも楽になります。

今回はFire HD 8ADBを有効にしてAndroid Studioから認識できるようにする方法を解説します。

続きを読む...

Android Studioのlogcat出力にはデフォルトで色がついているのですが、黒色や紺色などダークカラーが多くいまいち見分けが付きません。 logcat出力に色を付けると視認性が上がりデバッグ効率もアップしますよ。

続きを読む...

OpenCVはIntelが公開しているオープンソースの画像解析ライブラリです。今回はAndroidからOpenCVを使ってカメラ映像から人の顔を検出するプログラムを作ってみます。使用するOpenCVのバージョンは昨年末にリリースされたばかりの3.2を使用します。

続きを読む...

AudioStreamクラスを使うと、驚くほど簡単に音声のリアルタイムストリーミングを実装することができます。今回は2つのAndroid端末間で音声を一方向に送信するということをやってみます。

続きを読む...

Android Studioを使用してアプリケーションを開発しているときに、以下のエラーが表示されjcenterに接続できないということがありました。

Could not get resource 'https://jcenter.bintray.com/com/android/tools/build/gradle/1.2.3/gradle-1.2.3.pom'.
Could not HEAD 'https://jcenter.bintray.com/com/android/tools/build/gradle/1.2.3/gradle-1.2.3.pom'.
peer not authenticated

どうやら極めて特殊なプロキシー環境下でHTTPSを使用してjcenterに接続しようとするとエラーになってしまうようです。

続きを読む...