我正在开发一个Android应用程序,谷歌地图作为一个片段,当我测试它并在Android工作室运行它使用我的笔记本电脑上通过usb连接的实际设备谷歌地图片段工作正常,但当我建立一个apk文件并安装在Android设备上谷歌地图不工作我看不到地图但应用程序没有崩溃
我的项目有什么问题?
答案 0 :(得分:0)
您正在使用本地系统特定的API_KEY(具有本地系统的SHA_KEY)来创建新的API_KEY,使用SHA_KEY生成应用程序的证书。 这将是您的生产API_KEY。
答案 1 :(得分:0)
在构建应用程序并直接从工作室安装时,工作室将使用调试密钥。但在发布应用程序时,必须使用释放密钥而不是调试密钥对apk进行签名.Android SDK工具会在生成此版本证书时生成此证书。你做了一个发布版本。
因此,为了生成映射键,如果处于开发阶段,可以使用调试键生成映射键。但是当您发布应用程序时,您必须使用发布密钥获取新的地图密钥,并将其替换为清单文件中的内容。
关于签署您的应用,请参阅此link。
您的应用需要API密钥才能访问Google地图服务器。 您需要的密钥类型是Android应用程序的密钥。关键是 自由。您可以将它与任何调用它的应用程序一起使用 谷歌地图Android API v2,它支持无限数量 用户。
选择以下方法之一来获取API密钥:
快速,轻松的方式:使用Android Studio为您创建的google_maps_api.xml文件中提供的链接:
复制google_maps_api.xml文件中提供的链接并粘贴 进入你的浏览器。该链接将您带到Google Developers Console 并通过URL参数提供信息,从而减少了手册 你需要的输入。
按照说明在控制台上创建新项目或 选择一个现有项目。
为您的控制台项目创建一个Android API密钥。
复制生成的API密钥,返回Android Studio,然后粘贴 API密钥到google_maps_api.xml文件中的元素。
稍微快一点的方法:使用Android Studio为您创建的google_maps_api.xml文件中提供的凭据:
复制google_maps_api.xml文件中提供的凭据。
转到浏览器中的Google Developers Console。
使用复制的凭据将您的应用添加到现有API密钥或 创建新的API密钥。有关详细信息,请参阅complete process.
获取API密钥的完整过程:如果上述选项均不适合您的情况,请按照complete process.
进行操作
有关详细信息,请参阅此link
答案 2 :(得分:0)
要创建已发布密钥,您需要先生成keystore
。之后,您需要使用keystore
生成新的SHA1密钥。
C:\ Program Files \ Java \ jdk1.7.0_75 \ bin> keytool -list -v -keystore C:\ Users \ shvet \ Downloads \ keytool -alias android -storepass keystorename -keypass androidpass
C:\Users\shvet\ Downloads\keytool
是我的密钥库路径。
-alias android 是我在生成apk时创建密钥库时的别名。
-storepass keystorename 是密钥库密码的名称。
-keypass androidpass 是SHA1的密码。
使用此SHA1密钥生成新的Google地图密钥。