Android Zaurusの日記

ザウルスをアンドロイドにしてあげる
本館 Android Zaurus

2010-10-15

Android起動時に自動起動するアプリで例外→リブートを繰り返すAdd Starrgfxcha-cha-kikinneko

13:56 |  Android起動時に自動起動するアプリで例外→リブートを繰り返すを含むブックマーク

Android起動時にBOOT_COMPLETED*1を受信して自動起動するアプリがExceptionを吐いて死んでしまうと、システムが再起動を延々と繰り替えしてしまうケースがあるようだ。


fastbootを使って/dataを初期化*2してしまえばいいのだが、それも乱暴過ぎるという場合のバッドノウハウ


サンプルのHomeアプリ*3などのホーム置き換えアプリのパッケージを起動時にインストールして、BOOT_COMPLETEDが流れる前にホーム選択ダイアログを出させてしまうという手段を使う。

$ adb wait-for-device && adb push home.apk /data/app/home.apk

この状態で例外を吐くアプリのパッケージを/data/appから消してしまえばいい。なお、samplesのHomeはまともに動かないので、デフォルトアプリには絶対にしていけない。

AndriddrodiAndriddrodi 2010/10/15 23:12 せめてadb installくらいは知ってて欲しいですがアプリ起動前にadb shellが使えるので
「fastboot」とか「adb push /data/app」とかいう環境ならHOMEアプリなんていらない。

androidzaurusandroidzaurus 2010/10/18 16:08 この段階ではパッケージマネージャが起動してないので、adb installは使えませんよ。