[Resolvido] Problema com Thread Android

Oi pessoal, esse é meu primeiro topico, seguinte estou com um problema na thread, tenho um aplicativo que fica de 1 em 1 minuto verificando se deu o horário de aula da pessoa, caso positivo eu envio uma notificação com o nome da materia e da sala. Está funcionando, porém se ativo agora meu aplicativo(12:00 meio dia) e deixo rodando minimizado quando for 19:25 que seria a condição para enviar a notificação, ele simplesmente não envia e não dá nenhum erro e continua rodando o aplicativo. Não consigo verificar o erro no debug, pois quando debugo ele funciona. Como nunca fiz uma thread acredito que o problema esteja nela. Quem puder me dar uma luz eu agradeço. Segue abaixo o código na classe que tem a thread. O codigo está um pouco extenso pq faço a mesma coisa para cada if, estava tudo em um metodo, mas tirei pensando que o problema era ele.

[code]import java.util.ArrayList;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.List;

import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.os.Handler;
import android.os.Vibrator;
import android.view.GestureDetector;
import android.view.GestureDetector.OnGestureListener;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.widget.Toast;

public class MenuPrincipal extends Activity implements OnGestureListener {

    private Button buttonMenuVerHorario;
    private Button buttonMenuCriarHorarios;
    private Button buttonMenuCadastrarMaterias;
    private Button buttonMapa;
    private GestureDetector detector = null;
    private int diaAtual;
    private final Handler handler =new Handler();
    //public static ControleVibrar iniciaVibrar;
    private static Thread thread;
    private static Thread thread2;
    private static VerificaHora conexao;
    private NotificationManager mNotificationManager;
    private int SIMPLE_NOTFICATION_ID;
    private Notification notifyDetails;
    
    @Override
    public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.menuprincipal);
            fillComponents();
            setCallBacks();
            
            mNotificationManager = (NotificationManager) MenuPrincipal.this.getSystemService(MenuPrincipal.this.NOTIFICATION_SERVICE);
            notifyDetails = new Notification(R.drawable.japraaulalogo2, MenuPrincipal.this.getResources().getString(R.string.app_name), System.currentTimeMillis());
            
            mNotificationManager.cancel(SIMPLE_NOTFICATION_ID);
            
            //mNotificationManager.cancel(SIMPLE_NOTFICATION_ID);
    detector = new GestureDetector(this);
    
    }

    public void fillComponents() {
            buttonMenuVerHorario = (Button) findViewById(R.id.buttonMenuVer);
            buttonMenuCriarHorarios = (Button) findViewById(R.id.buttonMenuCriar);
            buttonMenuCadastrarMaterias = (Button) findViewById(R.id.buttonMenuCadastrar);
            buttonMapa = (Button) findViewById(R.id.buttonMapa);

    }

    public void setCallBacks() {
    //      handler = new Handler();
            
            //iniciaVibrar = new ControleVibrar(MenuPrincipal.this, handler);
            //thread2 = new Thread(iniciaVibrar);

            conexao = new VerificaHora(MenuPrincipal.this, handler/*,iniciaVibrar*/);
            conexao.setControle(true);
            thread = new Thread(conexao);
            thread.start();
            
            buttonMenuVerHorario.setOnClickListener(new OnClickListener() {
                    public void onClick(View arg0) {

                            acaoMenuVerhorario();

                    }
            });

            buttonMenuCriarHorarios.setOnClickListener(new OnClickListener() {
                    public void onClick(View arg0) {
                            acaoMenuCriarhorario();
                    }
            });

            buttonMenuCadastrarMaterias.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {
                            acaoMenucadastrarMateria();
                    }
            });     
            
            buttonMapa.setOnClickListener(new OnClickListener() {

                    @Override
                    public void onClick(View arg0) {
                            acaoMapa();
                    }
            });     

    }

    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
            // TODO Auto-generated method stub
            switch (keyCode) {

            case KeyEvent.KEYCODE_MENU:
                    return false;
            case KeyEvent.KEYCODE_SEARCH:
                    
                    return false;
            case KeyEvent.KEYCODE_BACK:
            AlertDialog.Builder aviso = new AlertDialog.Builder(this);                       
             aviso.setTitle("Aviso"); // Titulo do AlertDialog;
             aviso.setMessage("Se você fechar o aplicativo, a função de alerta de aula será desligada. Você realmente deseja sair?"); // Mensagem do AlertDialog;
              aviso.setPositiveButton("SIM", new DialogInterface.OnClickListener() { // Botão de Positivo do Alert;
                  public void onClick(DialogInterface arg0, int arg1) {
                                    conexao.setControle(false);
                                    //iniciaVibrar.setVibraCel(false);
                                    MenuPrincipal.this.finish();
                   }
                    });
                aviso.setNegativeButton("NÃO", new DialogInterface.OnClickListener() { // Botão de Negativo do Alert;
                     public void onClick(DialogInterface arg0, int arg1) {
                     
                        }
                    });
                    aviso.show();
            default:
                    break;
            }
            
            return super.onKeyDown(keyCode, event);
    }
    
    @Override
    protected void onStop() {
            // TODO Auto-generated method stub
            super.onStop();
            //iniciaVibrar.setVibraCel(false);
    }

