Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/208.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如果没有从Eclipse安装apk,Android Map将不起作用_Android_Eclipse_Map_Android Mapview - Fatal编程技术网

如果没有从Eclipse安装apk,Android Map将不起作用

如果没有从Eclipse安装apk,Android Map将不起作用,android,eclipse,map,android-mapview,Android,Eclipse,Map,Android Mapview,在一个项目中,当我直接通过EclipseIDE在手机上安装应用程序时,我可以看到地图功能完美 但是,如果我通过电子邮件将apk发送给某人,他们将其安装在设备上,尽管应用程序正常工作,但他们无法看到地图,只能看到一个空白网格 我们在项目中已经有了MapKey。对于非市场应用程序,如果应用程序未通过Eclipse IDE安装在我的系统上,我如何显示地图?您的Google Maps API密钥可能与您用于签署应用程序的证书不匹配,因为如果您使用不同的密钥签署开发版本和发布版本,您需要为每个证书获取单独

在一个项目中,当我直接通过EclipseIDE在手机上安装应用程序时,我可以看到地图功能完美

但是,如果我通过电子邮件将apk发送给某人,他们将其安装在设备上,尽管应用程序正常工作,但他们无法看到地图,只能看到一个空白网格


我们在项目中已经有了MapKey。对于非市场应用程序,如果应用程序未通过Eclipse IDE安装在我的系统上,我如何显示地图?

您的Google Maps API密钥可能与您用于签署应用程序的证书不匹配,因为如果您使用不同的密钥签署开发版本和发布版本,您需要为每个证书获取单独的Maps API密钥


请检查此页面以了解如何为Google Maps API生成正确的API密钥:

每个API密钥都与该证书绑定。在eclipse中运行项目时,它使用调试密钥库。导出它时,很可能使用了不同的密钥库,因此您的maps api密钥不再有效。获取用于对导出的apk进行签名的密钥库,并获取一个新的api密钥。在开发和发布应用程序时,您需要来回交换map api密钥。希望对您有所帮助。

“当您导出它时,您很可能正在使用不同的密钥库,因此您的maps api密钥不再有效。”

不完全正确,您可以从Eclipse导出,然后使用密钥对地图进行签名

所以完整的算法是:

1. Export with Eclipse

2. Create key - remember path (say mypath/myawesomeapp.key)
然后打开终端,用键转到文件夹并键入终端

keytool -list -keystore myawesomeappkey.key 

然后在第页中获取证书指纹

是否已签名?您是否在Eclipse中使用Android工具菜单中的导出选项?其他设备的位置服务和网络是否在线且正常工作?对于调试或个人使用,您可以使用Google/Android的无需自己的密钥对其进行签名。@Flynn81:是的,它已签名,我正在使用Eclipse中的导出选项生成apk。每个api密钥都与该证书绑定。在eclipse中运行项目时,它使用调试密钥库。导出它时,很可能使用了不同的密钥库,因此您的maps api密钥不再有效。获取用于对导出的apk进行签名的密钥库,并获取一个新的api密钥。在开发和发布应用程序时,您需要来回交换map api密钥。希望这能有所帮助。@flyn81:谢谢你的澄清。如果您将您的评论作为回答,我将很乐意接受:)