我有一张地图,上面有很多东西,我想以图片/屏幕截图的形式分享。
然而,据我所知,地图——Apple 的 iOS 6 和 Google 的 iOS 5——都受版权保护,我不能简单地这样做。我想到了谷歌静态地图 API,但我没有找到类似的苹果地图可用。我怎样才能在不违反他们的规则并仍然使用 MapKit 框架的情况下分享地图视图图片?
谢谢!
我有一张地图,上面有很多东西,我想以图片/屏幕截图的形式分享。
然而,据我所知,地图——Apple 的 iOS 6 和 Google 的 iOS 5——都受版权保护,我不能简单地这样做。我想到了谷歌静态地图 API,但我没有找到类似的苹果地图可用。我怎样才能在不违反他们的规则并仍然使用 MapKit 框架的情况下分享地图视图图片?
谢谢!
我正在为自己与共享 Apple 地图快照及其轨道信息的法律而苦苦挣扎。向 Apple 技术支持发送了询问,被重定向到 App Review 团队,到目前为止只得到了带有指南链接的答案。通过点击“法律”链接阅读许可证信息,是的,所有权利都是“保留的”。向 Tom Tom 发送请求,询问他们是否会对这种个人分享感到难过。
如果我们不能,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;
}
只需将您的 mapview To uiview 和 pas uiview 添加到此方法,现在您可以将您的 mapview 图像共享到任何地方。
您究竟想如何分享它?
如果通过电子邮件,那么您可以发送嵌入在电子邮件正文中的地图,因此它甚至是交互式的。