@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
android.os.Process.killProcess(android.os.Process.myPid());
}

    private void acaoMenuVerhorario() {
            Intent it;
            switch (new Date().getDay()) {
            case 0:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosSeg.class);
                    startActivity(it);
                    //this.finish();
                    break;
            case 1:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosSeg.class);
                    startActivity(it);
                    //this.finish();
                    break;
            case 2:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosTer.class);
                    startActivity(it);
                    //this.finish();
                    break;
            case 3:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosQua.class);
                    startActivity(it);
            //      this.finish();
                    break;
            case 4:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosQui.class);
                    startActivity(it);
            //      this.finish();
                    break;
            case 5:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosSex.class);
                    startActivity(it);
            //      this.finish();
                    break;
            case 6:
                    it = new Intent(MenuPrincipal.this, HorariosCadastradosSab.class);
                    startActivity(it);
            //      this.finish();
                    break;

            default:
                    break;
            } 
            
            
    }

    private void acaoMenuCriarhorario() {
            Intent it = new Intent(MenuPrincipal.this, MenuHorarios.class);
            startActivity(it);
            //this.finish();
    }

    private void acaoMenucadastrarMateria() {
            Intent it = new Intent(MenuPrincipal.this, MenuMaterias.class);
            startActivity(it);
            //this.finish();

    }
    
    private void acaoMapa() {
            Intent it = new Intent(MenuPrincipal.this, SiteActivity.class);
            startActivity(it);
            //this.finish();

    }
    
    public String verificaDia(){
            String dia="";
            
            return dia;
    }
    
    public boolean onDown(MotionEvent arg0) {
            // TODO Auto-generated method stub
            return false;
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
            if (this.detector.onTouchEvent(event)) {
                    return true;
            }
            return super.onTouchEvent(event);
    }

    public boolean onFling(MotionEvent e1, MotionEvent e2, float velocityX,
                    float velocityY) {
            // TODO Auto-generated method stub
            if (Math.abs(e1.getY() - e2.getY()) > 250) {
                    return false;
            }
            // Movimento da direita para esquerda
            if (e1.getX() - e2.getX() > 100 && Math.abs(velocityX) > 200) {
                    this.buttonMenuCadastrarMaterias.performClick();

            } else if (e2.getX() - e1.getX() > 100 && Math.abs(velocityX) > 200) {
                    Toast.makeText(MenuPrincipal.this,
                                    "Não Existe Menu a Esquerda do Menu Principal.",
                                    Toast.LENGTH_LONG).show();
                            
            }

            return true;
    }

    public void onLongPress(MotionEvent e) {
            // TODO Auto-generated method stub

    }

    public boolean onScroll(MotionEvent e1, MotionEvent e2, float distanceX,
                    float distanceY) {
            // TODO Auto-generated method stub
            return false;
    }

    public void onShowPress(MotionEvent e) {
            // TODO Auto-generated method stub

    }

    public boolean onSingleTapUp(MotionEvent e) {
            // TODO Auto-generated method stub
            return false;
    }

}

class VerificaHora extends Activity implements Runnable {

