我已在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徽标但没有地图的空白屏幕。
答案 0 :(得分:1)
我有同样的问题。 在我选中“使用主机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 是关键。我使用的旧模拟器没有这个选项,所以我无法验证这一点。