Android Wearアプリケーション開発入門
- Android
- アプリケーション
今回はAndroid Wearについてです。簡単なAndroid Wearアプリケーション作成方法について説明します。Android Wearがどんなものなのかについては、AndroidCafeで使った資料を参照してください。
目次
アプリケーション開発環境の構築
開発環境
- デバイス
- Android
- Android 4.3以上
- Android
- 開発ツール
- Android SDK Tools 22.6 or higher
- Eclipse ADT Plugin or higher
- Android Studio 0.5.1 or higher
- Android Wear Preview
- Android Wear
- エミュレータ
※ Eclipseを使った開発も可能ですが、記事ではAndroidStudioを使って説明します。
開発者登録
Preview版SDK を使うには、Android Wear Developer Previewのための開発者登録が必要です
- 登録手順
- フォームから開発者情報を登録
- メールが送られてくる
- SDKをダウンロードする
Android Wear Previewを入手する
Android と Android Wear を連携するためのアプリケーション "Android Wear Preaview" を端末にインストールします
- 手順
- テスター登録をする
- Sign Up Confirmationメールから登録ページヘ移動
- Google Play から インストール
- 手持ちのAndroid 端末にインストールする
エミュレータの作成
Android Wearのエミュレータを作成します
- 手順
- イメージの取得
- エミュレータの作成
1. イメージの取得
Android SDK Managerを使ってエミュレータイメージを取得します
- Android SDK Managerを起動
- Android Wear ARM EABI v7a System Image をインストールする
2. エミュレータの作成
Android Virtual Device Manager を起動し、次のように設定します。
起動する
Android Wearアプリケーション開発
環境構築ができたら、エミュレータをAndroidを使ってアプリケーションを開発します。
Android Wear と連携する
Android Wear Previewを使ってAndroid Wear と接続します
- 手順
- エミュレータを起動する
- AndroidをPCに接続
- adbコマンドでポートフォワード設定をする
- Android Wear Previewを起動
1. エミュレータを起動する
エミュレータを起動し、画面が表示されているのを確認します。Android接続されていない状態では携帯電はに斜め線の入ったアイコンが表示されます
2. AndroidをPCに接続
AndroidとPCをUSBケーブルで接続します
3. adbコマンドでポートフォワード設定をする
ターミナルから以下のコマンドを実行します
#!java
$ adb -d forward tcp:5601 tcp:5601
4. Android Wear Previewを起動
Andorid Wear Preview を起動し、[Connect]ボタンをクリックします。
接続完了するとエミュレータの接続状態アイコンが接続アイコンに変更されます。
アプリケーションの作成
ボタンをクリックするとNotificationが表示されるアプリケーションを作成します。
- 手順
- プロジェクトの新規作成
- ライブラリの追加
- Notificationから起動されるActivityを追加
- MainActivityにNotification表示処理を追加
1. プロジェクトの新規作成
Android Wear のための特別な設定はプロジェクト新規作成にはありません。通常のアプリケーションプロジェクトとして作成します。
プロジェクト概要
- プロジェクト名 : Android WearSample
- 各SDKバージョン : 4.4
- Activity名 : MainActivity
2. ライブラリの追加
次の手順でライブラリを追加します - jarファイルのコピー - build.gradleの修正
wearable-preview-support.jarファイルのコピー
Developer Previewに含まれている "wearable-preview-support.jar"をプロジェクトのlibsにコピーする
build.gradleの修正
dependenciesに以下のjarを追加する
- android-support-v4.jar
-
wearable-preview-support.jar
dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) compile "com.android.support:support-v4:19.1.+" compile files('../libs/wearable-preview-support.jar') }
3. Notificationから起動されるActivityを追加
Notificationから起動されるActivityを追加します
- Activity名:ViewEventActivity
- レイアウト ; activity_view_event
4. MainActivityにNotification表示処理を追加
MainActivityにボタンがクリックされた時のコードを追加します。
#!java
Intent viewIntent = new Intent(this, ViewEventActivity.class);
viewIntent.putExtra("eventId", eventId);
PendingIntent viewPendingIntent =
PendingIntent.getActivity(this, 0, viewIntent, 0);
NotificationCompat.Builder notificationBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle(eventTitle)
.setContentText(eventMessate)
.setContentIntent(viewPendingIntent);
NotificationManagerCompat notificationManager =
NotificationManagerCompat.from(this);
notificationManager.notify(notificationId, notificationBuilder.build());
動作確認
アプリケーションを実行して次のことを確認します。
- ボタンがクリックされた後にAndroid Wear にNotificationが表示される
Actionをカスタマイズして、アイコンを変更する
Actionのアイコンを変更し、タップすると連絡帳アプリケーションが起動するようにします。
MainActivityの修正
ボタンがクリックされた時の処理を次のように変更します。
#!java
Intent viewIntent = new Intent(Intent.ACTION_VIEW);
Uri uri = Uri.parse("content://contacts/people/");
viewIntent.setData(uri);
PendingIntent viewPendingIntent =
PendingIntent.getActivity(this, 0, viewIntent, 0);
NotificationCompat.Builder notificationBuilder =
new NotificationCompat.Builder(this)
.setSmallIcon(R.drawable.ic_launcher)
.setContentTitle(eventTitle)
.setContentText(eventMessate)
.setContentIntent(viewPendingIntent)
.addAction(android.R.drawable.sym_contact_card, "Contacts", viewPendingIntent);
動作確認
アプリケーションを実行して次のことを確認します。
- Notification が表示される
- Android Wearの画面をフリックし、Actionを表示する
- Actionのアイコンが変更されている
- Actionをタップすると、連絡帳が表示される
Andriod Wear の新機能を使う
ここまでの機能はAndroid標準のAPIを使っています。次からはAndroid WearのAPIを使ったNotficationの機能の実装を説明します。
Iconを非表示
Android Wearの画面に表示されるアイコンを非表示にします。
MainActivityの修正
ボタンがクリックされた時の処理を次のように変更します。
WearableNotifications.Builderを使ってNotificationオブジェクトを生成しているところがポイントです。
#!java
// Create a WearablesNotification.Builder to add special functionality for wearables
Notification notification =
new WearableNotifications.Builder(notificationBuilder)
.setHintHideIcon(true)
.build();
NotificationManagerCompat notificationManager =
NotificationManagerCompat.from(this);
notificationManager.notify(notificationId, notification);
動作確認
アプリケーションを実行して次のことを確認します。
- Iconが表示されていなこと
Voice Input を使う
Voice Inputを使って音声入力に対応します。エミュレータは音声入力に対応してないため、代わりにキーボード入力になります。
MainActivityの修正
ボタンがクリックされた時の処理を次のように変更します。
RemoteInput を使っているところがポイントです。
#!java
// Create the remote input
RemoteInput remoteInput = new RemoteInput.Builder("reply")
.setLabel("Reply")
.build();
// Create wearable notification and add remote input
Notification replyNotification =
new WearableNotifications.Builder(replyNotificationBuilder)
.addRemoteInputForContentIntent(remoteInput)
.build();
NotificationManagerCompat notificationManager = NotificationManagerCompat.from(this);
notificationManager.notify(1, replyNotification);
以上、Android Wear アプリケーション開発入門でした。