    private Context context2;
    private final Handler handler2;
//private  ControleVibrar iniciaVibrar;
    private static Thread thread2;
    public Dialog dialog2 ;
    String sala, materia;
    GregorianCalendar gc;
    String diaSemanaTexto;
    int diaSemana;
    int hora;
    int minuto;
    SQLiteDatabase leBd;
    Cursor c ;
    int resu ;
    SQLiteDatabase leBd2;
    List<String> list ;
    String[] lista ;
    Cursor cd;
    TextView text;
    DialogInterface.OnDismissListener ff;
    Button _ok;
    boolean controle;
    NotificationManager nm;
    Notification notificacao;
    Intent intentMensagem;
    PendingIntent p;
    
    public void setControle(boolean controle){
            this.controle = controle;
    }
    public VerificaHora(Context context, Handler handler /*,ControleVibrar iniciaVibrar*/) {
            // TODO Auto-generated constructor stub
            this.context2 = context;
            this.handler2 = handler;
            //this.iniciaVibrar = iniciaVibrar;
    }

    @Override
    public void run() {
            while (controle) {
                    try {
                            Thread.sleep(60000);
                    } catch (InterruptedException e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                    }
                    sala="";
                    materia="";
                    gc = new GregorianCalendar();
                    diaSemanaTexto = "";
                    diaSemana = gc.get(GregorianCalendar.DAY_OF_WEEK);

                    if (diaSemana == 1) {
                            diaSemanaTexto = "Domingo";
                    } else if (diaSemana == 2) {
                            diaSemanaTexto = "Segunda-Feira";
                    } else if (diaSemana == 3) {
                            diaSemanaTexto = "Terça-Feira";
                    } else if (diaSemana == 4) {
                            diaSemanaTexto = "Quarta-Feira";
                    } else if (diaSemana == 5) {
                            diaSemanaTexto = "Quinta-Feira";
                    } else if (diaSemana == 6) {
                            diaSemanaTexto = "Sexta-Feira";
                    } else if (diaSemana == 7) {
                            diaSemanaTexto = "Sábado";
                    }

                    hora = gc.getTime().getHours();
                    minuto = gc.getTime().getMinutes();
                    
                    if (diaSemanaTexto.equals("Segunda-Feira") && hora == 19 && minuto == 25) {
                            leBd = null;
                            leBd = context2.openOrCreateDatabase("bancoHorario.db",
                                            SQLiteDatabase.CREATE_IF_NECESSARY, null);

                            c = leBd.rawQuery("SELECT COUNT (id) resul FROM AULAS",
                                            null);
                            c.moveToFirst();
                            resu = c.getInt(0);
                            leBd.close();

                            leBd2 = null;
                            leBd2 = context2.openOrCreateDatabase("bancoHorario.db",
                                            SQLiteDatabase.CREATE_IF_NECESSARY, null);
                            list = null;
                            lista = null;
                            cd = leBd2.rawQuery(
                                            "SELECT * FROM AULAS WHERE cod_dia = 'Segunda-Feira' AND horario = '19:30'",
                                            null);

                            while (!cd.isAfterLast()) {
                                    if (cd.getPosition() == -1) {
                                            list = new ArrayList<String>();
                                            cd.moveToFirst();
                                    }
                                    sala= cd.getString(1) ;
                                    materia= cd.getString(4);
                                    cd.moveToNext();
                            }
                            cd.close();
                            leBd2.close();
                            if(sala.equals("") && materia.equals("")){
                                    
                            }
                            else{
                                    final String mensagemBarraStatus = "Já Pra Aula!";
                                    final String titulo = "Já Pra Aula!";
                                    
                                    //Classe que voce Gostaria de Chamar Assim que clickado na notificacao.
                                    //Voce Pode colocar outra acitivity para outra tela aqui se desejar.
                                    final Class<?> activity = TelaNotificacao.class;
                                     
                                    // Servico de Notificacao
                                    nm = (NotificationManager) context2.getSystemService(context2.NOTIFICATION_SERVICE); 
                                    
                                    //Escolhendo o Icone da Notificacao, Mensagem da Barra de Status e o Tempo que sera executado o horario.
                                    notificacao = new Notification(R.drawable.japraaula_logo, mensagemBarraStatus, System.currentTimeMillis());
                                     
                                    
                                    intentMensagem = new Intent(context2, activity);
                                    p = PendingIntent.getActivity(context2, 0, intentMensagem, 0);
                                     
                                    // Reunindo todas as informacoes e Montando a mensagem e a notificacao
                                    notificacao.setLatestEventInfo(context2, titulo, sala +" "+ materia, p);
                                     
                                    // espera 100ms e vibra por 250ms.
                                    notificacao.vibrate = new long[] { 100, 250, 100, 500 };
                                    notificacao.defaults |= Notification.DEFAULT_LIGHTS;
                                    notificacao.defaults |= Notification.DEFAULT_SOUND;
                                    notificacao.flags      |= Notification.FLAG_AUTO_CANCEL;
                                     
                                    
                                    nm.notify(R.string.app_name, notificacao);
                                    
                                    //setText(sala,materia);
                            }
                    }
                    
                   // ... else if com o resto dos dias da semana fazendo a mesma coisa...

            }

    }

}[/code]

