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)
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. –
Veuillez publier la trace de la pile complète de l'exception. – matiash
également afficher votre code complet –