過去にソニエリガラケー使ってて、アンドロイドに機種変したら「バッテリーの充電が完了しました」おねいさんがいなくなってて泣きそうなヤツ集まれ~♪
バッテリーの充電具合を監視するアプリで、なんとかしようぜ
(なぜかGPSまとめサイト内にありますが、GPSロガーとは一切関係ありません。あらかじめご了承ください)

別にソニエリのXperia専用ってことはなく、大抵のアンドロイド機で動くと思う。動作確認はIS01(1.6)と、Nexus One(2.3.6)にて軽く実施(厳密な検証がめんどくさい。エミュでtelnetして、バッテリーステータスを変更しつつやるという手もあるにはあるが、、)。


ここは・・・

どこなの・・・

もぎさあああああああああああああああっん


ところで、

スマホなんだから、「充電完了音の指定」ってできるんじゃないの?当方はIS01、(会社の)Nexus ONEぐらいしか知らんから、ようわからんけど。rootが必要なのかな。
 → IS01だと、 設定 > 音 > 充電完了 ってあって、ここにチェックすると、充電完了時に「ぴよっ」って鳴る。この音ファイルを差し替えればいいんだろうな。


仕様

  • Intent.ACTION_BATTERY_CHANGED を監視して、
  • 前回のBATTERY_STATUSを記憶し、今回(FULL)と異なった場合(CHARGING→FULLを想定) かつ
  • BATTERY_STATUSがFULLになったとき かつ
  • level(バッテリー残量) = scale(バッテリー最大値。通常は、100固定)
のときに、おねいさん♪

あんま条件をゆるくすると、鳴りまくったりする(苦笑
条件は見直しの余地あり

参考


バグ

  • プリセットじゃない音ファイルで複数回再生を指定すると、再生完了前に先頭から再生される

  • スリープ解除をチェックしてるのに、スリープ解除されない
    • 恐らく、↓と同梱

  • 電池の状態が表示されないときがある。
    • 1)電源on常駐後しばらくの間。
    • 2)タスクキラーで常駐kill後(pid=0)。
      • v0.4.2 - 暫定対処入れ込み
    • 3)常駐中ブラウザなど大きなアプリ使用後(pidが変わる)。
      • たぶん、裏にまわったアプリが勝手に再起動してると思われる。回避方法もあったと思う。
    • ...これらのとき常駐終了すると、「予期せず停止」となる。
      • v0.4.2 - 暫定対処入れ込み

Nexus ONEで常駐後ホーム画面(要は、アプリをトップじゃなくて、裏側におく)でしばらく放置してたら、"no longer want"とかいって、OSから強制終了させられてた。このあと、OSから再起動要求も来るんだけど、どうもここでなにかがry

たぶん、AlarmManagerってのを使って、定期的にアプリに喝入れれば、OSから強制終了食らわない?のかも。

↑↑
どうも、通知を表示しとくと、killされにくい、って説も・・

