NFC タグ を検出したら特定のアプリを起動する – NFC アプリの基礎


NFC アプリに特有の処理として、下記の2つがある。
(1) NFC タグ を検出したら、特定のアプリを起動する
(2) アプリを起動しているときに、NFC タグ を検出したら、何か処理する

NFCタグ を検出したら、特定のアプリを起動するには、下記を設定する。
(1) AndroidManifest.xml に uses-permission と intent-filter を設定する。
(2) res/xml/nfc_tech_filter.xml に tech-list を設定する。

uses-permission と intent-filter は、おなじみなので省略する。
tech-list には、検出したいNFCタグの種別を記述する。
tech-list の詳細は、NFCの基本 を参照のこと。
NFCタグの種別は、TagTechnology を参照のこと。

AndroidManifest.xml の例

<uses-permission android:name="android.permission.NFC" />
<activity 
	android:name=".MainActivity"
	android:label="@string/app_name" >
 <intent-filter>
  <action android:name="android.nfc.action.TECH_DISCOVERED" />
  <category android:name="android.intent.category.DEFAULT" />
 </intent-filter>
 <meta-data
  android:name="android.nfc.action.TECH_DISCOVERED"
  android:resource="@xml/nfc_tech_filter" />
</activity>

res/xml/nfc_tech_filter.xml の例
Type-A, Type-B, Type-F(Felica) に反応する。

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
 <tech-list>
  <tech>android.nfc.tech.NfcA</tech>
 </tech-list>
 <tech-list>
  <tech>android.nfc.tech.NfcB</tech>        
 </tech-list>
 <tech-list>
  <tech>android.nfc.tech.NfcF</tech>        
 </tech-list>
</resources>

注意
NFCの基本 には、下記が掲載されているが、これは動作しない。
tech-list は、全てを満たすNFCタグに反応する。この例では IsoDep, NfcA, NfcB, … の全てを満たすNFCタグとなり、これは存在しない。
上記のように tech-list を複数記述のが正しい。

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
    <tech-list>
        <tech>android.nfc.tech.IsoDep</tech>
        <tech>android.nfc.tech.NfcA</tech>
        <tech>android.nfc.tech.NfcB</tech>
   ...
    </tech-list>
</resources>

参考
Android 開発ガイド: NFC の基本
Android NFC アプリハンズオン by tomorrowkey
NexusSによるNFC調査: getTechList 編
reference: TagTechnology

関連
NFC 神経衰弱ゲーム
・NFC タグ を検出したら特定のアプリを起動する – NFC アプリの基礎
アプリを起動しているときに NFC タグを検出したら処理する – NFC アプリの基礎


AKB 神経衰弱 in アキバ大好き祭り


8月18日(土) に アキバ大好き!祭り2012夏 に参加しました。
今回は「日本Androidの会 秋葉原支部 アクセサリ部」の一員として、
Android 端末と NFC タグを使用した 神経衰弱ゲーム を展示しました。

アキバらしく素材を AKB48 にしてみました。
アキバなら AKB に詳しい人が多いと思ったのですが。
実際は、メンバーの顔を分からない人が多くて、難しいという反応でした。

パネル

impress さんに取材して頂きました。
NFCタグが1枚100円で販売中、スマホ連携で様々に活用

関連
NFC 神経衰弱ゲーム


NFC 神経衰弱ゲームの画像切替え


NFC 神経衰弱ゲーム には、動物の画像を添付していますが。
毎回、同じ画像だと飽きてきますね。
そこで、画像の切替えが出来るようになっています。

デフォルトでは、下記の場所にある画像を使用します。
/NfcCconcentration/default/

ここには、以下の画像と動画のファイルがあります。
image_start.jpg
image_1.jpg, image_2.jpg, …, image_10.jpg
video_complete.m4v

