[RESOLVIDO]DROP DATABASE - com app rodando

Alguém já fez algo parecido? Tem alguma dica boa?
Tenho de destruir e reconstruir a base com o app aberto.

Estou vendo algumas opções… meu medo são eventuais bugs e crachs.

Na verdade o melhor seria limpar a base, deixar ela zerada, mas não deleta-la.
E zerar as chaves também…

Se eu deletar a base, quando o app reabrir, vai dar erro. Tenho de dar o mesmo Clear Data usado no Settings/Applicttion manager

A sua classe que cria um banco elá herda de SQLiteOpenHelper, certo ?
Lá tem dois metodos herdados o onCreate e o onUpgrade, no OnCreate você tem Scripts para criar sua base(CREATE TABLE, INSERT, etc) e no onUpgrade você faz script para deletar a estrutura da sua base :]

[quote=Valeio Bezerra]A sua classe que cria um banco elá herda de SQLiteOpenHelper, certo ?
Lá tem dois metodos herdados o onCreate e o onUpgrade, no OnCreate você tem Scripts para criar sua base(CREATE TABLE, INSERT, etc) e no onUpgrade você faz script para deletar a estrutura da sua base :][/quote]

Na real o que eu queria não era deletar a base no update, e sim em uma ação chamada “a qualquer momento”.

Com uma linha, deletei a base. Também preciso reiniciar o app, então fechei ele e chamei um alert com atraso de 1 segundo abrindo ele novamente.

[code] SQLiteDatabase.deleteDatabase(this.getDatabasePath(“baseDoMeuApp”)); // deleta base

    	AlarmManager mgr = (AlarmManager) getSystemService(Context.ALARM_SERVICE); //reseta o app 1 segundo depois.
        PendingIntent restartIntent = PendingIntent.getActivity(
                this.getBaseContext(), 0, new Intent(getIntent()),
                getIntent().getFlags());
        mgr.set(AlarmManager.RTC, System.currentTimeMillis() + 1000, restartIntent);
        System.exit(2);[/code]