在我的Android应用程序上将Xamarin窗体和地图升级到2.3.3.193版本之后,当我试图显示地图时,我会收到以下错误:
{Xamarin.Forms.Platform.Android.ViewRenderer} {System.MissingMemberException} Android.Gms.Maps.MapView.get_Map‘找不到
知道怎么回事吗?它在更新之前就起作用了。如能提供任何协助,将不胜感激。
我的Nuget经理屏幕截图显示2.3.3.193是最新的稳定版本。

发布于 2017-03-10 20:19:38
Xamarin.Forms.Maps 2.3.3.193要求Xamarin.GooglePlayServices.Maps版本为29.0.0.1。不是29.0.0.1或更高!
从你的截图来看,你有42.1001.0
我在同一条船上。还得使用2016年3月建造的nuget软件包!
发布于 2017-03-16 14:29:36
更新
这个问题已在最新稳定版本的Xamarin Forms 2.3.4.224中得到修正。
原始答案
有关此问题的讨论,请参阅bug.cgi?id=52625。
谷歌删除了已经过时一段时间的java getMap方法(即使在29.0.0.1中,您也可以看到等效的Map属性被标记为过时)。表单呈现器使用Map属性(因此是底层的java getMap方法),它不再存在于较新版本的play服务中,因此会发生崩溃。表单呈现程序将需要更改以使用GetMapAsync方法。
Rob (Bugzilla讨论)创建了您可以使用的修补程序:https://www.nuget.org/packages/XamarinForms.Maps.Android.TemporaryPatch
由于PCL配置文件不匹配,我无法直接使用Nuget的修补程序,因此我最终执行了以下操作:
公共类CustomMap : Xamarin.Forms.Maps.Map {}
程序集: ExportRenderer(typeof(CustomMap),typeof( MapRenderer ))名称空间StanleySteemer.Nimbus.Mobile.Renderers { public class CustomMapRenderer :MapRenderer {}
https://stackoverflow.com/questions/42080036
复制相似问题