Androidのアプリ開発関連のブログ

チェックリストのバグとか・・・

昨日配信開始して今朝記事に書いたチェックリストに実機でデータの整合が取れてないバグがあったが、
onDestroy()時に保存処理を書いてたのだが、onDestroy()は端末回転時は呼ばれるがメニューからアプリを終了した場合はonDestroy()なしでonPause()の後に死ぬぽい。
そのため、メニューから終了した場合は保存されずに、回転した時だけ保存されてたぽい。
Genymotionでは操作しにくいから回転のテストしかしてなかった。

元々onSaveInstanceState()とonRestoreInstanceState()で状態の復元をしてたが、
終了時もonSaveInstanceState()は呼ばれるようなのだが、いずれにしろストレージ(SQLite)に保存しなければいけないので、
どうせ保存するならonCreate()の際に毎回DB読み込みしちゃえばいいと思ったので、
onPause()で保存、onCreate()で常に読み込み。とした。

あと、EditTextの背景色が#FFFFFFではないことに気づいたので背景色を統一した。
配信開始したばっかなのに1日でバージョンコード5になったw


Android 4.04でAdMobがクラッシュするのは原因不明。
他のアプリもダメ。
AdMobとAnalyticsを統合したことでダメになったような・・・

今朝のAdMob最新版への更新で解決しなかったからGenymotionでテストしようとしたのだが、
前のバージョンではテストできてたはずなのだが、最新版にしたら、
java.lang.NoClassDefFoundError: Failed resolution of: Landroid/support/v4/util/SimpleArrayMap;
とか言われて起動しなくなった。
これは、android.support.v4.util.SimpleArrayMapの機能らしく、
Android1.6に不足機能を追加するための追加APIぽいのだが、それが無いと言われる。
そもそもGenymotionはAndroid 5.0で使ってるので不要なものだと思うのだが・・・
実機では問題無さそうなので、放置して今日は実機でテストした。


まあ、これでとりあえずチェックリストは終わりと思う。
他にはちょっと難しいと思うのだが、HTMLエディターとSSHコンソールを作ろうか検討している。