Совместное использование скриншота mkmapview

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

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

Спасибо!

3 ответа

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

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

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

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

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

- (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 к этому методу, и теперь вы можете поделиться своим изображением mapview в любом месте.

Другие вопросы по тегам