↑↑↑
通知を表示、じゃなくて、startForeground()を使えって話だった^^; これ、2.0以降なんだよな(滝汗。1.6でも使う方法はあるにはある。が、、


やりましょう(概ね優先順)

  • startForeground()
    • これ、いい加減対応したほうがいいわ
  • 繰り返し再生と1回再生の選択
    • 無限再生時に、OKダイアログ表示してOKでストップ
  • 横長にしたとき、ボタンの文字がちょいと潰れる
  • 起動がちらっと遅くなったような・・
  • メモリ使用量効率化
  • 10%ごとに設定
  • 多彩な音声
    • v0.4.1 - 任意の音ファイル選択ダイアログ
    • v0.3.0 - ゆっくり、ホラー追加。プリセット3パターン。
  • マーケット登録(やれない)
  • 国際化(やらない)
  • このページが肥大化してきた


やりました(改版履歴)

  • 2011/10/27(木) BCan v0.1.0.apk なぜか緊急UP/デバッグ署名のため、1年間限定アプリ。
  • 2011/10/28(金) BCan v0.2.0.apk ロジック修正/署名を10000日有効に。
  • 2011/10/31(月) BCan v0.3.0.apk ロジック修正/音声:ゆっくり、ホラー追加
  • 2011/11/1(火) BCan v0.3.1.apk メイン画面へバッテリー情報表示/リソースwavをmp3変換し、ファイルサイズダイエット。
  • 2011/11/2(水) BCan v0.4.0.apk 充電完了時にスリープ解除/メモリ使用量削減。一応コードは上品に変更したが、メモリ使用量はあんま変わらず。
  • 2011/11/7(月) BCan v0.4.1.apk バグ修正とか機能追加とか
    • 電池状態更新
    • 常駐終了時の「予期せず停止」暫定対処
    • 充電完了音選択ダイアログ(というか、着信音設定ダイアログを出す)
    • これ、マイナーバージョンageたほうがよかったな・・
  • 2011/11/8(火) BCan v0.4.2.apk バグ修正とか機能追加とか
    • 電池状態更新
    • 常駐終了時の「予期せず停止」暫定対処 その2(v0.4.1の暫定対処は意味なかったw)
    • 再生回数機能追加。無限回再生はフェイク
  • 2011/11/11(金) BCan v0.4.3.apk 秘密バグ修正
  • 2011/11/18(金) BCan v0.5.0.apk 常駐時に通知表示オプション追加



試験表(鋭意作成中)

番号 概要 手順 確認 補足
超正常系 常駐開始して充電する 充電完了時に鳴ること -
- 正常系 充電完了後に充電ケーブルを抜く ケーブル抜き時に「完了」しないこと F-12Cで発生。
v0.5.0で治ったはず
正常系 常駐開始して放電し、バッテリー残量10%以下へ 10%以下のとき、バッテリーロー警告が鳴ること -
- オプション 端末起動時に常駐するをチェックして再起動 再起動後に常駐していること -
- オプション 常駐時に通知を表示するをチェックして常駐開始 常駐開始時に通知が表示されること -
- オプション 常駐時に通知を表示するをチェックして常駐開始し、常駐終了 常駐終了時に通知が消えること -
- オプション 充電完了時にスリープ解除するをチェックして常駐開始、充電、スリープ 充電完了時にスリープ解除し、鳴ること -


動作確認機種(A-Z)

※特に断りがない限りは、apkは最新バージョンで確認
※※かといって、最新版が最安定版とは限らない
※検証は、そこまで厳密ではない

  • 機種名(Android OSバージョン) - 確認日 - コメント
  • F-12C(2.3.4) - 充電完了後の充電ケーブル抜き差し操作時に不安あり
  • Galaxy Nexus(4.0.1) - 2012/01/16確認
  • Galaxy Note(2.3.6) - 確認中なう
  • Galaxy S II(2.3.4、UKモデル) - 2012/01/16 確認
  • IS01(1.6)
  • Nexus One(2.3.4/2.3.6)
  • SO-01B(1.6/2.1) - 2012/10/21確認
  • Xperia Ray(2.3.4)
  • Vi10 精鋭(4.0.3)
  • Vi40 双核(4.0.3)

動作(少し)確認機種(A-Z)

で検証してきた。100%充電完了を待つのがめんどいので、WebからDL&インストール起動デバッグ実行ぐらい。

富士通のやつ2つで、ステータス表示がちらっとおかしくなってた。タブレットでも予想以上にうまいこと表示されてた。

  • F-03D(2.3.5) - health good
  • F-05D(2.3.5) - health - 知らんがな[0]
  • F-07D(2.3.5) - health good
  • L-01D(2.3.5)
  • N-01D(2.3.5)
  • N-04D(2.3.6)
  • x P-01D(2.3.4) - アプリインストールにSD必須です><って言わてインストール出来なかった
  • P-02D(2.3.5)
  • SC-03D(2.3.6)
  • SC-04D(4.0.2)
  • SH-01D(2.3.5)
  • SH-02D(2.3.5)
  • SO-01D(2.3.4)
  • SO-02D(2.3.7)
  • T-01D(2.3.5)

タブレット
  • F-01D(3.2) - health - 知らんがな[0]
  • SC-01D(3.2)
  • SC-02D(3.2)


FAQ

Q. インストールはどうやるんですか?
A.
Q. インストロールしても、鳴りません
A. アプリを起動して、「常駐開始」して、充電してください。なお、常駐開始したにもかかわらず、常駐が終了してしまうバグがあります。あらかじめご了承ください。なので、9X%から常駐開始して、しばし、@(´・_・`)@ で待ってみてください。
Q. 充電完了しても鳴りません
A. ステータス表示で100%になっても充電完了ではなく、「FULL」ってのが飛んできたら、完了です。それまでしばしお待ちください。10分以上かかったりします。
Q. 充電完了しても鳴りません
A. 設定 > 音 > メディア音量 を確認ください。メディア音量の設定に準じてます。
Q. 充電完了しても鳴りません
A. マナーモードだと鳴らないと思われ → マナーモードは、着信音の設定なので、メディア音は関係ないかもww
Q. 充電完了しても鳴りません
A. バグ・・・かな
Q. 充電完了を待つのがめんどい
A.
Q. プリセット以外で、手持ちのmp3とかを指定したい
A. 別途、Rings Extended(Android Market) をインストールしてちょ
Q. 音ファイルください
A. natural-born-minority.blogspot.com/2010/08/sonyvaio.html
Q. 野良アプリ怖い
A.


ここでやれ

  • ども。 -- p-tom (2011-11-01 07:34:20)
  • あれ?これ、複数行入らないの?ん~、0.3.0、 -- p-tom (2011-11-01 07:38:07)
  • 0.3.0、かなり太った?(笑)電池も食うようになった気が... -- p-tom (2011-11-01 07:47:15)
  • rayは充電完了は設定を開かないと見れないし音もない。なので通知領域に表示してもらうとそれなりに需要はあるかと。 -- p-tom (2011-11-01 07:48:28)
  • スリープ解除して、再スリープ移行はしないので、あしからず。 -- 名無しさん (2011-11-02 20:06:44)
  • bug報告。電池の状態が表示されないときがある。1)電源on常駐後しばらくの間。2)タスクキラーで常駐kill後(pid=0)。3)常駐中ブラウザなど大きなアプリ使用後(pidが変わる)。...これらのとき常駐終了すると、「予期せず停止」となる。3)はAPIの仕様?機種依存? -- 名無しさん (2011-11-06 12:31:48)
  • 要望。多音化はサウンドピッカー呼び出してくれたら∞。繰り返し再生と1回再生の選択。充電完了と再生(起動)のLOG表示があるとdebugしやすいかな?...検証bug出しにも時間かかりますよね、このアプリ。vsのふり方を見て要望を出してみました(笑)。 -- 名無しさん (2011-11-06 12:35:11)
  • サウンドピッカー、イメージピッカー、俗称なんですかね。ググッたらファイルピッカーてのが見つかりました。逆引きにもないし、1.6にはないのかな... -- 名無しさん (2011-11-07 13:25:27)
  • ちょっといじりすぎたかな・・ デバッグよろ -- v0.4.1 (2011-11-07 22:42:21)
  • バージョンアップ頻繁すぎワロタww -- v0.4.2 (2011-11-08 21:29:04)
  • 検証追い付きません笑。サウンドピッカー検証済み@041、usb接続時はSD音がデフォルトアラームになるのはたぶんピッカー仕様でしょうね。/rayアプデ2.3.4 -- 名無しさん (2011-11-08 23:45:30)
  • 042 2)対処検証済み 3)pidが変わったときnull 0 false表示、常駐終了でstatus表示が 消えるが、常駐開始すると常駐終了前と同じpid で常駐。 -- 名無しさん (2011-11-09 18:22:29)
  • Rayでは鳴らないの? -- 名無しさん (2011-11-14 23:59:48)
  • 鳴るはず -- 名無しさん (2011-11-15 20:05:16)
  • rayで鳴ります。ただし3)のバグ?androidの仕様くさいんですが回避できてない。あと、ミュージックなど長い音を設定すると短い時間でまた最初から繰り返す。おねいさんの声を聞くぶんにはQAにある通り完了間際に常駐してください。なお、100%になってから充電完了まで通常でも10分程度かかるようです。 -- 名無しさん (2011-11-15 20:59:58)
  • Rayで鳴らないか聞いた者です。100%で暫くたってから鳴りました。ただし、おねいさんの声でも繰り返しに鳴りました。あと、LowLevelもおねいさん欲しいです。 -- 名無しさん (2011-11-16 09:21:04)
  • 名無し作者にかわって詳しい解説サンクス。これならry | 今日通知のON/OFFは実装したけど、それだけじゃだめっぽい | 長い.mp3はNexus Oneでは再現してない(一応心当たりはある) | Lowは、1 -- 名無しさん (2011-11-16 19:37:43)
  • Lowは、10%以下で・・・おっと誰かきたようだ -- (続き) (2011-11-16 19:39:23)
  • こないだlowでも聞いた!条件は覚えてない。 -- 名無しさん (2011-11-17 17:18:03)
  • 043でバグ3)、直ったっぽい。RAMを空けようと思って常駐系を整理したので、もう一度余裕のない状況を作って確認します。ところで「通知」ってウィジェットのこと? -- 名無しさん (2011-11-18 08:19:17)
  • 通知は通知っす。通知対応の0.5あげてみた -- 名無しさん (2011-11-19 00:33:22)
  • 043でバグ3)修正確認@ray。ただし1回再生でも永久に再生を繰り返します。これ、バッテリーフルが定期的に上がってくる感じですね。通知は見たことないのでたまたま見つけたウィジェットのことかと思っちゃいました。ウィジェットはクリックすると数字がカウントアップするだけ。 -- 名無しさん (2011-11-20 08:36:20)
  • 050、通知と1回鳴動確認。マナーモードでも鳴りますよ、メディア音量。戦闘力とウィジェットの数字…同じモノを拾ってて意味不ですがここまでくれば十分使えます。rayスレ告知してきます。 -- 名無しさん (2011-11-20 09:49:50)
  • 以上レポっす -- 名無しさん (2012-02-26 15:49:41)
  • 050、Rayで10%を切ると、おねいさんがしゃべりっぱなしです。リマインダーのように何分かおきだと嬉しいです。 -- 名無しさん (2012-05-19 10:55:16)
  • そいつは失礼しました。再生を止めるときは、音ファイルの再生時間ってのを取得して、タイマーを再生時間後に指定して、タイマーで止めるってわけわからんことやってるんだけど、いかにもバグが発生しそうな処理だはww ・・・orz   再生回数変更してもだめすかねー -- 名無しさん (2012-05-25 23:43:59)
  • 2つ上のコメントした者です。誤解を招く表現で申し訳ありません。再生が止まってから数秒〜数十秒間隔で再生します。何度もイベントを拾っているの感じです。 -- 名無しさん (2012-06-09 00:34:19)
  • らちあかないんで、 -- 久々の作者@デスマから復帰(まだ終わってないけど) (2012-10-21 19:55:23)
  • SO-01B(1.6)を購入。10%以下のとき、想定通りの動きをしているようにみえる。バッテリーレベル(10,9,8...)の切り替わりのときしか鳴ってないような? -- 久々の作者@デスマから復帰(まだ終わってないけど) (2012-10-21 19:57:47)
  • SO-01B、1.6から2.1にアップしてみました。10%以下の検証をやってますが、想定どおりかと。再生回数を∞回(無限といいつつ4回再生)にして4回鳴る?って話じゃあないんだよなあ・・・ SO-01Bではまだ鳴りっぱなしを確認できてません。とりあえず、明日あたり2.3へアップしてみます。 -- 作者 (2012-12-10 14:16:55)
  • 2.3.3へアップしました。10%以下は(たぶん)再現していません。が、肝心の100%完了 かつ ”完了音選択” がバグってますねこれ・・。なんか永久に鳴ってますが・・(滝汗) -- 作者 (2012-12-11 09:43:30)
名前:
コメント:




タグ:

+ タグ編集
  • タグ:

このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー利用規約 が適用されます。

最終更新:2012年12月11日 09:43