“nativescript-google-maps-sdk”插件显示空白屏幕

时间:2016-05-08 12:45:05

标签: android google-maps nativescript

我已在nativescript-google-maps-sdk项目中安装了NativeScript 2.0插件。

我在 Google Developer Console 中生成并激活了 Android API密钥

如插件文档中所述,我使用API​​密钥添加了字符串资源值 nativescript_google_maps_api_key ,但它不起作用。

我还尝试按官方Google文档中的说明添加 google_maps_key 字符串资源,因此我的资源文件如下所示:

<resources>
  <string name="google_maps_key">MY_API_KEY</string>
  <string name="nativescript_google_maps_api_key">MY_API_KEY</string>
</resources>

我的最后一次尝试是在 AndroidManifest.xml 文件中添加元值:

<manifest>
  <application>
      ...

      <meta-data android:name="com.google.android.geo.API_KEY"
                 android:value="MY_API_KEY" />
  </application>
</manifest>

在我的 app.gradle 文件中,我添加了对 com.google.android.gms:play-services-maps:8.3.0 包的引用。

但是nothings有帮助......我仍然有一个带有Google徽标但没有地图的空白屏幕。

4 个答案:

答案 0 :(得分:1)

我有同样的问题。 在我选中“使用主机GPU”后,它工作了

  1. 打开 Android虚拟设备(AVD)管理器
  2. 选择模拟器,然后点击修改
  3. 检查仿真器选项:使用主机GPU

答案 1 :(得分:0)

我无法正确运行此插件,可能与NativeScript 2.0不兼容。 但是,您可以使用官方 NativeScript 插件 nativescript-geolocation nativescript-googleMaps ,这些插件在iOS和Android上都能正常运行。 您可以在此处详细了解该插件:NativeScript Location

您也可以使用 nativescript-googleMaps location查看此示例应用 将项目升级到最新的NS 2.0。运行 npm install tns-core-modules @ latest --save

确实你应该添加这一行

<meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="API_KEY" />
AndroidManifest.xml

</application>结束标记之前

答案 2 :(得分:0)

我已按照demo app中显示的确切步骤操作,但它运行正常! 现在我注意到的第一件事是带有API-Key的文件位于以下

<强> App_Resources / Android的/值/ nativescript-谷歌-MAPS-api.xml

看起来像这样:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <string name="nativescript_google_maps_api_key">your-api-key-here</string>
</resources>

在map-page.xml中我们有

<Page xmlns="http://www.nativescript.org/tns.xsd" xmlns:maps="nativescript-google-maps-sdk" loaded="pageLoaded">
<GridLayout>
    <maps:mapView latitude="{{ latitude }}" longitude="{{ longitude }}" zoom="{{ zoom }}"/>
</GridLayout>

请记住,在演示中,作者通过视图模型传递了参数 您可以随时为测试用户提供纬度,经度和缩放值。 这就是插件工作所需的一切。

答案 3 :(得分:0)

如果您遇到此问题,并且您尝试的所有内容似乎都无法执行任何操作,我建议您检查Android日志。

adb logcat

检查以下内容: Google Maps Android API:Google Maps Android API v2仅支持使用OpenGL ES 2.0及更高版本的设备

这是我的问题。我使用的模拟器不支持OpenGL的规定版本。所以我创建了一个新的模拟器,检查使用主机GPU ,这似乎治愈了带有徽标问题的空白地图。

我认为使用主机GPU 是关键。我使用的旧模拟器没有这个选项,所以我无法验证这一点。