Olá
Coloca essa thread num service, e inicia via startService
Avalia a possibilidade de usar um alarme, verifica a próxima aula e seta um alarme para ser disparado x tempo antes do início da aula.
Evita que o seu app tenha que ficar rodando o tempo todo, consumindo ciclos de cpu e bateria.

Oi,

try { Thread.sleep(60000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); }

Imagine a sua Thread caindo no sleep acima justamente no horário 19:25.

Quando sair deste sleep, não será mais 19:25 e sim 19:26. Ou seja, não entrará no seu IF e sua logica está errada.

Tchauzin!

Voce pode usar o AlarmManager para agendar tarefas para serem executadas em algum horario especifico.

  • Sobre rodar de 1 em 1 minuto, já fiz o teste rodando em 40 segundos e também acontece a mesma coisa.
  • Não queria utilizar o alarme, pois não acho muito funcional para o que quero fazer, minha intenção não é interromper a pessoa, por isso optei pela notificação.
  • Vou tentar rodar a thread no service, para ver se resolve.

Deixei rodando no emulador o aplicativo e vou postar aqui o logCat, tem momentos que da um erro no banco de dados e no socket, será que isso está influenciando?
só que mesmo assim ele escreveu na tela o meu contador que deixei após enviar a notificação.

Obrigada pela ajuda!!!

