所以我有一个iOS问题。
我有一个应该从地址获取位置的方法。我使用xamarin.forms.maps中的地理编码方法,它在android上工作正常,它给了我正确的位置,做它应该做的事情,但在iOS上它不起作用。
出于某种原因,在我运行这行代码之后:
var geoPositions = await geocoder.GetPositionsForAddressAsync(tuple.address);
方法中的其余代码不会执行,它只是跳到方法的末尾而不执行任何其他操作。 我没有得到错误或异常或任何东西,它只是退出方法并继续做其他的东西。 我试图使用不同的地址来查看是否存在问题,但同样的事情发生了,当我尝试使用带坐标的GetAddressForPositionAsync方法时也会发生这种情况。
我正在使用真实设备来测试应用程序,iOS 6版本为iOS 11.2.6,是的,我在info.plist中添加了所有必需的权限
非常感谢任何了解这种情况发生的原因,谢谢。
答案 0 :(得分:0)
所以我想出了问题所在。 显然我得到了一个例外,我出于某种原因无法看到。
System.InvalidOperationException:你必须调用Xamarin.FormsMaps.Init();在使用之前。在Xamarin.Forms.Maps.Geocoder.GetPositionsForAddressAsync。
有一次我注意到了,我看到了
Xamarin.FormsMaps.Init();
只被添加到android的主要活动中,而不是iOS中。 我补充说,现在它正常工作。