Xamarin XLabs Geolocator无法在Android上运行

时间:2017-04-09 13:47:49

标签: c# xamarin android-emulator xlabs

我在清单文件中检查了精确和粗略的位置,并且第一次在Android模拟器上运行应用程序(Android_Accelerated_x86(Android 7.1 - API 25))它记录了纬度。但是,如果我第二次部署应用程序,第三次等等,即使超时为10000毫秒(没有抛出异常),它也会无休止地运行。如果我关闭并打开模拟器并再次部署应用程序,它将再次工作,依此类推。关于如何解决这个问题的任何想法?

public static class NetworkingTools
{
    private static IGeolocator locator = Resolver.Resolve<IGeolocator>();

    static NetworkingTools()
    {
        locator.DesiredAccuracy = 50;
        locator.StartListening(2000, 0, true);
        GetPosition();
    }

    public async static void GetPosition()
    {
        var position = await locator.GetPositionAsync(10000);
        System.Diagnostics.Debug.WriteLine(position.Latitude);
    }
}

2 个答案:

答案 0 :(得分:0)

请注意他们在GitHub页面上的评论:

  

注意:此项目不再维护。它可能不适用于较新版本的Xamarin.Forms。

如果您有选择的话,我认为将它集成到您​​的项目中是不明智的。而是看看James Montemagno的Geolocator Plugin

答案 1 :(得分:0)

我遇到了同样的问题,但显然这就是模拟器的工作方式。代码没有问题,您必须打开EMULATOR设置,转到位置并点击发送。

此处有更多详情:

Getting Location on Android Emulator more then once