У меня есть метод в сервисе, который я создал, и я хочу получить доступ к этому методу из действия, которое реализует диалог прогресса.Этот метод просто обновляет мою базу данных, и он возвращал проблему ANR, поэтому я создал поток, и в этом потоке я хочу вызвать этот метод, который находится в моей службе.Я попытался создать экземпляр службы, но объект имеет значение null
Итак, как создать «объект» в моей деятельности, где я могу получить доступ к этому методу.Кто-то может помочь мне с этой реализацией ??
Спасибо.
Код:
public class UpdateDBProgressDialog extends Activity {
private String LOG_TAG = "UpdateDBProgressDialog";
private TextView tv;
private ProgressDialog pd;
private Handler handler;
private RatedCallsService rcs;
private Intent intent;
public boolean mIsBound = false;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
setContentView(R.layout.main);
pd = ProgressDialog.show(this, "Updating Database", "The application is updating the database. Please wait.", true, false);
handler = new Handler() {
@Override
public void handleMessage(Message msg) {
pd.dismiss();
}
};
Thread thread = new Thread(){
public void run() {
try{
rcs.updateDB();// Here I'm trying to call the method that is from the service class. But it says 'rcs' is null.
handler.sendEmptyMessage(0);
}catch(Exception e){e.printStackTrace();}
}
};
thread.start();
new Thread(){
public void run(){
try{
Thread.sleep(10000);
if(!RatedCallsService.RUNNING){
Intent i = new Intent(UpdateDBProgressDialog.this, RatedCallsService.class);
UpdateDBProgressDialog.this.startService(i);
}
}catch(Exception e){e.printStackTrace();}
}}.start();
}
}
Я просто хочу объектслужба, чтобы я мог вызвать метод, который я создал там.