2012-02-15 5 views
4

バックグラウンドで動作する私のサービスからデータベースにアクセスしたいと思います。それは可能ですか?サービスからデータベースにアクセスできますか?

+0

ので、私のデータベースクラスはSQLiteopenhelperを拡張する必要があり、このhttp://stackoverflow.com/questions/7058107/service-accessing-a-database – Ajay

+0

を試してみてください。それ以外の場合、サービスはそれにアクセスできません。 – xyzandroid

+0

はい、記事http://www.vogella.de/articles/AndroidSQLite/article.htmlを参照してください。 – Ajay

答えて

0

はい、その可能性があります、そしていつでもコンテキスト利用サービスの必要性があります。

3

はい、サービスからデータベースにアクセスすることは可能です。データベースにアクセスするには、Contextのみが必要です。

0

はい、これはアプリケーションで使用する通常の機能です。 @Ajayは正しいです。

USE EXAMPLE

あなたは、いくつかの秒後に実行スレッドにあなたのサービスクラスからDBにアクセスするメソッドを呼び出すことができます。

0

はいサービスからデータベースにアクセスすることは可能です。 SqliteOpenHelperを継承するデータベースクラスのオブジェクトを作成し、ServiceName.thisをコンテキストとして渡すか、アプリケーションクラスをコンテキストとして使用するだけです。

DbHelper db = new DbHelper(ServiceClass.this); 
db.performOperations(); 
db.close(); 

OR

DbHelper db = new DbHelper(YourApplicationClass.getAppContext()); 
db.performOperations(); 
db.close(); 
関連する問題