画像の切替えの手順です。
1. 画像を設置します
(1) PCとAndroid 端末をUSB接続します。
(2) 好きな名前のディレクトリ (例えば hoge) を作ります。
/NfcCconcentration/hoge/
(3) 上記の同じ名前のファイルを置きます。
画像サイズは、下記としてください。自動的にリサイズしません。
480px : image_start.jpg
240px : image_1.jpg, image_2.jpg, …, image_10.jpg
(4) 動画の代わりに、画像でもいいです。
その場合は、ファイル名を下記としてください。
image_complete.jpg

2. ディレクトリを指定します
(1) menu ボタンにて、setting 画面を呼び出します。
(2) 「Select Directory」をタッチします。
(3) ディレクトリ名が表示されます。

(4) 切替えしたディレクトリ名をタッチします。

関連
NFC 神経衰弱ゲーム
NFC 神経衰弱ゲーム の準備


NFC 神経衰弱ゲーム の準備


NFC 神経衰弱ゲーム の準備の説明です。

必要なもの
(1) NFC対応の Android 端末
(2) NFCタグ 10枚
(3) 名刺用紙 10枚

トランプの代わりになるカードを作ります
(1) NFCタグを用意します。
通販で購入できる Circus NXP MifareUL あたりがお勧め

(2) 名刺用紙に好きな絵柄を印刷します。
名刺ソフトは ラベル屋さん がお勧め

(3) カードの裏に NFCタグ を貼ります

カードを Andriod端末 に登録します
(1) アプリを起動する
(2) menuボタンを押し、setting をクリックする

(3) setting 画面が表示されます

(4) Andriod端末にカードをかざします

(5) NFCタグが認識されると登録されます

(6) 10枚登録すると終了です。
(7) Card List で確認してください。

関連
NFC 神経衰弱ゲーム
NFC 神経衰弱ゲームの画像切替え


NFC 神経衰弱ゲーム


NFCタグ を使用した神経衰弱ゲームを作成しました。
ソースコードは code.google に置いています。

ゲームを始める前に準備が必要です。
説明は こちら です。

遊び方
トランプの神経衰弱と同じです。
(1) カードを並べます。

(2) カードの上に Android端末 をかざします。
該当する写真が表示されます。

(3) 同じ動物の写真を揃えます。

(4) 全部揃うと、動画が表示されます。

関連
NFC 神経衰弱ゲーム の準備
NFC 神経衰弱ゲームの画像切替え
AKB 神経衰弱 in アキバ大好き祭り
NFC タグ を検出したら特定のアプリを起動する – NFC アプリの基礎
アプリを起動しているときに NFC タグを検出したら処理する – NFC アプリの基礎


中国バイドゥ が Simeji を買収した


@adamrocker さん @yanorin さん おめでとうございます。\(^o^)/

中国バイドゥ社が Android日本語入力システム Simeji を買収しました。
買収額は数億円と見られています。
昨夜のWBS (ワールドビジネスサテライト) で放映されたようです。

Simeji(しめじ)は、rockrin こと @adamrocker さんと @yanorin さんが開発している
日本語入力システムです。
Android 1.5 の時代から開発している老舗アプリで、完成度も高く、お勧めアプリの定番のひとつです。
マッシュルームという拡張機能があることで、多くの開発者が対応アプリを作っています。

@adamrocker さんは デ部 (Androidデベロッパー倶楽部) の元部長、@yanorin さんは Android女子部 の部長であり、Android のコミニュティの中では中心的な人物です。
私を含めて多くの方がお世話になっています。
写真で @adamrocker さんが着ているのはデ部のTシャツです。

Android アプリを作っても儲からないよ! と言われいて。
開発者が増える一方で、マネタイズの仕組みができず、エコシステムが成立しない現状があります。
今回の成功が、Android のエコシステムとコミニュティの活性化につながれば、嬉しいですね。

参考
WBS: 中国バイドゥが日本語入力システム アンドロイド向け事業を取得
techcrunch: Andorid向け日本語入力のSimejiをバイドゥが買収
ITPro: “変なソフト”として進化する人気Android日本語入力「Simeji」
Android Market: Simeji


