Mon application Craches lorsque je tente de mettre à jour ma base de données, il me donne le problème suivantApp tentative d'invoquer la méthode virtuelle 'Craches
tentative d'invoquer la méthode virtuelle « android.database.cursor com.leoni.bd .Gestion_db.FindDate (java.lang.String) » sur un objet null référence
je ne pouvais pas trouver l'objet null j'ai essayé beaucoup de choses, mais cela n'a pas fonctionné! j'ai besoin d'aide s'il vous plait !
ceci est ma classe Gestion_db.java
private SQLiteDatabase _myDbm;
public Gestion_db(Context pContext) {
SqliteCreator s = new SqliteCreator(pContext, Stat.DB_NAME, null, 1);
_myDbm = s.getWritableDatabase();
}
public void close() {
_myDbm.close();
}
public Cursor FindDate(String Attribute) {
String query = "SELECT * FROM " +Stat.TABLE_NAME +" WHERE ? LIKE '%?%' ";
return _myDbm.rawQuery(query, new String[] {Stat.COL_DATE,Attribute});
}
c'est la méthode de mon activité Controle.java Wich contiennent le curseur
//header of the activity
private Gestion_db _myGestionDB;
private String _myRecognizedText = null;
// Mise à jour de la base de données quelque soit l'action
private void MiseAJour() {
String dateCourante = new SimpleDateFormat("yyyy:MM:dd",Locale.getDefault()).format(new Date());
Boolean existe=false;
Cursor c = _myGestionDB.FindDate(dateCourante);
if (c.getCount() != 0) {
c.moveToFirst();
while (!c.isAfterLast()) {
String ldate = c.getString(c.getColumnIndex(Stat.COL_DATE));
String lMatricule = c.getString(c.getColumnIndex(Stat.COL_TEXTE_OCR));
if (ldate.equals(dateCourante)&& lMatricule.equals(_myRecognizedText)) {
existe=true;
break;
}
c.moveToNext();
}
}
if (existe){
UpdateHeure(_myHeure);
}else{
AddVoyage();
}
}
cette classe ic Stat.java qui contient des cordes
public class Stat {
public static final String DB_NAME = "leoni.db";
public static final String URL_CHECK = "http://192.168.1.6/check.php";
public static final String GET_URL = "http://192.168.1.6/getChauffeurs.php";
public static final String COL_ID = "_id";
// Gestion des déplacements
public static final String TABLE_NAME = "gestion_des_deplacements";
public static final String COL_TEXTE_OCR = "texte_ocr";
public static final String COL_DATE = "date";
public static final String COL_HEURE_DEPART = "heure_depart";
public static final String COL_HEURE_ARRIVEE = "heure_arrive";
public static final String CREATE_TABLE_DEPLACEMENTS = "CREATE TABLE "
+ Stat.TABLE_NAME + " (" + Stat.COL_ID
+ " INTEGER PRIMARY KEY autoincrement," + Stat.COL_TEXTE_OCR
+ " VARCHAR(40)" + "," + Stat.COL_CHAUFFEUR + " VARCHAR(50)" + ","
+ Stat.COL_DATE + " VARCHAR(50)" + "," + Stat.COL_HEURE_DEPART
+ " VARCHAR(30)" + "," + Stat.COL_HEURE_ARRIVEE + " VARCHAR(30));";
// Gestion des chauffeurs
public static final String COL_MATRICULE = "matricule";
public static final String COL_CHAUFFEUR = "chauffeur";
}
'_myGestionDB' est' null' –