10-10 14:32:18.212: DEBUG/dalvikvm(123): GC_EXPLICIT freed 1841 objects / 122040 bytes in 112ms
10-10 14:32:43.242: INFO/System.out(288): CONTADOR: 1hora: 14minuto: 32
10-10 14:33:23.372: INFO/System.out(288): CONTADOR: 2hora: 14minuto: 33
10-10 14:34:03.472: INFO/System.out(288): CONTADOR: 3hora: 14minuto: 34
10-10 14:34:28.335: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 14:34:43.582: INFO/System.out(288): CONTADOR: 4hora: 14minuto: 34
10-10 14:35:23.693: INFO/System.out(288): CONTADOR: 5hora: 14minuto: 35
10-10 14:36:03.843: INFO/System.out(288): CONTADOR: 6hora: 14minuto: 36
10-10 14:36:43.962: INFO/System.out(288): CONTADOR: 7hora: 14minuto: 36
10-10 14:37:24.072: INFO/System.out(288): CONTADOR: 8hora: 14minuto: 37
10-10 14:38:04.192: INFO/System.out(288): CONTADOR: 9hora: 14minuto: 38
10-10 14:38:44.293: INFO/System.out(288): CONTADOR: 10hora: 14minuto: 38
10-10 14:39:24.363: INFO/System.out(288): CONTADOR: 11hora: 14minuto: 39
10-10 14:39:28.403: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 14:40:04.533: INFO/System.out(288): CONTADOR: 12hora: 14minuto: 40
10-10 14:40:04.533: DEBUG/dalvikvm(58): GC_FOR_MALLOC freed 18550 objects / 864568 bytes in 84ms
10-10 14:40:44.665: INFO/System.out(288): CONTADOR: 13hora: 14minuto: 40
10-10 14:41:25.272: INFO/System.out(288): CONTADOR: 14hora: 14minuto: 41
10-10 14:41:26.882: WARN/InputManagerService(58): Window already focused, ignoring focus gain of: com.android.internal.view.IInputMethodClient$Stub$Proxy@44f7a988
10-10 14:42:05.382: INFO/System.out(288): CONTADOR: 15hora: 14minuto: 42
10-10 14:42:45.452: INFO/System.out(288): CONTADOR: 16hora: 14minuto: 42
10-10 14:43:25.533: INFO/System.out(288): CONTADOR: 17hora: 14minuto: 43
10-10 14:44:05.633: INFO/System.out(288): CONTADOR: 18hora: 14minuto: 44
10-10 14:44:28.471: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 14:44:45.762: INFO/System.out(288): CONTADOR: 19hora: 14minuto: 44
10-10 14:45:25.882: INFO/System.out(288): CONTADOR: 20hora: 14minuto: 45
10-10 14:46:06.042: INFO/System.out(288): CONTADOR: 21hora: 14minuto: 46
10-10 14:46:46.132: INFO/System.out(288): CONTADOR: 22hora: 14minuto: 46
10-10 14:47:26.243: INFO/System.out(288): CONTADOR: 23hora: 14minuto: 47
10-10 14:48:06.353: INFO/System.out(288): CONTADOR: 24hora: 14minuto: 48
10-10 14:48:46.473: INFO/System.out(288): CONTADOR: 25hora: 14minuto: 48
10-10 14:49:26.592: INFO/System.out(288): CONTADOR: 26hora: 14minuto: 49
10-10 14:49:28.538: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 14:50:06.692: DEBUG/dalvikvm(288): GC_FOR_MALLOC freed 4893 objects / 279560 bytes in 50ms
10-10 14:50:06.812: INFO/System.out(288): CONTADOR: 27hora: 14minuto: 50
10-10 14:50:06.812: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.812: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.812: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.812: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.812: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.812: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.812: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.812: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.822: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.822: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.822: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.822: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.822: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.822: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.822: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.822: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.832: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.832: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.832: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.832: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.832: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.832: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.832: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.832: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.832: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.842: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.842: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.842: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.842: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.842: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.842: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.842: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.842: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.842: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.852: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.852: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.852: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.852: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.852: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.852: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.852: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.852: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.852: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.862: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.862: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.862: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.862: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.862: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.862: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.862: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.862: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.862: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.872: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.872: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.872: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.872: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.872: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.872: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.872: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.872: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.882: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.882: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.882: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.882: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.882: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.882: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.882: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.882: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.882: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.892: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.892: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.892: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.892: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.892: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.892: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.892: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.892: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.892: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.902: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.902: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.902: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.902: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.902: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.902: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.902: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.902: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.902: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.912: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.912: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.912: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.912: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.912: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.912: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.912: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.912: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.912: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.923: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.923: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.923: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.923: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.923: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.923: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.923: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.923: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.923: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.932: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.932: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.932: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.932: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.932: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.932: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.932: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.932: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.942: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.942: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.942: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.942: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.942: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.942: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.942: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.942: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.942: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.952: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.952: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.952: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.952: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.952: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.952: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.952: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.952: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:50:06.952: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:50:06.982: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:50:06.982: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:06.982: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:50:06.982: ERROR/Cursor(288):     at br.appmeto.app2.HorariosCadastradosQua.setCallBacks(HorariosCadastradosQua.java:61)
10-10 14:50:06.982: ERROR/Cursor(288):     at br.appmeto.app2.HorariosCadastradosQua.onCreate(HorariosCadastradosQua.java:41)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.os.Looper.loop(Looper.java:123)
10-10 14:50:06.982: ERROR/Cursor(288):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-10 14:50:06.982: ERROR/Cursor(288):     at java.lang.reflect.Method.invokeNative(Native Method)
10-10 14:50:06.982: ERROR/Cursor(288):     at java.lang.reflect.Method.invoke(Method.java:521)
10-10 14:50:06.982: ERROR/Cursor(288):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-10 14:50:06.982: ERROR/Cursor(288):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-10 14:50:06.982: ERROR/Cursor(288):     at dalvik.system.NativeStart.main(Native Method)
10-10 14:50:07.002: ERROR/Database(288): close() was never explicitly called on database '/data/data/br.appmeto.app2/databases/bancoHorario.db' 
10-10 14:50:07.002: ERROR/Database(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:50:07.002: ERROR/Database(288):     at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1810)
10-10 14:50:07.002: ERROR/Database(288):     at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:817)
10-10 14:50:07.002: ERROR/Database(288):     at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:851)
10-10 14:50:07.002: ERROR/Database(288):     at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:844)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:540)
10-10 14:50:07.002: ERROR/Database(288):     at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:203)
10-10 14:50:07.002: ERROR/Database(288):     at br.appmeto.app2.PrimeiroProAnActivity.onCreate(PrimeiroProAnActivity.java:43)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.ActivityThread.access$2300(ActivityThread.java:125)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
10-10 14:50:07.002: ERROR/Database(288):     at android.os.Handler.dispatchMessage(Handler.java:99)
10-10 14:50:07.002: ERROR/Database(288):     at android.os.Looper.loop(Looper.java:123)
10-10 14:50:07.002: ERROR/Database(288):     at android.app.ActivityThread.main(ActivityThread.java:4627)
10-10 14:50:07.002: ERROR/Database(288):     at java.lang.reflect.Method.invokeNative(Native Method)
10-10 14:50:07.002: ERROR/Database(288):     at java.lang.reflect.Method.invoke(Method.java:521)
10-10 14:50:07.002: ERROR/Database(288):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
10-10 14:50:07.002: ERROR/Database(288):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
10-10 14:50:07.002: ERROR/Database(288):     at dalvik.system.NativeStart.main(Native Method)
10-10 14:50:46.942: INFO/System.out(288): CONTADOR: 28hora: 14minuto: 50
10-10 14:51:27.033: INFO/System.out(288): CONTADOR: 29hora: 14minuto: 51
10-10 14:52:07.113: INFO/System.out(288): CONTADOR: 30hora: 14minuto: 52
10-10 14:52:47.182: INFO/System.out(288): CONTADOR: 31hora: 14minuto: 52
10-10 14:53:27.282: INFO/System.out(288): CONTADOR: 32hora: 14minuto: 53
10-10 14:54:07.403: INFO/System.out(288): CONTADOR: 33hora: 14minuto: 54
10-10 14:54:28.553: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 14:54:47.522: INFO/System.out(288): CONTADOR: 34hora: 14minuto: 54
10-10 14:55:27.663: INFO/System.out(288): CONTADOR: 35hora: 14minuto: 55
10-10 14:56:07.783: INFO/System.out(288): CONTADOR: 36hora: 14minuto: 56
10-10 14:56:47.942: INFO/System.out(288): CONTADOR: 37hora: 14minuto: 56
10-10 14:56:47.942: DEBUG/dalvikvm(58): GC_FOR_MALLOC freed 18832 objects / 851440 bytes in 97ms
10-10 14:57:28.012: DEBUG/dalvikvm(288): GC_FOR_MALLOC freed 8767 objects / 694880 bytes in 50ms
10-10 14:57:28.012: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.012: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.012: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.012: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.012: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.012: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.012: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.012: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.192: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.192: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.192: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.192: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.192: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.192: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.192: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.192: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.253: INFO/System.out(288): CONTADOR: 38hora: 14minuto: 57
10-10 14:57:28.263: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.263: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.263: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.263: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.263: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.263: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.263: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.263: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.272: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.272: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.272: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.272: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.272: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.272: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.272: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.272: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.283: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.283: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.283: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.283: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.283: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.283: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.283: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.283: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.292: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.292: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.292: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.292: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.292: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.292: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.292: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.292: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.303: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.303: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.303: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.303: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.303: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.303: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.303: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.303: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.312: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.312: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.312: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.312: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.312: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.312: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.312: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.312: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.312: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:57:28.323: ERROR/Cursor(288): Finalizing a Cursor that has not been deactivated or closed. database = /data/data/br.appmeto.app2/databases/bancoHorario.db, table = null, query = SELECT COUNT (id) resul FROM AULAS
10-10 14:57:28.323: ERROR/Cursor(288): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
10-10 14:57:28.323: ERROR/Cursor(288):     at android.database.sqlite.SQLiteCursor.<init>(SQLiteCursor.java:210)
10-10 14:57:28.323: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:53)
10-10 14:57:28.323: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
10-10 14:57:28.323: ERROR/Cursor(288):     at android.database.sqlite.SQLiteDatabase.rawQuery(SQLiteDatabase.java:1315)
10-10 14:57:28.323: ERROR/Cursor(288):     at br.appmeto.app2.VerificaHora.run(MenuPrincipal.java:650)
10-10 14:57:28.323: ERROR/Cursor(288):     at java.lang.Thread.run(Thread.java:1096)
10-10 14:58:08.342: INFO/System.out(288): CONTADOR: 39hora: 14minuto: 58
10-10 14:58:48.539: INFO/System.out(288): CONTADOR: 40hora: 14minuto: 58
10-10 14:59:28.561: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 14:59:28.613: INFO/System.out(288): CONTADOR: 41hora: 14minuto: 59
10-10 15:00:08.694: INFO/System.out(288): CONTADOR: 42hora: 15minuto: 0
10-10 15:00:48.802: INFO/System.out(288): CONTADOR: 43hora: 15minuto: 0
10-10 15:01:28.933: INFO/System.out(288): CONTADOR: 44hora: 15minuto: 1
10-10 15:02:09.012: INFO/System.out(288): CONTADOR: 45hora: 15minuto: 2
10-10 15:02:49.102: INFO/System.out(288): CONTADOR: 46hora: 15minuto: 2
10-10 15:03:29.203: INFO/System.out(288): CONTADOR: 47hora: 15minuto: 3
10-10 15:04:09.353: INFO/System.out(288): CONTADOR: 48hora: 15minuto: 4
10-10 15:04:28.578: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 15:04:49.482: INFO/System.out(288): CONTADOR: 49hora: 15minuto: 4
10-10 15:05:29.552: INFO/System.out(288): CONTADOR: 50hora: 15minuto: 5
10-10 15:06:09.642: INFO/System.out(288): CONTADOR: 51hora: 15minuto: 6
10-10 15:06:49.752: INFO/System.out(288): CONTADOR: 52hora: 15minuto: 6
10-10 15:07:29.873: INFO/System.out(288): CONTADOR: 53hora: 15minuto: 7
10-10 15:08:10.003: INFO/System.out(288): CONTADOR: 54hora: 15minuto: 8
10-10 15:08:50.092: INFO/System.out(288): CONTADOR: 55hora: 15minuto: 8
10-10 15:09:28.582: DEBUG/SntpClient(58): request time failed: java.net.SocketException: Address family not supported by protocol
10-10 15:09:30.172: INFO/System.out(288): CONTADOR: 56hora: 15minuto: 9
10-10 15:10:10.252: INFO/System.out(288): CONTADOR: 57hora: 15minuto: 10

