Android 端末の状態変化時におけるブロードキャストインテント情報の解析
小柳文乃

1(指導教員：小口正人)

はじめにことで画面が遷移するものである．

近年スマートフォンが爆発的に普及してきたが，スマートフォンユーザの多くはバッテリの持ちに対し不満を感じている．スマートフォンのバッテリ消費として考えられるのが，アプリケーションである．アプリ
ケーションには，端末の無操作時においてもバックグラウンドに常駐して動作し続けるものや，ブロードキャストインテントに反応して起動や通信を始めるものが数多く存在する．
本研究では，近年大変注目されている Android 端末を用いる．Android 端末とは，Google 社を中心に開発されている Android OS を搭載したスマートフォンであり，オープンソースで提供されているためキャリア間の制約がなく，様々なデバイスに自由に応用することができるという背景から，スマートフォン OS の中でのシェア率も年々上昇している (2014 年第 2 四半期では世界で 84.7 ％のシェア)[1]．
以上の理由から，本研究で取り扱うスマートフォン
OS として Android に焦点を当て，状態変化時，具体的には移動時の Android 端末に生じるブロードキャストインテントと電池消費について検討していく．

2

図 1: ブロードキャストインテントに起因するバッテリ消費
そ れ に 対 し て ブ ロ ー ド キャス ト イ ン テ ン
ト は ，図 １ で 示 し た よ う に ，例 え ば ，ACTION TIME TICK(現 在 時 刻 が 変 わった)や，
ACTION BATTERY CHANGED(バッテリ状態が変化した) などのイベントが発生した時，主にシステムが発行するものである．そしてレシーバ登録されている任意の複数のアプリケーションが受信し，各々が処理を実行する．また，ブロードキャストインテントのためにアプリケーションが動作した際，更にその動作がトリガとなって新たなブロードキャストインテントが発行される恐れもある．つまり，ユーザだけでなくアプリケーションでさえも意図せずにブロードキャストインテントは発行され，さらに連鎖が起こり多大なバッテリ消費が起きる可能性があるといえる．
先行研究において，アプリケーションや通信状況により取得されるブロードキャストインテントが異なることを指摘しており，電池消費量と相関の高いブロードキャストインテントを明らかにしている．したがって，ブロードキャストインテントと電池消費は確かに因果関係があると言える [2]．

スマートフォンのバッテリ消費

本節では，なぜ本研究でバッテリ性能を考察するためにアプリケーションに着目するのか説明する．
スマートフォンのバッテリ消費の原因は主に「ディスプレイ」, 「通信機能」, 「CPU 使用率」の三点があげられるが, これら三点の主要因すべてに深くリンクしているのがアプリケーションである．電話やメー
ル，カメラ，ゲームなど，スマートフォンで何かを行うためにはアプリケーションが起動し，それによってユーザはスマートフォンを思いのままに利用できる．例
えばスマートフォンで電話をするには電話アプリケーションを，メールをするにはメールアプリケーションを使用している．つまりアプリケーションは，スマートフォンを利用する上では欠かせないものであり，ほぼすべてのスマートフォンユーザが何かしらのアプリケーションを各個人の判断でダウンロードし，端末をカスタマイズしている．
さらに近年では，アプリケーションはハードウェアの制限なく開発可能であるため，他のプロセスに画面が切り替わっても終了せずに動き続けるといったバックグラウンドで動作可能なアプリケーションが多く存在し，バッテリ消費に影響を与えている．

34

ブロードキャストインテントの解析

4.1

実験概要

アプリケーションやブロードキャストインテントの発行と電池消費との因果関係を解析するため，以下の実験を行った．先行研究等においては，実行環境の再現性を重視し，特定の場所に固定して測定が行われている．しかしスマートフォンはずっと静止して使われる事はむしろ稀であり，移動しながら使用される場合の方が一般的である．そこで本研究では，消費電力量やブロードキャストインテントの発行量に影響を与えることが予想される，端末の物理的移動に着目した実験を行った．
具体的には，発行されたブロードキャストインテントを取得し，かつ 1 分毎にバッテリ残量を計測することで，端末の移動が消費電力量やブロードキャストインテントの発行量に与える効果を調査した．

