2011年12月24日土曜日

操作についての細かなTips[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の8日目として書いています。
……が、12月24日分であるこの記事を実際には1月3日に書いたことはヒ・ミ・ツ。



twiccaの基本的な使い方については「Twicca の使い方」を見ていただくのが一番ですが、その記事に書かれていないor後にtwiccaに追加された機能については記述が漏れています。

今のところ、気付いているのは以下です。
  • タイトルバー押下でタイムラインのスクロールが一番上まで戻る
  • ユーザ情報画面
    ・左上のアイコン押下でアイコン画像拡大表示
    ・「Web」押下でそのURLを開く

↓アイコンを拡大表示した例

2011年12月23日金曜日

twiccaのカラーラベル設定をバックアップする(要root)[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の7日目として書いています。



twiccaの便利機能のカラーラベル。
ですが、端末を買い換えたりしたときにカラーラベル設定を引き継げるようには今のところなっていません。
そこで、端末のroot化が必要ではありますが、設定をバックアップできる方法をご紹介。

sdb shellなりroot対応のファイルエクスプローラアプリで次のファイルをバックアップして、新しい端末に移し替えれば良いのです。

/data/data/jp.r246.twicca/shared_prefs/twicca.xml

2011年12月22日木曜日

ふぁぼチェックのススメ[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の6日目として書いています。



Twitter廃人に片足突っ込んでる皆さんなら、自分のツイートがどれくらいふぁぼられているかどうか気になる筈です。
そこで便利なtwiccaプラグインを紹介。

favstar.fm プラグイン for twicca:https://market.android.com/details?id=jp.r246.twiccaplugins.favstarfm
ふぁぼったープラグイン for twicca:https://market.android.com/details?id=jp.r246.twiccaplugins.favotter
Twistar プラグイン for twicca:https://market.android.com/details?id=jp.mstssk.twiccaplugins.twistar

favster.fm、ふぁぼったー、TwistarのそれぞれのサービスのWebページに簡単に移動できます。
twiccaのメニューからは、自分の各サービスのページへ。
ユーザ情報画面からは、そのユーザーの各サービスのページへ。

それぞれのプラグインの設定画面はこんな感じ↓


Xperia rayのテザリング制限解除[要rooted]

※ 以下は保証外の操作について記述しています。真似や参考にしてrayちゃんが「綺麗な顔してるだろ…死んでるんだぜ…それ」な状態になるかもしれないのでオススメしません。



docomoのXperiaシリーズ(他の機種でも?)だと、特定のAPNでないとテザリングが出来ないようになっている。
普通のdocomo SIMでないSIM(Xiとかb-mobileとかイオンSIMとか?)だとつらい。

対象外のAPNでテザリングをONにしても以下のように「Network error occurred」とエラーメッセージが表示されてすぐにOFFになる。

/data/data/com.android.providers.settings/databases/settings.db を覗くと以下のようなテザリングの制限設定がされている。
(左端の数値は勝手に振られるただの連番なので意味はない)
sqlite> select * from secure where name like 'tether%';
29|tether_dun_apn|docomo tethering,dcmtrg.ne.jp,,,,,,,,,440,10,0,*
30|tether_dun_required|1

参考にした次のページによれば、これのtether_dun_requiredの値を0にしてやれば制限が外れる。
俺達のメガネ Xperia arc(SO-01C) 2.3.4アップデートでの Network error occurred 対策
http://chaosore.blog38.fc2.com/blog-entry-317.html

参考ページではSQLite Editerを使っているが余計なアプリをあまりインストールしたくないので、SQLを直接叩くことにした。
必要なsqlite3コマンドは、本来はAndroid SDKのエミュレータ上でしか使えない。ここでは、インストール済みだったTitanium Backupが自身の機能のために持っているsqlite3コマンドを使った。
以下、一通りの操作。
user@localhost:~$ adb shell
$ su
# /data/data/com.keramidas.TitaniumBackup/files/sqlite3 /data/data/com.android.providers.settings/databases/settings.db
SQLite version 3.7.6.3-Titanium
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select * from secure where name = 'tether_dun_required';
30|tether_dun_required|1
sqlite> update secure set value = 0 where name = 'tether_dun_required';
sqlite> select * from secure where name = 'tether_dun_required';
30|tether_dun_required|0
sqlite> .exit
# exit
$ exit
※ 2回のselectは値の確認のためで、別に必要な操作ではない。

設定を書き換えたらrayを再起動。
テザリングをONにしても「Network error occurred」が出なくなってる筈。

※ パケット通信料についてはどうなるか知らん。

2011年12月21日水曜日

下書きプラグインを使う[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の5日目として書いています。


今回は豊富なtwiccaのプラグインの1つ「下書きプラグイン」を紹介します。
拙作を紹介するあたりネタ切れ感があるのはご愛嬌。

マーケット:https://market.android.com/details?id=jp.mstssk.twiccaplugins.draft

プラグインをインストールすると、twiccaのツイート画面のプラグイン一覧に「保存済みの下書きを一覧」「下書きを保存」の3つのメニューが追加されます。
「下書きをクイック保存」はオプション機能で、後述の設定画面で有効にしてから表示されるようになります。


「保存済みの下書きを一覧」を選択すると、保存済みの下書きを選択して読み込みます。
「下書きを保存」を選択すると、新規保存するか保存済みの下書きに上書き保存します。
「下書きをクイック保存」を選択すると、一覧画面を表示せずに新規保存します。

設定画面では次の項目が設定できます。
  • 「クイック保存」機能の有効/無効
  • 確認ダイアログの表示
    • 「上書き保存」時
    • 「削除」時
    • 「読み込み」時
    • 「編集中のみ」(読み込み時、既に入力中のツイートがある場合のみ確認ダイアログを表示する)

2011年12月20日火曜日

webでもカラーラベルを使う[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の4日目として書いています。



twiccaといえばカラーラベル機能!
そのカラーラベル機能をwebのTwitterでも使える方法があります。

それが拙作のTwitterColorLabel2 http://userscripts.org/scripts/show/89319


FirefoxとGoogleChromeで動きます。他のuserscript対応ブラウザでもいけるかもしれませんが未検証。

蛇足:
名前に2が付いてる理由は、むかーしのTwitterのUI用のTwitterColorLabelがあるから。
そういやまたTwitterのUI変わるみたいだけど、うちのアカウントにはまだ反映されてない…

2011年12月19日月曜日

twiccaサポーターズになる[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の3日目として書いています。



振り込めない詐欺」という言葉があります。
無償で公開されているが、それがとても素晴らしく是非対価を払いたいと思えるような場合を指す言葉です。
twiccaはまさにその言葉に相応しいと言えるでしょう。

でも大丈夫!
twiccaはなんと振り込めるんです!

twiccaのメニューで「twiccaサポーターズ」を見てみましょう。
サポーターになる期間を選択しサポーターチケットを購入して、サポーターになることができます。

ちなみに、サポーター期間中は実験中機能を有効にすることが出来ます。
実験中機能なので気付くと一般機能に昇格してたりしますが、今のところ(ver 0.9.20a)では以下の機能が特典で使えます。

  • ステータスバーのtwiccaのアイコンから起動する機能の選択
    • タイムラインを開く
    • ツイートする
    • 写真を撮影してツイートする
  • twitpicの動画プレビュー機能
  • ツイートの改行表示
  • マルチアカウント

2011年12月18日日曜日

別のアプリでtwiccaのプラグインを使う[ひとりtwicca Advent Calendar]

この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の2日目として書いています。



twiccaを既にお使いの方なら、twiccaのプラグイン機能も使っていることでしょう。
Androidマーケットでtwiccaで検索すると、twicca本体だけでなく、多種多様なプラグインがサードパーティによって公開されているのがわかります。

実は、twiccaの他にもこのプラグイン達を使えるクライアントアプリがあるんです。

それは「メガネケエス」と「アカイトリ」です。
この2つのアプリは、どちらもTwitterクライアントとしては異色な部類に入りますが、TwitterのStreaming APIを使用しており、twiccaに出来ないリアルタイムのタイムライン受信が出来ます。

twiccaとStreaming APIに対応した上記アプリを組み合わせて使うことで、きっと廃人への道を進んでいけることになるでしょう。

2011年12月17日土曜日

twiccaをホーム画面にする[ひとりtwicca Advent Calendar]

twiccaエヴァンジェリストのmstssk aka あんどろいどりんごです。
この記事は、twicca廃人になるためのTipsを書き連ねていく「ひとりtwicca Advent Calendar」の1日目として書いています。
「もう12月17日なのに今更AdventCalendarかよ」というツッコミはさておき、なんとなく思いついたのでクリスマスまでつらつら続けてみたいと思います。

twiccaとは

言わずと知れたAndroid用のTwitterクライアントアプリです。
Androidマーケットのtwiccaページ
作者のあおやまさんは、高名なプログラマであるTim Bray氏のブログにドヤ顔を載せた数少ない人物として有名です。

twiccaの基本的な使い方は「Twicca の使い方」にとても詳しく書かれています。初心者の方はそちらに目を通されたほうがいいでしょう。
むしろここから先は読まなくてもいいでしょう。

twiccaをホーム画面にする

では、twicca廃人になるための第一歩、twiccaをホーム画面にしましょう。
Home Commanderをインストールし、スクリーンショットの様にホームキー1回押しでtwiccaが起動するように設定します。


通常のホーム画面は2回押しあたりに設定しておきましょう。

ちなみに、随分前ですがtwiccaをホーム画面にするだけのアプリ(ホーム画面のIntentを受け取ってtwiccaを起動する)を作って本当にtwicca以外なにも出来なくなったことがあります。

これでホームキーを押すとtwiccaが起動するようになりました。

これでも飽き足らない方は、ホームキー2回押しにtwiccaのツイート画面ショートカットを設定したりすると良いでしょう。

2011年12月9日金曜日

Androidアプリで使えるJSONライブラリ比較

これは、Android Advent Calendar 2011の12月9日エントリです。



「Androidはオワコン」なんて話が聞こえてくる昨今、いかがお過ごしでしょうか?
HT-03A以来のAndroidユーザーとしては寂しい悲しい限りです。発売後のこんな頃や、こんな頃が懐かしいですね。

ですけど、街中を歩くと、多くの人がAndoid機を持っているのがわかります。
REGZA Phoneとかよく目に付きますね。デカイし。

それに、Andoid機を買って初めてプログラムしてアプリを作ってみた学生さんとか、Andoid関係のお仕事の話とか結構聞こえてきます。
今後もそういうのは続いていくんじゃないでしょうか。

そして、趣味か仕事かを問わず、Webアクセスしたりするアプリの場合、APIを叩いてJSON形式のデータをパースしなきゃいけないことが多々あると思います。
そこで、JSONのライブラリをいくつか簡単に比較してみました。
下3つは使い方がよくわからんかったので、参考に並べただけです(汗
言い換えれば、いきなり持ってきても取っつきやすいものだけ紹介。



パース・エンコードの処理の計測には、自分のタイムラインのjsonを1M分繋げたファイルを使いました。/res/raw/からファイルをInputStreamで取得して使用。
計測に使った機種はXperia Ray

JSONIC

国内ではオーソドックスなんじゃないかと勝手に思っているライブラリです。
ただ、上表の通り速度は見劣りします。
比較的少ないコード量でかゆい所に手が届くようになってますけど、proguardでの難読化に失敗するので、それが解決出来ないとAndroidアプリで使うのはつらい。
使用例:

// パース。第2引数でクラスを指定しない場合、戻りはObjectになるが、中身はArrayListかLinkedHashMap。
InputStream is = ほげ;
Hoge[] hoges = JSON.decode(is, Hoge[].class);

// シリアライズ
String json = JSON.encode(hoges);


google-gson

この記事書こうと思って調べるまで存在を知りませんでした。正直すまんかった。
パース速度は爆速。シリアライズは最遅
なんなんだ。いったいなんなんだお前。
シリアライズ時に、型指定を省略すると更にアホほど遅くなります。
POJOでないクラスのフィールドに対応させるには、JsonSerializerとJsonDeserializerインターフェースを実装します。
proguardを使う場合、JSONをマッピングするPOJOクラスを難読化から除外する設定が必要です。
使用例:

// パース。第2引数で必ず型を指定する必要がある。Mapとか指定してもとりあえずは動く。JSONIC同様に、ArrayListかLinkedHashMapのインスタンスが返る。
InputStream is = ほげ;
BufferedReader reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
Hoge[] hoges = new Gson().fromJson(reader, Hoge[].class);

// シリアライズ。第2引数の型指定は省略できるが、そうすると激遅。
String json = new Gson().toJson(hoges, Hoge[].class);


JsonPullParser

ファイルサイズが超軽量!
しかし、特色は軽量であることより、指定したPOJOクラスのパース/シリアライズ処理クラスをビルド時に自動生成する事だろう。それ故に、パースとシリアライズ共に安定して高速な処理を実現しています。
逐次処理も出来るし パースもシリアライズも早い。凄いぞ強いぞ僕らのJPP
ただ、パーサークラスを生成させるPOJOクラスとそのフィールドにアノテーションをいちいち付けなきゃいけないのはちと面倒。
POJOでないクラスのフィールドに対応させるには、TokenConverterを実装します。参考として以前に試しに書いてみたDateConverterをどうぞ。ええ、SimpleDateFormat使っちゃってるのでスレッドセーフじゃありません(最近知りました)。
使用例:

// パース。Hogeクラスの専用パーサーとしてビルド時に自動生成されたHogeGenクラスを使用
InputStream is = ほげ;
List<Hoge> hoges = HogeGen.getList(is);

// シリアライズ。直接文字列を返す手段はサポートされておらず、Writerクラスを経由する。
StringWriter sw = new StringWriter();
HogeGen.encodeListNullToNull(sw, hoges);
String json = sw.toString();


半分くらい深夜のテンションで書き殴りましたが、いかがでしょうか。
多分コレをまっさきに読むであろうAndroidersよりも、いつかググってたまたまやってくる人向けの内容になりました。

Androidを好きになってくれるエンジニアが増えてくれることを願って。


私信:読んだ人が失禁して泣いてパンツを洗いながらJPPの採用を決めるような魔導書レベルの記事は書けませんよ流石に

2011年6月21日火曜日

Commit to github with Egit(Eclipse plugin) on Ubuntu10.10

備忘録

環境
・Ubuntu 10.10
・Eclipse 3.5
・Egit 0.4.9

gitはインストール済み。
Eclipseは日本語化してません。

■ gitの設定(必須ではない)
$ git config --global user.name "yourname"
$ git config --global user.email "your.email@address.com"
この設定は、Eclipseの起動時に(Egitがインストール済みなら)読み込まれて、Egit上でコミットする場合も使用される。
Eclipse起動前に変更しないと、反映されない気がする(多分)。

■ ssh-keygenコマンドで公開鍵作成
パスフレーズとか聞かれる
id_rsaとid_rsa.pubの2つのファイルが生成されるので、~/.ssh/に移動しておく。
id_rsa.pubの中身をコピペして、githubのAccount Settings > SSH Public Keysで追加しておく。
titleは何でもいいらしいので、適当に。

■ Egit(Eclipseのgitクライアントプラグイン)のインストール
update-site → http://www.jgit.org/update-site/

■ Eclipse上でgitのリポジトリ生成
パッケージエクスプローラで、対象のプロジェクトのコンテキストメニュー > Team > Share Project
ダイアログでGitを選択(多分EclipseにデフォルトでCVSが入ってるので、CVSかgitかどちらを使うか必ず聞かれる気がする)
次のダイアログでリストから対象のプロジェクトを選択 > リスト下に選択したものが表示されるので「Create」ボタン押下 > finishボタン押下

■ プロジェクトのファイルをstage
リポジトリを生成したプロジェクト下の、コミットしたいファイルのコンテキストメニュー > Team > Add to Version Control

■ ファイルのローカルコミット
コンテキストメニュー > Team > Commit...

■ リモートリポジトリの生成
githubでリポジトリを生成しておく、リポジトリのURIが表示された事を確認する。
そのURIはリモートリポジトリへのコミット時に使用する。↓

■ リモートリポジトリ(github)へのコミット
プロジェクトのコンテキストメニュー > Team > Push to...
URIにリモートリポジトリのURIを入力。
ただし、Protocolはgit+sshに変える。
Userは「git」
Passwordは空のままで良い。
以下のスクリーンショットを参考に。
Nextボタン押下
公開鍵のfingerprintとか、~/.ssh/known_hostsファイルを作っていか、とか確認される
パスフレーズを求められるので入力。
次のダイアログでコミット(Push)先の設定をして、Next/Finish

次回以降も、同じ手順で。

□ 問題
リポジトリのURIが保持されてくれないので、仕方なくコミットの度にgithubのリポジトリ情報ページからコピペしてるけど、他の人はどうなの?

□ パッケージエクスプローラのフィルタ設定
パッケージエクスプローラは初期設定で、いくつかのファイルを表示しない設定になっている。(ドットファイルとか)
それらを表示しstageしたいなら、パッケージエクスプローラペインの右上の▽からFiltersを選択し、ダイアログでフィルタ設定を変更する。


□ 参考
http://womo.nconc.net/2010/03/04/github
http://blog.katsuma.tv/2009/02/first_github.html
http://d.hatena.ne.jp/keita_yamaguchi/20080409/1207752188

2011年3月26日土曜日

Run VMware disk image on VirtualBox 4.0.4(wasbook's appendix)

先日こんな本を買いました。

「体系的に学ぶ 安全なWebアプリケーションの作り方 脆弱性が生まれる原理と対策の実践 徳丸浩(著)」
http://www.amazon.co.jp/gp/product/4797361190

付録として、脆弱性のサンプル環境のvmwareの仮想マシンイメージが付いてきます。
Linux版のVMwareがあるので、ちょっくらインストールすれば済むんですけど、VirtualBoxを3から4に上げてなかった事を思い出し、しかもVirtualBoxでVMware用のディスクイメージが使えると聞いて、いざ実践しました。

以下、簡単な覚書。

wasbook付属のvmイメージをVirtualBox4.0.4で起動する

環境
  • Ubuntu 10.04
  • Thinkpad X201s
  • VirtualBox 4.0.4

仮想マシン作成 ざっくり手順

  1. 新規仮想マシンの作成
  2. ターゲットを[Linux]/[Ubuntu]に
  3. 次へ次へ…
  4. [仮想ハードディスクファイルの選択] > [既存のハードディスクを使用]
    wasbook.vmdkを選択(事前にwasbook.zipを解凍しておいて適当な所に置いておく)
  5. 次へ → 完了


仮想マシンの起動 前準備

  • 仮想マシンの設定の システム > プロセッサ > PAE/NXを有効化 にチェックする。
    (これをしないと起動時にエラーで止まる)
  • [ネットワーク]タブ アダプタ1 で [割り当て]を「ブリッジアダプタ」に変更


仮想マシン起動後 eth0がいない場合

  1. rootでログイン
  2. ifconfig → eth0がいない
  3. ifconfig -a → なぜかeth1がいたりする。(eth3だったりすることもある)
  4. vi /etc/network/interfaces → eth0 をeth1 に書き換える
  5. /etc/init.d/networking restart → ネットワークデーモン再起動
  6. ifconfig → eth1にIPアドレスが割り振られてる
  7. ホストマシンのwebブラウザでそのIPアドレスを見れば、付録のサンプルが出てくる

<追記>
eth0問題について、こんな対応策も
https://twitter.com/#!/andropenguin/status/79804762895286272

2011年2月7日月曜日

FindBugs with Android app developing

EclipseのFindBugsというプラグイン。
その便利さは言わずもがな。
Androidアプリ開発でも必要だろ、というわけで導入手順メモ。

環境:
・Thinkpad X201s
・Ubuntu 10.04 LTS Lucid Lynx
・Eclipse 3.5 Galileo
・Android SDK revision 8

インストール

update siteでFindBugsをeclipseにインストール
http://findbugs.cs.umd.edu/eclipse
参考(http://findbugs.sourceforge.net/downloads.html

文字化け

これだけで、あとはeclipseを再起動して使用可能になるが、FindBugsのメッセージが文字化けしてしまっている。
eclipseのインストールディレクトリ/plugins/edu.umd.cs.findbugs.plugin.eclipse_****/findbugs-plugin.jar の中にあるmessages_js.xmlがsjisになってしまっているから。

Ubuntuであれば、findbugs-plugin.jarを直接書庫マネージャで開き、中のmessages_js.xmlをUTF-8指定して改めて上書いて保存すれば、ちゃんと元のjarファイルにも反映してくれる。

Rクラスを除外

Android SDKによって自動生成されるリソースクラスにはキャメルケースじゃないものがあるので、FindBugsに引っかかってしまう。
以下の内容で設定xmlファイルを作成し、eclipseの設定からFindBugsのExclude filter filesにそのファイルを指定してやると、以降のビルド時にはR以下のクラスを除外してくれる。

<FindBugsFilter>
    <Match classregex="\w+(\.\w+)+\.R\.\w+" />
</FindBugsFilter>

ただし、どうも手元の環境だとビルド時にちゃんと除外してくれない場合があった。全体の設定で指定するか、プロジェクト個別の設定で除外するかによっても、ちょっと挙動が変わっている気がするがちゃんと原因を切り分けられていない… orz

2011年1月20日木曜日

Reset crashed Bluetooth configures in Ubuntu 10.04 lucid

<追記>
20111103
・ボタンの入力キーの取得値について改めて見てみたらやっぱり間違ってたのを修正。
・このエントリの前に http://civic.xrea.jp/2011/11/02/zeemote-bluetooth-mouse/ を見るのがオススメ。
 以下の記述でZeemoteについての入力値などはキーパッドモード時のもの。記事を書いた当時はモードがあることに気づいてませんでした。

とりあえずメモ:
一度、bluemenをインストールし使用した後、bluemenをアンインストールしても、標準のbluetoothツールが使用できなくなった問題。
動作しているが、ウィンドウ内の各ボタン/接続機器履歴がグレイアウトして何も操作できない。
/var/lib/bluetooth// ディレクトリ以下に設定が保存されているので、
/var/lib/bluetooth/ を /var/lib/bluetooth_backup/ として再起動したら、/var/lib/bluetooth/ 以下が再作成されて、初期状態でBluetoothツールが使用できるようになった。

-- 以下本文

最近、おもちゃを手に入れたので、Ubuntuでいろいろ使えないものかと弄ってたんですが、その時の覚書。
推敲してないので語尾とか滅茶苦茶。

環境:
・PC : Thinkpad X201s
・OS : Ubuntu 10.04 lucid

zeemoteをマウス替わりに出来ないものかと思い、さっそくbluetooth接続を試みたのですが、標準のbluetoothツールだとどうにもペアリング出来ませんでした。
zeemoteは種類不明なデバイスと扱われるものの、PCからちゃんと見えるのですが、ペアリング時にパスキーの確認が必須らしく、最後の最後でペアリングに失敗します。

そこで、別のbluetoothクライアントを使ってみようと思い、bluemenを標準リポジトリからインストール。

bluemenではパスキーの入力は無しでzeemoteとペアリング出来たので、単にクライアントの仕様の問題だとわかりました。
bluemenではそのままzeemoteを入力デバイスとして設定できる様で、zeemoteをキーボードとして接続してくれました。
その際には、以下のような入力が得られました。

(記憶だけを頼りに書いているので下記の内容は覚え違いがあるかもしれない)
スティック:カーソルキー上下左右
Aボタン:return
Bボタン:入力なし
Cボタン:escape
Dボタン:backspace

そこまで来たところで、もう一度標準のbluetoothツールで試そうとbluemenをアンインストール。
そしたら標準ツールのウィンドウ内の各ボタンなどがグレイアウトしていて使用できない。
(ウィンドウは一応立ち上がる)

bluetooth関連のパッケージをいろいろ再インストールしてみたりしたが、改善せず。
破損した設定ファイルが残留し続けているのではないかと思い、設定ファイルの場所を探す。

設定ファイルの場所 /var/lib/bluetooth//

上記ディレクトリを一旦移動して、再起動したら標準ツールが初期状態で動作した。

次は、改めてbluemenでzeemoteとペアリングして、以下を試そうと思う。

[ubuntu] Zeemote as a mouse ? - Ubuntu Forums
http://ubuntuforums.org/showthread.php?t=1201572