7. AndroidManifest.xmlにIntent Filterを追加する
7.1. プロジェクト「AdkLedProj」ー「AndroidManifest.xml」をダブルクリックします。
7.2. エディタ画面で右下の「AndroidManifest.xml」タブをクリックします。
XMLファイルを直接編集しましょう。
7.3. 以下の<uses-library>属性を追加します。
<uses-library android:name="com.android.future.usb.accessory" />「com.android.future.usb.accessory」というのはライブラリ・パッケージの名称でネームスペース(名前空間)といいます。「com.android.future.usb.accessory」はAndroid 2.3.4 で USB accessory mode をサポートするためのパッケージで、このパッケージを使いたいために新規プロジェクトのビルドターゲットを「Google APIs 2.3.3」を選択していました。
7.3. 以下の<intent-filter>要素、<meta-data>要素を追加します。
<intent-filter> <action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" /> </intent-filter> <meta-data android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" android:resource="@xml/accessory_filter" />「android.hardware.usb.action.USB_ACCESSORY_ATTACHED」はUSBアクセサリ接続が行われた状態(=AndroidがUSBデバイスとして接続された状態)を指します。
インテントフィルター指定でUSB接続の状態を検知したら、先ほど作成したリソースファイルxmlフォルダ内のaccessory_filterに基づいてアプリを起動します。
AndroidManifest.xmlファイルは以下の通りになります。
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="jp.co.socym.adkled" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="10" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <uses-library android:name="com.android.future.usb.accessory" /> <activity android:name=".MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <intent-filter> <action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" /> </intent-filter> <meta-data android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" android:resource="@xml/accessory_filter" /> </activity> </application> </manifest>最後にAndroidManifest.xmlファイルを保管してください。
これで、Androidアプリは完成しました!
次は、Arduino側のスケッチの作成になります。
参考URL: Y.A.M の 雑記帳: Android USB Accessory
0 件のコメント:
コメントを投稿