विफल होने पर मैं ContentProvider
मीडिया के साथ एमपी 3 जोड़ रहा था।प्रविष्टि विफल होने पर
// LOOP1_PATH: /mnt/sdcard/60AH/hack043/loop1.mp3
ContentValues values = new ContentValues(5);
values.put(Media.ARTIST, "Android");
values.put(Media.ALBUM, "60AH");
values.put(Media.TITLE, "hack043");
values.put(Media.MIME_TYPE, "audio/mp3");
values.put(Media.DATA, LOOP1_PATH);
getContentResolver().insert(Media.EXTERNAL_CONTENT_URI, values);
यह काम करता है आप इस कोड को चलाते हैं:
कोड कुछ इस तरह है। आप इसे चलाने की कोशिश करें, तो दो बार आप निम्नलिखित स्टैकट्रेस मिल जाएगा:
E/Database(4102): Error inserting album_id=66 title=hack043 title_keyQQQQQ*Q*Q*Q mime_type=audio/mp3 date_added=1342706644 _display_name=loop12.mp3 sort_key=hack043 artist_id=133 _data=/mnt/sdcard/60AH/hack043/loop1.mp3
E/Database(4102): android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed
E/Database(4102): at android.database.sqlite.SQLiteStatement.native_execute(Native Method)
E/Database(4102): at android.database.sqlite.SQLiteStatement.execute(SQLiteStatement.java:61)
E/Database(4102): at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1582)
E/Database(4102): at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1426)
E/Database(4102): at com.android.providers.media.MediaProvider.insertInternal(MediaProvider.java:2166)
E/Database(4102): at com.android.providers.media.MediaProvider.insert(MediaProvider.java:1984)
E/Database(4102): at android.content.ContentProvider$Transport.insert(ContentProvider.java:206)
E/Database(4102): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:146)
E/Database(4102): at android.os.Binder.execTransact(Binder.java:320)
E/Database(4102): at dalvik.system.NativeStart.run(Native Method)
नहीं 100% यकीन है कि, लेकिन मैं विवश विफल रहता है क्योंकि पथ UNIQUE
है लगता है।
मेरा प्रश्न यहाँ है:
वहाँ एक रास्ता विवश त्रुटि के बारे में और अधिक जानकारी प्राप्त करने के लिए है?
एपीआई संस्करण गुम है। क्या आपको वास्तव में * अधिक जानकारी चाहिए *? मेरा मतलब है कि आप हमेशा पहले पूछ सकते हैं और केवल क्वेरी वापस खाली होने पर ही सम्मिलित कर सकते हैं। – dualed