Делимся скриншотом mkmapview

У меня есть карта с множеством вещей, которыми я хотел бы поделиться в виде картинки/скриншота.

Однако, насколько я знаю, карта — как iOS 6 для Apple, так и iOS 5 для Google — защищена авторским правом, и я не могу просто так это сделать. Я подумал об API статических карт Google, но не нашел ничего подобного для карт Apple. Как я могу поделиться изображением карты, не нарушая их правил, и при этом использовать структуру MapKit?

Спасибо!


person Templar    schedule 22.07.2013    source источник
comment
Попробуйте это stackoverflow.com/questions/2200736/   -  person Kalpesh    schedule 22.07.2013
comment
@Kalpesh Я могу без проблем сделать снимок экрана, мой вопрос в том, как я могу поделиться им на законных основаниях.   -  person Templar    schedule 22.07.2013


Ответы (3)


Я борюсь с законами обмена снимком карты Apple с информацией о треке. Отправил запрос в службу технической поддержки Apple, был перенаправлен в команду App Review, получил пока только ответ со ссылками на рекомендации. Прочитайте информацию о лицензии, нажав на ссылку «Юридическая информация», и да, все права «зарезервированы». Отправил запрос Тому Тому, спрашивая, будут ли они чувствовать себя плохо из-за такого личного обмена.

Ситуация довольно грустная для Apple, если мы не можем, так как скоро мне придется прибегнуть к карте OSM для отображения треков, а варианты использования карты Apple в моем приложении (и, я думаю, во многих других) сведутся к нулю.

Что касается ответа, я думаю оставить только один вариант сохранения снимка карты/трека: «Сохранить в фотопленку». Если пользователь может сделать снимок экрана в любой момент, я могу просто подготовить «лучшее» изображение без панелей инструментов и т. д., а затем пользователи могут делать с изображением в галерее все, что им нужно? Я только предоставляю изображение, которое они могли обрезать сами? Мне все равно, если и как они делятся?

Так что это просто предложение пройти и посмотреть, звучит ли это разумно...

person Stanislav Dvoychenko    schedule 30.08.2013
comment
Ну, я все еще борюсь с этой проблемой. Я действительно мог сохранить изображение в фотопленке. Но пользователи ленивы, и это будет еще один разочаровывающий шаг перед публикацией, если я создам этот обход авторских прав, чтобы снова открыть скриншот их карты. В настоящее время я создаю аналогичный макет с помощью Google Static Maps. Это похоже, но не совсем то же самое, что и обычный MKMapView. Грустно... - person Templar; 02.09.2013

Как именно вы хотели бы поделиться ею?
Если по электронной почте, то вы можете отправить карту, встроенную в тело письма, чтобы она была даже интерактивной.

person Dominik Hadl    schedule 22.07.2013
comment
Да, в электронной почте есть много возможностей, включая вставку html, но мне нужен какой-то универсальный метод, который я мог бы использовать для твиттера или фейсбука в виде картинки. - person Templar; 22.07.2013
comment
Затем вы должны использовать некоторые карты с открытым исходным кодом или карты с лицензиями, которые позволяют вам делать изображения и распространять их. - person Dominik Hadl; 22.07.2013

- (UIImage *) imageFromView:(UIView *)view {

    UIGraphicsBeginImageContext(view.frame.size);
    CGContextRef currentContext = UIGraphicsGetCurrentContext();
    CGContextTranslateCTM(currentContext, 0, view.size.height);
    // passing negative values to flip the image
    CGContextScaleCTM(currentContext, 1.0, -1.0);
    [[appDelegate.scatterPlotView layer] renderInContext:currentContext];
    UIImage *screenshot = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();
    return screenshot;
}

Просто добавьте свое представление карты в uiview и представление pas uiview в этот метод, и теперь вы можете поделиться своим изображением представления карты где угодно.

person Divyam shukla    schedule 22.07.2013