2012-05-28 4 views
4

Я хочу дублировать изображение из Библиотеки фотографий, но я хочу проверить в будущем, если я уже импортировал это изображение.ALAsset Уникальный идентификатор

Импортируйте этот сценарий.

  1. У меня есть фотография в моей библиотеке фотографий.
  2. Я импортирую его в свое приложение, сделав его копию.
  3. Я удаляю эту фотографию из своей библиотеки.
  4. В более позднее время я снова вставьте эту картинку на мою библиотеку фотографий (Same фото из Iphoto, просто не синхронизироваться это альбом раньше, и у меня сейчас)

Есть уникальный идентификатор, который можно использовать для сравнить две фотографии? уникальный URL? Или мне нужно искать метаданные и пытаться их сопоставить? Если да, что бы вы предложили? Созданные данные и местоположение? Только что созданная дата? Размер?

Спасибо за ваш совет.

ответ

3

Наблюдения

Я работаю с аналогичной функциональностью, так это то, что я знаю:

  • Каждая фотография вставляется в библиотеку фотографий будет иметь уникальный URL (это означает, что если вставить изображение, удалить его, а затем вставить его снова, даже если это одно и то же изображение, у него будет новый URL-адрес).
  • Нет прямого способа узнать, является ли образ дублированным предыдущего изображения или нет.
  • Я не думаю, что вы пытаетесь это сделать, но я предупреждаю вас, что вы не можете удалить изображение программно из библиотеки фотографий iPhone.

Solutions

Я действительно только один способ обработки: Создание хэш фотографии и хранить хэш где-то. Если вставленная фотография - это то же фото, что и раньше, оно должно дать вам тот же хеш. Вы можете использовать это хеш-сравнение, чтобы определить, используете ли вы ту же фотографию или нет. Это метод, который я использую, и он, по-видимому, работает надежно по большей части. Я заметил некоторые расхождения, но обычно это связано с тем, что моя работа хеширует файлы до их добавления в библиотеку фотографий (я заметил, что сохраненная фотография может отличаться от сохраненной фотографии).

Надеюсь, эта информация поможет. Дайте мне знать, если я пропустил что-либо или вы заметили разные результаты в своей работе.

+0

Спасибо за ваши наблюдения. Очень полезно. Тот факт, что если вы удалите изображение из библиотеки, и если вы добавите его снова, то это действительно очень жаль, но я думаю, что это необходимо. Они должны обрабатывать случай одного и того же файла с тем же именем и той же датой и т. Д. К счастью, мне не нужно пытаться сопоставлять фотографии, это будет больно, но описанная техника кажется той, на которую я бы пошел , Я был обеспокоен тем, что URL-адреса меняются, если вы просто обновляете библиотеку, но они не очень хороши. Еще раз спасибо. –