JDBな人生  専門的なことから日常的なことまで~ まぁ自由きままに書いていきます。
2015年03月 / 02月<< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 >>04月

アクセスランキング

[ジャンルランキング]
コンピュータ
364位
アクセスランキングを見る>>

[サブジャンルランキング]
プログラミング
46位
アクセスランキングを見る>>

BTなG-SHOCKに任意の通知を送ってみる

先日、某CASIOのG-SHOCKシリーズの腕時計を購入しました。ただのG-SHOCKではなく、Bluetoothでスマートフォンと連携できる製品です。(型番はGB-5600Bといいます)
近ごろはスマートウォッチというものが話題になっておりますが、(そしてSONYやLGの製品などは1, 2万円台の腕時計とコスト的に張り合えるものになってきていますが、)それらの製品を選ぶ積極的な理由がないということで、スマホに毛が生えたようなスマートウォッチではなく、どちらかというと腕時計に毛が生えたようなこの製品を選びました。充電を忘れると使い物にならない腕時計なんて嫌ですし…
※まあこの製品も広義にはスマートウォッチなのでしょうが細かい話は省略しましょう。

さて、この製品、電話やSMSの着信時には、振動や通知音で知らせてくれます。スマホの通知に気づかないこともありますし、マナーモードで少し離れているようなときでも通知してくれるので、なかなか便利です。通知時には時計の画面を見れば発信者もわかりますよ。

ですが、それだけなんですよ。専用アプリに含まれている他の通知機能では、Twitter等の一部のSNSや、IMAPで独自に登録したメールアカウントもチェックはしてくれるんですが、それが5分おきだったり10分おきだったりして、通知が遅れるんですね。SMSは着信と同時にリアルタイムで教えてくれるのに、Twitterはだいぶ間が空いて来るわけです。

そこで、自作のアプリから任意の通知を時計に送れないかということで、実験をしてみました。

方法①Bluetoothで腕時計とペアリングしてごにょごにょして通知を送る
→ペアリングでいろいろとコードを書かないといけないし通信部分の仕様も非公開。面倒すぎるので却下

方法②SMSが来たかのように振る舞って専用アプリをだまし、通知を送ってもらう
→普通に作っていればBroadcast Receiverで実装しているはずなので、アプリから勝手にSMS受信時と同じBroadcastを送れば反応してくれるはず…と試してみたらうまくいきました。

IMG_20150325_170837~01
SMSが来たことになっているので「S」と表示されていますが、そこはお気になさらず。

Intentの情報として「発信者番号」「本文」の情報が必要になります。この発信者番号の部分を適当な電話番号(普段使わない範囲の番号の方が都合が良いので060始まりとかで良いでしょう)にして、その番号と表示名を電話帳に登録しておくと、腕時計にもその表示名が表示されます。上の写真は「テスト」と登録した場合のものです。

あとは適当な方法で通知を取得して(AccessibilityServiceというので取得できます)、通知を流すのみです。
ということで、とりあえずGmail, LINE, Twitterの通知をリアルタイムで流すように作ってみました。

Gmail
IMG_20150325_223815.jpg

電話帳のデータ
Screenshot_2015-03-25-23-25-21.png

これを応用して、「通知させたいパッケージ名」「パッケージ名と電話番号の関連付け」「電話番号と表示名の関連付け(電話帳)」をGUIで設定できるようにすれば、好きな通知を流せるアプリができそうです。
時間があったら(というか今、いつもの開発環境ではなく臨時の環境というのもあるんですが)作ってみようと思います。

明日まではまだ寒いそうですね。
風邪と花粉症には気を付けましょう…
スポンサーサイト
   Android/iOS    TB(0)    CM(2)    EDIT    ページ↑

kill it dead と murder to death

先日、例によってある海外ドラマのスクリプトを確認していたのですが、そこであるセリフを見つけました。

The one thing that lead you here, imagination, you're killing it dead!
僕たちをここまで導いてくれたもの、想像力を、あんたはすっかり台無しにしようとしているんだ


さて、ここで問題が。ふつうdeadは形容詞で使いますから、you're killing it dead! だと、killが五文型をとっているように見えます。もしそうだとしたら、どう解釈すれば良いのでしょうか。kill O Cで、死んだ状態に殺す…のでしょうか? なんか変ですが、そういう強調の表現なんですかね。

辞書で確認してみると、killが五文型をとるという記述はなさそうです。ということはdeadは副詞かな?と調べてみると、ありました。英の口語で「まったく」「すっかり」という意味をとれるそうです。
そしてこのkillは、「台無しにする」「破壊する」「だめにする」という意味で使われているようです。ですから、合わせて、「まったく台無しにしてしまう」ということですね。

そういえば、別のドラマのスクリプトで、

I'm deadly serious.
僕は大真面目に言ってるんだ。

というセリフがありました。deadもdeadlyも副詞になれるというのは要注意です。

さて、もう一点。
先ほど「死んだ状態まで殺す?」という表現は変な感じがすると書きましたが、辞書でいくつかの項目を確認したところ、「murder - to death」という表現をすることができるそうです。こちらではmurderは殺人、deathは死を意味しますから、やっぱりなんか変です。

英和辞書の解説によると、killは「死んでしまう」という結果まで含むのに対し、murderは結果を含まずに行為だけを指すことができるため、to death(死ぬまで)という表現を加えて結果を表すことができるようです。

少し検索してみたところ、いくつかのニュース記事で"murder for 理由 to death"というように使われているのが確認できました。


ちょっと暗い記事になってしまいました…

似たような表現でも全然違う意味になるというのは要注意です。単語一つ一つのニュアンスが違うというのもあるのでしょうかね。
   English    TB(0)    CM(0)    EDIT    ページ↑

プロフィール

JDB Luigi

Author:JDB Luigi
どこにでもいるようなありふれた人間・・・という訳でもなく、かと言って怪しい宗教を信仰する変人という訳でも無い。

基本的に掲載しているコード等は煮ていただいても焼いていただいても結構ですが、利用は自己責任にてお願いいします。
また、バグ・アドバイス等もしあればよろしくお願いします。

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。