O problema é que essa thread está com um ciclo de vida além da sua activity. Sua activity deve estar “stoped”.
Um alarme é normalmente associado com um componente sonoro, mas não obrigatoriamente: ele pode ser visual, notificação, dialogo; vibratório, e, sonoro.
Depende da opção do programador, e do usuário, se for configurável.

Voce não vai encomodar o usuario com o AlarmService, voce nem precisa mostrar que está agendando uma tarefa.

Anyway… sobre o erro de banco, voce abriu algum Cursor, utilizou e não deu um close() nele.

Tentei criar a thread dentro de um Service, mas aconteceu a mesma coisa, funcionou mas depois de um certo tempo nao enviou a notificação =/ (não sei se fiz certo tbm)

Vo então tentar fazer pelo AlarmService!!

Mas tenho uma dúvida, a thread não é independente da Activity? Porque quando a Activity entra em Stopped ele para minha thread?
E tem algum jeito de impedir que a Activity entra em Stopped? tipo da uma “cutucada” nela pra não entrar em Stopped? rsrs

Vou fazer o AlarmService e posto aqui se deu certo ! Obrigada pela ajuda novamente
=)

Pessoal,

Desculpe a demora, consegui resolver o problema, seguindo a dica de vocês e criando um alarm manager !

segue o link do exemplo que utilizei.

http://www.portalandroid.org/comunidade/viewtopic.php?f=2&t=12342&hilit=start+updater

Obrigada a todos!