#iphone #security #ios4 #photo
#iPhone #Безопасность #ios4 #фотография
Вопрос:
Я действительно хотел попробовать создать приложение, которое хранит фотографии и защищено паролем, как и другие существующие приложения. IE. Только для моих глаз и т.д. Я не прошу никого здесь давать мне пошаговые инструкции о том, как его создать (хотя было бы неплохо;). Я спрашиваю, с чего мне вообще начать? Я хотел бы использовать контроллер split view, и я пытался заставить его работать. Заранее спасибо,
Тейт
Ответ №1:
с высокого уровня.. вот некоторые пункты, о которых я бы подумал…
где вы будете хранить изображения? Сервер локальный? если локальное, где вы будете хранить изображения? Библиотека фотографий IOS или каталог вашего приложения?
далее, как вы будете отображать изображения? в iPhone нет готового средства просмотра эскизов фотографий с несколькими столбцами и несколькими строками (о котором я знаю).. следовательно, вам нужно будет создать собственное приложение на основе UIScrollView
Я бы также хотел иметь возможность переходить от изображения к изображению в полноэкранном режиме, это тоже можно было бы сделать с помощью UIScrollView с включенной подкачкой, каждая страница содержит другой UIScrollView (для масштабирования и панорамирования), который содержит imageview.
следующим в моем списке было бы управление памятью. если я показываю несколько изображений на странице, я не смогу отобразить исходные изображения, и мне не хотелось бы их загружать, поэтому у каждого изображения должен быть отрисован и сохранен эскиз. существует хороший код для изменения размера изображения.
далее следует проблема захвата изображения .. вашим контроллером там будет UIImagePickerController.
далее следует проблема с паролем. Если вы полусерьезно относитесь к его защите .. сохранение его в связке ключей — ваш выбор. Если это всего лишь простой PIN-код, и кого действительно волнует, взломан ли он.. затем просто сохраните его в NSUserDefaults.
вот код для чтения изображения из вашего каталога doc
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *docDir = [paths objectAtIndex:0];
NSString *path = [[NSString alloc]initWithFormat: @"%@/%@",docDir,name];
NSMutableData *data = [[NSMutableData alloc] initWithContentsOfFile:path];
if(data)
{
image = [UIImage imageWithData:data];
}
[data release];
[path release];
и отсюда, я уверен, вы могли бы сделать гораздо больше .. но это, по крайней мере, хорошая отправная точка.
Комментарии:
1. Спасибо! Это просто мое личное приложение, и я хочу иметь возможность просматривать изображения без подключения к Интернету, поэтому я буду хранить их локально, используя nsuserdefaults в качестве пароля. Что касается их отображения, я надеялся, что контроллер разделенного просмотра с контроллером корневого просмотра сможет отображать список всех изображений, когда я нажимаю на название изображения, оно показывает изображение в подробном виде. Единственная проблема заключается в их импорте. Я хочу иметь возможность импортировать фотографии из приложения «Фотографии». Хотя я не знаю, как к этому подойти.
2. Массовый импорт или выбирать по одному за раз?
3. Что ж, на данный момент я хотел бы сделать то, что проще всего, но предпочтительнее массовый импорт.
4. Для массового использования требуется немного больше кода, который я могу получить через несколько часов. Но чтобы получать по одному изображению за раз, вы будете использовать UIImagePickerController и устанавливать его исходный код в библиотеку изображений.
5. Если бы вы могли достать мне код для массового импорта, это было бы потрясающе! Однако существует проблема с хранением фотографий. Должен ли я использовать базу данных или что-то подобное?
Ответ №2:
Как и в любом крупном проекте, я бы посоветовал вам начать с небольших примеров, а затем доработать. Например, попробуйте создавать небольшие приложения, которые:
- Для доступа (или для возврата, если пользователь переключится обратно на приложение или время ожидания экрана истечет!) требуется пароль безопасности!)
- Хранить фотографии
- Разрешить пользователям настраивать разные категории
- Отображайте фотографии в удобном виде, например, миниатюры, масштабирование, слайд-шоу
- исследуйте контроллеры с разделенным просмотром
После того, как вы опробуете все эти идеи в мини-приложениях, у вас будет гораздо лучшее представление о том, как создать свое более крупное [pr0n-хранение;)] приложение для обработки изображений…