常駐考察メモ
しかしながら、下記エラーが発生するという報告が利用者から来た。
Caused by: java.lang.IllegalStateException: Cannot perform this operation because the connection pool has been closed.
上記エラーへの対応方法をネットで調べると、「データベースを閉じるな」という方法が提案されている。
onDestroy()においてデータベースclose()しているにも関わらず、上記エラーが発生しているという状況から察するに、このclose()の後で、onStartCommand()がメッセージを受け取っているということが推測させる。
もはや、どうすることもできません。
●データベースを管理する。
●外部から不意のメッセージを受け取る
この2個の条件を満足させるためには、常駐化しかないかも。
参考:NotificationListenerServiceを実装させたアプリでは、NotificationListenerServiceは常駐している。また、類似アプリの振る舞いを観察しても、常駐させている。
0 件のコメント:
コメントを投稿