猫の手も借りたい

ソフトウエア開発者の多忙な生活

XPERIA ARC固有の問題とは言い切れませんが、この4台目の端末で初めて見る奇っ怪な現象に遭遇しました。

  • RingtonePreferenceで再生するファイルを選択します。それはSharedPrefereceに保存されます。(PreferenceActivityを使っています。)

  • 確かに該当するSharedPrefereceは変更されていますが、それを別プロセスのサービスから読むと、更新されていません。古い値のままです。ありえねー。

  • PreferenceActivityで他の何かを変更すると、期待通り、別プロセスのサービスできちんと読めます。


これは理解しがたい現象で、仮にXPERIA ARCを買っておらず、誰かにこの問題を指摘されたらかなりあせったと思います。そして慌ててやっぱり買おうと思った時にはしばらく入手できず・・・とか。なので、買ってて良かったです。が、これと似たようなことは他の端末でも起こりえるわけで、Androidアプリを開発する上での大きな課題ですね。

上記の問題は、SharedPrefereceをedit,commitすることで解決しました。(きっと僕は間違ったことはしておらず、これはこの端末の問題だと思います。)












管理者にだけ表示

トラックバック URL↓
http://nekonotesoft.net/tb.php/211-a4deafea