ブロードキャストインテント

インテントとは，アプリケーションの中の一つ一つの機能を橋渡しする Android 特有の仕組みである．インテントには，明示的インテント，暗黙的インテント，そしてブロードキャストインテントの三種類が存在する．明示的インテントと暗黙的インテントは，主にユー
ザがアプリケーション内のボタンをタップしたときなどに発行され，次の特定のアクティビティが受信する

4.2

実験環境

発行されるブロードキャストインテントとバッテリ残量を記録する事ができるように，カーネルにコード45

を加える改変を行った Android 端末を用い，表１で示した環境でバッテリ消費量と発行されたインテントを測定した．評価アプリとして実験 1 では任意の 10 個のアプリケーションを，実験 2 では任意の 10 個に加え，Google Play の上位 35 位までのアプリケーションをインストールした．実験前にアプリケーションを起動させることによって，実験中バックグラウンドでアプリケーションが動いている状態にした．
移動時は山手線に乗ることで端末を物理的に移動させ，固定時は研究室にて一切動かさず物理的移動を行わなかった．測定中の操作は一切行わない．
表１：使用端末の仕様と実験環境

図２：発行インテント量

4.3

実験結果

5• バッテリの減少まとめと今後の課題

本研究では，スマートフォンのバッテリ消費の原因として，ユーザやアプリケーションが意図せず発行していることが多いブロードキャストインテントについて解析と考察を行った．その際先行研究を元に，より実際のユーザの使用状況に近づける為移動の有無に着目し，調査を行った．調査の結果，固定時と移動時ではバッテリ消費速度に違いがあること，固定時と移動時で発行量が大きく異なるブロードキャストインテントが存在すること，アプリケーションの数はバッテリ消費に関係することがわかった．今後の課題はバッテリの減りが移動と固定，またアプリケーションの数で異なる理由を明確にするために，CPU 使用率や通信量もふまえて調査する．

実験 1 と 2 の各場合におけるバッテリの減少を表 2に示す．移動時と固定時の 1 時間におけるバッテリ消費量の差は，実験 1 では全バッテリの 2%，実験 2 では全バッテリの 3%であった．また，実験 1，2 を比較すると，移動時も固定時もアプリケーションの数が増えるとバッテリ消費が増えた．
この結果から，端末が物理的に移動する場合，および多数のアプリケーションがインストールされた場合には，その際に多数の異なる種類のブロードキャストインテントが発行された可能性が考えられる．以下にそれを確認した結果を述べる．
表２：バッテリの減少

6

謝辞

本研究を進めるにあたって，株式会社 KDDI 研究所の半井 明大氏，竹森 敬祐氏，工学院大学の中村 優太氏，山口 実靖氏，お茶の水女子大学博士前期課程 2 年の早川 愛氏より大変有用なアドバイスをいただきました. 深く感謝いたします.

• 発行されたインテント
実験 2 で発行されたブロードキャストインテントの上位 15 個を図 2 に示す．実験 1 と実験 2 で，発行されたブロードキャストインテントの種類は大きく異なっていた．これは，アプリケーションによって発行されるブロードキャストインテントの種類が全く異なるためである．ただし実験 1 の場合も移動時の方が固定時
より全体的にブロードキャストインテントの発行回数が多くなっている．図より，移動時と固定時では発行されたインテントの種類と順位はほとんど同じである．
しかしながら，全体的に移動時の方が発行回数は多くなっていることがわかる．
よって，移動時は固定時よりもブロードキャストイ
ンテントは頻繁に発行され，バッテリ消費速度が固定時の速度よりも高くなると予想される．

参考文献[1] IDC：http://www.idc.com/getdoc.jsp?
containerId=prUS25037214[2] 早川愛， 半井明大， 竹森敬祐， 山口実靖， 小口正人:Android 端末省電力化に向けたブロードキャストインテント発行とアプリケーションの因果関係の評価， IC2014,pp.69-77,2014 年 11 月．
[3] 小柳文乃，早川愛，中村優太，半井 明大，竹森 敬祐，山口 実靖，小口正人 : Android 端末の状態変化時における ブロードキャストインテントとバッテリ性能の考察，DEIM2015,2015 年 3 月 発表予定.

46