2019-07-04 [長年日記]

一つのアプリが死んだ話

趣味のAndroidアプリを足掛け5年、同じコンセプトの以前のバージョンのものを含めると7年半作っていた。最近は機能改善、追加はできず、バージョンアップとそれにともなう動作確認をしていただけで、さらにAPIの変更にともなう挙動の変化でエンバグ状態になっていたのも放置していたけど、それなりに思い入れのあるアプリだった。

今回、Android Q (API 29)のSDKが公開されていたので、いつものように新しいSDKをインストールして動作を確認しようと思っていたら、ビルド時にdeprecatedのwarningが大量に発生していた。

ドキュメントをあたって順番に直していこうということで、リファレンスとにらめっこをしていたのだけど、一つ致命的なものにあたってしまった。

具体的にはMediaStore.Imagesで位置情報に関連する情報がデータベース化されなくなるとのこと。

This constant was deprecated in API level 29. location details are no longer indexed for privacy reasons, and this value is now always null. You can still manually obtain location metadata using ExifInterface#getLatLong(float[]).

個別にはExifInterface経由で取得できるのだけど、写真の位置情報でグルーピングするというアプリのコンセプトを維持するには自前でデータベースを構築するのか、データの更新をどうするのかなど、開発規模的にかなり厳しい感じがしたので、すっぱりあきらめることにした。

いまの実装だとAndroid Q以降は写真が一枚も表示されなくなる。まだAndroid Qは正式リリースされていないのでアプリはそのままStoreに置いておくけど、Android Q以降がある程度普及した段階で取り下げようと思っている。

次、なにか思いついたらまた作るかもしれない。趣味なのでアプリで大儲けみたいなことは一切考えていなけど、ちょっとしたお小遣い稼ぎができるアイデアないかなー(もちろんそんなに甘くはない)。

Tags: android