【问题标题】:Trying to use Naxam.Mapbox.iOS show blank page with Mapbox icon but no map尝试使用 Naxam.Mapbox.iOS 显示带有 Mapbox 图标但没有地图的空白页面
【发布时间】:2020-10-19 17:22:58
【问题描述】:

我一直在尝试让示例适用于 Naxam.Mapbox.iOS,如下所述:https://blogs.naxam.net/using-mapbox-in-xamarin-ios-ffa9bdee13f4

我在装有 MacOS Catalina 10.15.4 的 MacBook Pro 上使用 Visual Studio/Xamarin 8.6.5。我将 NuGet Packages Naxam.Mapbox.iOS 5.4.0 和 Xamarin.Essentials 1.5.3.2 添加到我的项目中。我在 Mapbox.com 创建了一个帐户,并在项目中使用了一个访问令牌,我将其作为 MGLAccountManager.AccessToken 属性添加到 Info.plist 文件中。该项目是使用 iOS Single View App 模板创建的。最后,我将 --registrar:static 参数添加到 iOS 构建中的 Additional mtouch 参数中。

我将博文的第一个sn-p添加到我的项目中,如下:

namespace MapboxSingleView
{
    public partial class ViewController : UIViewController
    {
        public ViewController(IntPtr handle) : base(handle)
        {
        }

        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var map = new MGLMapView(View.Bounds, new NSUrl("mapbox://styles/naxamtest/cj5kin5x21li42soxdx3mb1yt"));
            View.AddSubview(map);
        }

        public override void DidReceiveMemoryWarning()
        {
            base.DidReceiveMemoryWarning();
        }
    }
}

尝试在我的模拟器中使用 Debug -> iPhone 11 iOS 13.5 显示一个空白/白色页面,左下角只有 Mapbox 徽标,但根本没有显示实际地图。

尝试不使用 NSUrl 或按照描述添加地图的中心和缩放级别 sn-p 也无济于事。我尝试联系 Naxam,但到目前为止还没有收到他们的任何回复。

我错过了什么?

【问题讨论】:

    标签: ios macos visual-studio xamarin mapbox


    【解决方案1】:

    您可以看到 Mapbox 徽标表明您已正确完成安装。空白白页通常归结为访问令牌的问题。你说你加了

    MGLAccountManager.AccessToken
    

    到您的 info.plist 文件。教程页面链接中的 gif 显示,如果您在 info.plist 文件中添加条目,则只需添加:

    MGLAccountManager (with a value of <Your Mapbox access token>)
    

    到那个文件。如果您希望在代码中添加访问代码,请使用:

    MGLAccountManager.AccessToken = "<Your Mapbox access token>"
    

    因此,它会根据您是要在 info.plist 文件中输入代码还是在您自己的代码中输入一行而有所不同。

    【讨论】:

    • 感谢您的快速回复。我确实将访问令牌的值添加到 Info.plist 文件中。如果我 cat 那个文件,我会看到这个 sn-p:` ... MGLAccountManager.AccessTokenpk.xxx` 这不是在Info.plist 文件中的正确位置? (我显然用 x 掩盖了访问令牌。)
    • 在 info.plist 文件中,您的密钥应该是 MGLAccountManager 而不是 MGLAccountManager.AccessToken,就像 gif 中显示的那样。
    • 很抱歉,我仍然使用我创建的访问令牌或默认的公共访问令牌使用&lt;key&gt;MGLAccountManager&lt;/key&gt; 看到相同的空白/白页。我想我开始感到困惑了。 Mapbox (mapbox.com/install/ios/download-permission) 显示 MGLMapboxAccessToken 而不是 MGLAccountManager,但尝试也无济于事。
    • 我试图切换到一个 Android 解决方案,只是想看看我是否可以通过 Naxam 的示例 (blogs.naxam.net/using-mapbox-in-xamarin-android-7ffe2466f5f7) 得到一些东西。我下载了很多 NuGet 包,但是没有找到提到的 MapboxAccountManager。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-25
    • 1970-01-01
    • 2011-08-18
    • 1970-01-01
    • 2023-03-14
    • 2021-03-31
    相关资源
    最近更新 更多