Что происходит с идентификаторами из MediaStore, когда некоторые элементы удаляются? - PullRequest
0 голосов
/ 26 апреля 2010

Предположим, что: я удаляю элемент со своей SD-карты, а затем отключаю карту памяти.

Что происходит, когда Android повторно сканирует мою SD-карту на предмет изменений? В MediaStore у каждой строки есть _ID, поэтому после удаления элемента, что происходит с этим _ID:

  • Он остается в MediaStore, связан с другим элементом или
  • он удален навсегда?

1 Ответ

1 голос
/ 30 января 2011

У меня был тот же вопрос, и лучший способ узнать ответ - пройти тест.

на основании того, что я видел, это работает так:

1) Идентификатор запускается с 1 и увеличивается на 1 при добавлении новых изображений или видео с помощью медиа-сканера

2) если вы удалите файл, и mediascanner еще не знает об этом, и вы попытаетесь извлечь его из mediastore, запись все равно будет там

3) как только mediascanner увидит, что файл пропал, он удалит запись из mediastore db

4) идентификатор удаленной записи не будет использоваться, поэтому, если у вас было три элемента с идентификаторами 1,2,3 и удаляете элемент 2 и добавьте новый, список будет выглядеть как 1,3,4 поэтому удаленные идентификаторы не будут использоваться повторно

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...