共享mkmapview截图

时间:2013-07-22 11:15:40

标签: ios mkmapview mapkit share apple-maps

我有一张地图上有很多东西,我想以图片/截图的形式分享。

然而,据我所知,地图 - 苹果的iOS 6和Google的iOS 5 - 都受版权保护,我不能简单地这样做。 我想到了谷歌静态地图API,但我找不到类似的Apple地图可用。 如何在不违反规则且仍然使用MapKit框架的情况下共享mapview图片?

谢谢!

3 个答案:

答案 0 :(得分:2)

我正在努力解决与地图信息共享Apple地图快照的法律问题。向Apple技术支持发送了一个查询,被重定向到App Review团队,到目前为止只获得了指南链接的答案。通过点击“Legal”链接阅读许可信息,是的,所有权利都是“保留”。向Tom Tom发送了一个请求,询问他们是否会对此类个人共享感到不满。

对于Apple而言情况相当悲伤,因为我不得不尽快使用OSM地图来显示我的应用程序中的曲目和Apple地图用例(我想其他许多其他人)都归零。

对于答案,我正在考虑只保留一个用于保存地图/轨道快照的选项:“保存到相机胶卷”。如果用户可以随时截取屏幕截图,我可以在没有工具栏等的情况下准备“更好”的图像,然后用户可以使用相机胶卷中的图像做他们需要做的事情吗?我只提供他们自己可以裁剪的图像?我不需要关心他们是否以及如何分享?

所以这只是一个建议,看看它是否合理......

答案 1 :(得分:0)

您希望如何分享它? 如果通过电子邮件发送,那么您可以发送嵌入在电子邮件正文中的地图,这样它甚至可以互动。

答案 2 :(得分:0)

- (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;
}

只需将您的mapview添加到uiview和此方法的视图,现在您可以将mapview图像分享到任何地方。