我是一个拥有相当大的Delphi应用程序团队的成员。现在我们已经开始查看mapsupport。而我们认为,与一些地图组件相比,Googlemap似乎是最有价值的钱。目前的解决方案(真的很糟糕)通过从ShellExecute启动Internet Explorer,在Googlemap URL中加载一些坐标。然后,Google地图显示通过坐标驱动的最佳方向。
它的工作原理,但如果坐标的数量高于10,可能会很慢。此外,IE中似乎有很大的缺陷
另一个选择是使用TWebBrowser组件,并加载一个Googlemap html文件来显示相同的东西。是的,我知道Googlemaps许可证政策,我们准备在实际使用该解决方案时向Google支付价格。
现在我已经为我自己的网站注册了一个API密钥进行测试。我还发现它可以加载一个本地的html文件。从Javascript我可以调用GUnload消除根据Googlemap文档的memleaks。由于API密钥绑定到一个域或本地文件,我想我必须保存一个具有坐标的javascript文件,然后在TWebBrowser中将其加载到对地图的每次调用。我发现这个笨拙,但我看不到别的方式?
还有其他选项可以使用Google地图吗?由于性能不佳和内存管理,我不知道Delphi的其他html组件比TWebBrowser。我想使用Mozilla组件,但似乎只适用于C。
关于这个的意见和建议?
解决方法
如果您想要获取路线,并且您准备编写一些JavaScript,您可以使用GDirections,这是GoogleMaps API的一部分。
我有一个示例Delphi程序在Google Maps in a TWebBrowser from Delphi: Directions,你可能会发现有用的。 (Zip of project)。