私はまだ、Androidプログラミングで多く見られるこのコンテキスト全体を本当に理解しています。だから私はすべてのテーブルを削除する関数を作成しようとしましたが、これが私の部分的なコードです:
public class DBAdapter {
private static class DbHelper extends SQLiteOpenHelper {
private boolean databaseCreated = false;
public DbHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}
public void deleteTables(){
Log.d("DBAdapter","dlm drop tables pre");
this.sqlDatabase.execSQL("DROP TABLE IF EXISTS ["+TABLE_TV+"];");
this.sqlDatabase.execSQL("DROP TABLE IF EXISTS ["+TABLE_CAMERA+"];");
this.sqlDatabase.execSQL("DROP TABLE IF EXISTS ["+TABLE_GPS+"];");
}
}
}
関数deleteTablesを呼び出す部分
public class UpdateDatabase {
public void updateTable(String table,JSONObject jsonObject){
DBAdapter db = new DBAdapter(this);
db.deleteTables();
}
}
ただし、DBAdapter はコンテキストを想定しているため、もちろんエラーが返されます。パブリック クラス UpdateDatabase はアクティビティ クラスではありません。アクティビティ クラスから DbAdapter db = new DBAdapter(this) を呼び出すと、検索だけで機能します。では、この問題の修正方法を見つけるにはどうすればよいでしょうか?
ありがとう