Mashup Awards 7 – ArtIME 日本語入力


@takahashi_ken さん おめでとう \(^o^)/

2011年12月11日 Mashup Awards 7 が発表された。
Mashup (マッシュアップ) とは、複数の異なる提供元の技術やコンテンツを複合させて新しいサービスを形作ることです。
Mashup Award は今年で7回目になる Mashup のコンテストです。
Web API や最新プラットフォームを活用したオリジナルの作品を開発・披露して、 少し未来の Web 体験を提案して頂くという趣旨で開催されています。

market: ArtIME 日本語入力 が 協力企業賞 イースト賞 を受賞しました。

作品の説明
ArtIME 日本語入力は美しいユーザインタフェースとインタラクティブ性を兼ね備えた、新しい日本語入力用ソフトウェアです。キーボードそのものに英和・和英辞書・Wikipediaを連動させ、ソフトウェアキーボードの新しい利用法をご提案いたします。

受賞の理由
応募作品の中でもIMEに新しい機能(Wikipedia検索)を加えるという発想と操作性の高さが光っていました。今後、辞書検索機能も実装して頂きたいという期待も込めてイースト株式会社の協力企業賞とさせて頂きます。

作者の @takahashi_ken さんは、横浜支部の活動を積極的に行なっている方です。
前日の10日は、横浜デ部忘年会 で一緒にこの1年を振り返ってました。
ArtIME の構想とか進化の過程も横目で拝見していました。
我がことのように嬉しいですね。

関連
・Mashup Awards 7 – ArtIME 日本語入力
Mashup Awards 7 – 東日本大震災アーカイブ

参考
market: ArtIME 日本語入力
MA7: ArtIME 日本語入力
IT用語辞典 マッシュアップ


Android アプリ 10円セール


Google は、Android アプリのダウンロード数が100億件を突破したことを記念して、12月7日から10日間日替わりで有料アプリを10円で販売するキャンペーンを開始した。
初日の12月7日は下記の10本のアプリでした。

SoundHound ∞
アスファルト6:Adrenaline HD
Minecraft – Pocket Edition
SwiftKey X Keyboard
Endomondo Sports Tracker PRO
Great Little War Game
SketchBook Mobile
Fieldrunners HD
Color & Draw for kidsphone
Paper Camera

当然ながら、有料アプリの購入には、課金の登録が必要です。
Google Checkout かドコモなどのキャリア課金が利用できます。


参考
10 Billion Android Market downloads and counting
人気有料アプリが10円!100億ダウンロードを記念した10日間限定セール!
「Androidアプリ10円セール」のウラ事情 Googleの狙いは!!?
有料アプリってどうやって購入するんですか?


スライドパズルにスライド操作を追加した


スライドパズル に駒をスライドする操作を追加した。
自分でやってみて、スライド出来ないと、物足りなかった。

別アプリにしています。
スライドする操作では 5×5 や 6×6 では 駒が小さくて触りにくい。
4×4 3×4 4×4 の3パターンに絞りました。
問題数も200問に減らしました。

アプリとソースコード
アプリのダウンロードと、ソースコードは、Google code から

スクリーンショット
slide puzzle


Launcher のサンプル


SDKに入っている ホームアプリのサンプルコード を com.android.launcher を参考に改良してみたが
サンプルコードには4個のソース・ファイルがある。
launcher には42個のソース・ファイルがある。
サンプルコード を改良するよりも、launcher をそのままホームアプリにした方が早そう。

donut(v1.6) の com.android.launcher をそのまま移植した。
そのままコピーして、ユーザアプリとして、コンパイルを通るようにしたもの。
ユーザアプリからアクセスできないシステム・プログラム・ファイルは、
launcher と同じようにコピーしてコンパイルを通るようにした。

ソースコードは、Google code から

スクリーンショット
壁紙の変更やウィジェットの配置ができる
launcher