主にandroidとかのメモ

SmartWatch用アプリ「Gtalk Notifier Pro」公開

Google Play(旧androidマーケット)で、Sony「SmartWatch MN2」用アプリ公開しました。
Gtalk Notifier の有料版です。

前回のGtalk Notifier公開の記事はこちら
https://init0.net/wp/archives/373

・機能(無料版との違い)
Gtalkメッセージ受信時に、送信者IDとメッセージ内容が表示されます。

・値段
100JPY

・ダウンロード(Android Market)
https://market.android.com/details?id=net.init0.android.liveware.extension.gtalknotifierpro
※SmartWatchが無いと動作しないので注意!

・色々と
前回同様、@8796n先生に読み出すURI(~/contacts/[thread_id])教えていただき何とか完成。

final Cursor result_contact =
  this.getContentResolver().query(Uri.parse(
  "content://com.google.android.providers.talk/contacts/"
  +result.getString(result.getColumnIndexOrThrow("thread_id")))
  , null, null, null, null);

カラム情報を出して見ると25カラムありました。
last_unread_message
avatars_data
contact_id
cap
subscriptionType
type
shortcut
mode
username
_id
chats_contact_id
client_type
rejected
subscriptionStatus
contactList
jid_resource
status
nickname
last_message_date
groupchat
provider
qc
account
unsent_composed_message
avatars_hash

中身は全て追えてないですが、今回必要な情報は下記でした。
last_unread_message にメッセージ文面
username に送信者ID(xxx@gmail.com)

前回引っ掛けてた~messages/では
usernameはあったけど入っておらず(null)
bodyはメッセージ文面入っているものの、内容が重複する場合がある
であまり使えませんでした。

たとえば1通目「おはよう」2通目「ございます」と受信すると、
1通目のbody「おはよう」2通目のbody「おはよう[改行]ございます」と入る

同じパターンで受信時に今回の~contacts/で読み出すと、
1通目のlast_unread_message「おはよう」2通目のlast_unread_message「ございます」と入るので、コレがそのまま使えました。

コメント (2)
  1. たろサ より:

     聞ける人がいないので教えてください。Androidアプリから自作のSmartWatch Extensionを起動するには、どうしたらいいのでしょうか?
     LiveWare宛にintentを出すか、自作ExtensionのServiceが起動するようなintentを出せばいいのだろうと思うのですが、intentの書き方が分からなくて悩んでいます。
     何かご存知でしたら教えてください。
     よろしくお願いします。

  2. ta9mar より:

    忙しく確認が遅くなりました。
    考えてみましたが、方法思いつきませんでした。
    お力になれずすみません><