2016-03-18 34 views
3

我已经创建了一个跨平台的应用程序使用Xamarin形式。在Mac Pro的书(EL-匹) 我需要使用这样使用Xamarin.Forms.Maps下面 Manifest fileXamarin表格项目空白谷歌地图上的模拟器和设备

我已生成使用SHA1在谷歌开发者控制台的API密钥 我的清单文件给出了它的地图签名。在Mac我用下面的命令

keytool -genkey -alias ftpKey -keystore privateKey.store 

keytool -list -v -keystore privateKey.store 

这使我的SHA1关键

对于作为包com.xrmlabs.submyclass给予我已经使用完全相同的名称包的名称。对于图生成

代码下面

constructor of tabbed page

给出这既是物理设备(API级22)以及Xamarin Android模拟器(API级别16)上的输出。在调试模式下的一切

Output on Emulator

我已经使用定位服务也由该代码是显而易见的,但我已删除它现在让事情变得简单。 当我运行应用程序时,没有错误。

因为这是我的第一个应用程序,我可能会做错误的方式。我已经通过了如下回答 Android Studio - Google map still blank on real Android device

Android: Blank page when using google map api 2

+0

你试过缩放/平移吗?你确定你不只是查看地图的空白区域吗? – Jason

+0

我在运行Android 6的设备上获得此信息。我认为它是一种权限。在Xamarin Maps中的错误 – user1

+0

如果你看看你的调试输出,我相信应该有某种消息指出应用程序和Google Maps之间的API通信。你是否收到任何特定的消息?我知道你说过包名称正确匹配,但请确保它是双倍和三倍检查。目前在Android 6设备上目前还没有这类问题。 – Paul

回答

0

尝试过在AndroidManifest下面添加您的API KEY元数据验证码:

<meta-data 
     android:name="com.google.android.gms.version" 
     android:value="@integer/google_play_services_version" /> 
0

有它可以创造这样的几件事情问题 1.检查您的系统和设备的日期和时间是否正确 2.检查您的[https://console.developers.google.com]中的Google地图API是否已启用 3.如果您更改了java版本或路径fo r该项目会创建新的SHA1指纹,并与旧版指纹发生冲突,所以即使检查 工具>选项> Xamarin> Android选项> Java keytool路径。 以及我的电脑的环境变量中设置的路径 因为它有时会显示由于SHA1指纹导致的验证错误。同时在运行应用程序时检查输出窗口,它会准确地告诉您错误的位置。你可以尝试创建新的API密钥,并且不要忘记将其添加到清单文件中。