2014-05-08 5 views
1

Je ne suis pas vraiment sûr de ce que mon problème est. J'ai tout essayé. Voici mon code:SQLite et retour ligne spécifique

public Album getAlbum(int id){ 
    SQLiteDatabase db = this.getReadableDatabase(); 
    Log.d("ID number", id + ""); 
    String selectQuery = "SELECT * FROM " + TABLE_ALBUM + " WHERE " + KEY_ID + " = " + id; 
    Cursor cursor = db.rawQuery(selectQuery, null); 
    cursor.moveToFirst(); 
    Log.d("Count", cursor.getCount() + ""); 
    if(cursor != null && cursor.moveToFirst()){   
     Album album = new Album(cursor.getString(1), cursor.getString(2), cursor.getString(3),cursor.getString(4),cursor.getString(5),cursor.getString(6),cursor.getString(7),Utility.getPhoto(cursor.getBlob(8))); 
     cursor.close(); 
     return album; 
    } 
    return null; 
} 

J'imprime les valeurs suivantes:

05-08 03:14:03.066: E/album position(1285): 1 
05-08 03:14:03.156: D/ID number(1285): 1 
05-08 03:14:03.156: D/Count(1285): 0 
05-08 03:14:03.196: E/AndroidRuntime(1285): FATAL EXCEPTION: main 
05-08 03:14:03.196: E/AndroidRuntime(1285): java.lang.RuntimeException: Unable to start  activity ComponentInfo{sparkdesignz.momenture/sparkdesignz.momenture.AlbumInfoActivity}: java.lang.NullPointerException 

Dans le fichier journal ci-dessus je montre ce que je suis en train de faire (position). Je le montre à nouveau dans la méthode, puis je montre la valeur de mon curseur. Quelqu'un s'il vous plaît laissez-moi savoir ce que je fais mal.

Merci

Voici mon journal complet

05-08 03:14:03.166: W/dalvikvm(1285): threadid=1: thread exiting with uncaught exception (group=0x409c01f8) 
05-08 03:14:03.196: E/AndroidRuntime(1285): FATAL EXCEPTION: main 
05-08 03:14:03.196: E/AndroidRuntime(1285): java.lang.RuntimeException: Unable to start activity ComponentInfo{sparkdesignz.momenture/sparkdesignz.momenture.AlbumInfoActivity}: java.lang.NullPointerException 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1956) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.ActivityThread.access$600(ActivityThread.java:123) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.os.Handler.dispatchMessage(Handler.java:99) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.os.Looper.loop(Looper.java:137) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.ActivityThread.main(ActivityThread.java:4424) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at java.lang.reflect.Method.invokeNative(Native Method) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at java.lang.reflect.Method.invoke(Method.java:511) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at dalvik.system.NativeStart.main(Native Method) 
05-08 03:14:03.196: E/AndroidRuntime(1285): Caused by: java.lang.NullPointerException 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at sparkdesignz.momenture.AlbumInfoActivity.onCreate(AlbumInfoActivity.java:48) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.Activity.performCreate(Activity.java:4465) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049) 
05-08 03:14:03.196: E/AndroidRuntime(1285):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1920) 
+0

I Je ne sais pas quel est votre problème, mais vous devriez commencer par supprimer le premier coursor.moveToFirst(). Vous l'avez déjà dans votre if-statement. –

+0

Veuillez publier la trace de la pile complète de l'exception. – matiash

+0

également afficher votre code complet –

Répondre

0

ligne dans votre 48e en AlbumInfoActivity.java de la fonction onCreate contient une variable qui n'est pas initialisé, vérifiez ce qui est ..

+0

La raison en est que l'album revient à zéro – user3108923