AlarmManagerのRTCでの動作に関しまして

352 views
Skip to first unread message

u-suke

unread,
Dec 4, 2012, 7:02:19 AM12/4/12
to android-g...@googlegroups.com
u-sukeです。
AlarmManager の挙動に関しまして質問をさせて頂きます。
AlarmManager.setRepeating の第一引数に AlarmManager.RTC を定義した場合の挙動なのですが、
Sleep中に周期実行で指定された時間を経過した段階では実行されず、次回Sleepからの復帰時に
実行されるという認識でいます。
しかし、実際にRTCでsetRepeatingにて、1時間毎に外部メモリに保存したtxtに追記していくという
サンプルアプリを作成し、インストールして起動後にホーム画面に戻り、電源短押しでディスプレイが
消えたのを確認し、充電等行わない状態で数時間放置して挙動を確認したところ、試した全てのデバイス
(5台程度、全て異なるメーカ)で、ログが出力されていたという結果になりました。
WakeLockの可能性もなさそうでしたし、起動時間が違うにも関わらずほぼ一時間毎に出力されている事から
他アプリ要因(RTC_WAKEUP)に引きづられての動作でも無いようです。
この動作では、RTC_WAKEUPとなんら変わらない物となり、一体なぜこのような事象となるかがわかりません。
ご存知の方がいらっしゃいましたらご教示頂きたく。

また余談ではありますが、2.x系ではsetInexactRepeatingに不具合があり、15分刻みの時間に寄ってしまうと
いう事象があると聞いています。
setRepeatingではそういった事象はないのでしょうか?
原因はわからないのですが、時折よっているような動きをしているように見えたので、こちらも合わせて
ご存知の方がいらっしゃいましたらと思います。

Wadecom Android Dept.

unread,
Dec 4, 2012, 8:12:09 PM12/4/12
to android-g...@googlegroups.com
u-suke 様

Wadecom株式会社 Android事業部の前澤と申します。

お役に立てるかはわかりませんが、

似たような投稿がありました。

私も詳しく調査したわけではないのですが、
単純にスリープになっていなかった、という可能性が高いかと思われます。

(ディスプレイを消灯させても)スリープにさせないアプリ等がバックで動いていた、あるいは、
(少し飛躍しますが)そもそも何らかのサービス等が動いているときはディスプレイは消灯できてもスリープにならないのかもしれません。

以上、よろしくお願いします。


2012年12月4日火曜日 21時02分19秒 UTC+9 u-suke:

Yusuke Hirano

unread,
Dec 4, 2012, 9:18:28 PM12/4/12
to 日本Androidの会

前澤様

情報ありがとうございます。
拝見しましたが、流れを見る限り「Sleepに入る」とは何なのか、という所を確認した方がよさそうですね。
少なくとも1時間単位では動作をしていることから鑑みるに、Sleepになっていないと考えるのが妥当な気がします。
また、adb shell dumpsys power にてWakeLockを確認してみましたが、それらしい動きをしているアプリが
見受けられない事から、なんらかの理由により、他アプリが短期間に周期的に動いているのでは無いかと考えています。
RTCという仕様上の動作はは期待しないほうがよさそうな気がしてきました。

ありがとうございました。

2012年12月5日 10:12 Wadecom Android Dept. <wade...@wadecom.co.jp>:

--
このメールは Google グループのグループ「日本Androidの会」の登録者に送られています。
このディスカッションをウェブ上で閲覧するには、https://groups.google.com/d/msg/android-group-japan/-/zbhANQYLaToJ にアクセスしてください。

このグループに投稿するには、android-g...@googlegroups.com にメールを送信してください。
このグループから退会するには、android-group-j...@googlegroups.com にメールを送信してください。
詳細については、http://groups.google.com/group/android-group-japan?hl=ja からこのグループにアクセスしてください。

Reply all
Reply to author
Forward
0 new messages