Essayez de rouvrir un objet déjà fermé: java.lang.IllegalStateException :?

Je sais que cette question a demandé à de nombreuses reprises dans l'affirmative,mais je ne pouvais pas comprendre mon problème exact.

J'utilise le code suivant pour obtenir les données à partir de la base de données(Table1) et de mettre à jour un autre Table2 basé sur la récupération de la valeur. Sa fonctionne très bien dans certaines versions d'android, mais quand je allé faire l'essai avec Android 4.0.3. Je suis geting ce java.lang.IllegalStateException:?.attempt to re-open an already-closed object à sum_cursor.moveToNext();.

Je suis en utilisant ce code dans AsyncTask.

 /** Sum of total matched values*/
            Cursor sum_cursor = db.gettotalMatchvalue(this);
             if(sum_cursor!=null)
             {
                 sum_cursor.moveToFirst();
                 for(int j=0; j<sum_cursor.getCount();j++)
                 {    
                     float totalmatchedscore = sum_cursor.getInt(0);
                     float totalingredients = Float.parseFloat(sum_cursor.getString(sum_cursor.getColumnIndex(APPDatabase.CK_TOTALINCREDIENTS)));
                     /**average = totalscore/totalingredients*/
                     double average = totalmatchedscore/totalingredients;
                     int id = Integer.parseInt(sum_cursor.getString(sum_cursor.getColumnIndex(APPDatabase.CK_ID))); 

                 db.updateAverage(id, average); 
                 sum_cursor.moveToNext(); //Here is the problem
                 }  
             }   
             db.close();  

Ma mise à jour de la méthode de codage

/** Update average */
public void updateAverage(int id,double average)
{
    SQLiteDatabase db = getWritableDatabase();
    ContentValues values = new ContentValues();
    values.put(CK_FINALVALUE,average);
    db.update(TABLE, values,CK_ID+" = "+id , null);   
}

Ce que je fais de mal ici?

Je sais que vous êtes nombreux à venir à travers cette situation. Pourriez-vous m'aider les gars.

Merci pour votre aide.

source d'informationauteur vinothp