我有两种构建口味。 每个都有调试和发布版本类型。
我有两个googleservice.json用于两种构建风格。 除gmail登录外,所有工作正常。
在本地gmail登录工作正常。 但是在将app上传到playstore后,gmail登录无效。 我在firebase控制台中更新了两个用于调试和发布的sha1密钥。并获取最新的googleservice.json文件。
但仍然面临游戏商店的问题。
我在我的节目中有这个
-keep class com.google.android.gms。** {*; }
-dontwarn com.google.android.gms。**
我提到你所有的stackoverflow问题,但仍然没有得到答案。
谢谢, Arunraj M
答案 0 :(得分:2)
在已注册的项目下,在Google Developers Console中添加我的发布密钥(.jks文件)的SHA1密钥。
在 request.addValue("application/x-www-form-urlencoded", forHTTPHeaderField: "Content-Type")
左侧,项目视图下有一个Build变体选项。在那里,我将每个模块更改为释放模式(默认情况下它处于调试模式)。然后通过常规方法创建签名APK,并运行该应用程序。
Google Signin运作完美。
点击此链接 Google sign in signed apk not working
在添加SHA-1之后,Google Developers Console将替换为google-services.json
注意:Google的JSON文件只应该是项目中的一个
答案 1 :(得分:0)
问题是您正在使用调试sha1密钥您必须生成版本SHA1密钥
要生成Release SHA1,首先转到JAVA JRE Bin文件夹并在那里打开命令提示符或直接打开命令提示符并转到JAVA JRE bin文件夹,例如:C:\ Program Files(x86)\ Java \ jre7 \ BIN>
然后使用下面的命令生成释放SHA1键,
keytool -list -v -keystore <keystore_path> -alias <alias_name>
示例:
我的密钥库路径:D:\ AndroidProjects \ my_app_key_store.jks
我的别名:my_app_alias
现在使用以下命令生成您自己的keytool路径:
keytool -list -v -keystore D:\AndroidProjects\my_app_key_store.jks -alias my_app_alias