当我手动为我正在处理的应用安装APK时,我无法登录Google Play服务。屏幕上没有给出错误,但我知道它失败了,因为没有Google Play服务工作,“已连接”属性是错误的。
我使用 adb catlog 连接到正在运行的应用,并注意到此错误似乎相关:
E/SignInIntentService( 1266): Access Not Configured. Please use Google Developer
s Console to activate the API for your project.
E/SignInIntentService( 1266): dix
E/SignInIntentService( 1266): at dec.a(SourceFile:151)
E/SignInIntentService( 1266): at cqe.a(SourceFile:331)
E/SignInIntentService( 1266): at cqe.a(SourceFile:312)
E/SignInIntentService( 1266): at cph.a(SourceFile:634)
E/SignInIntentService( 1266): at djo.a(SourceFile:250)
E/SignInIntentService( 1266): at com.google.android.gms.games.service.GamesSig
nInIntentService.onHandleIntent(SourceFile:389)
E/SignInIntentService( 1266): at android.app.IntentService$ServiceHandler.hand
leMessage(IntentService.java:65)
E/SignInIntentService( 1266): at android.os.Handler.dispatchMessage(Handler.ja
va:99)
E/SignInIntentService( 1266): at android.os.Looper.loop(Looper.java:137)
E/SignInIntentService( 1266): at android.os.HandlerThread.run(HandlerThread.ja
va:61)
E/LoadSelfFragment(16340): Unable to sign in - application does not have a regis
tered client ID
W/SignInActivity(16340): onSignInFailed()...
W/SignInActivity(16340): ==> Returning non-OK result: 10004
可在此处找到完整日志:http://pastebin.com/KDFbJ4un
当我从Xamarin Studio运行应用程序时,我可以毫无问题地登录Google Play服务。但是,现在我想测试应用内结算,我认为我需要运行已签名的APK,我上传了Android开发者控制台,所以我手动安装了APK。
为了让我的常规应用程序连接到Google Play,我需要做些什么特别的事情吗?有没有更好的方法来测试Xamarin Studio中的应用内结算?
答案 0 :(得分:1)
是不是因为签名密钥或包名称在Google控制台中没有权限?
您需要登录Google Developer Console,将SHA1添加到您的应用的密钥和包名称中。您可以使用
获得SHA1keytool -exportcert -alias androiddebugkey -keystore <path-to-debug-or-production-keystore> -list -v
Mac和Linux上调试密钥库的路径位于您的主目录中,位于名为.android
的{{1}}隐藏目录中,密码为~/.android/debug.keystore
在Windows上,我猜它在android
,但我没有Windows验证。
答案 1 :(得分:0)
我已经乱了一天左右,它终于开始工作了。我尝试了很多不同的东西,所以我不是100%肯定是什么解决了这个问题,但我认为这就是它的作用:
我将以下内容添加到我的android清单文件中:
<uses-permission android:name="com.android.vending.INTERACT_ACROSS_USERS_FULL" />
我这样做是因为我在logcat中发现了其他错误:
W / ActivityManager(465):权限拒绝:用户的获取/设置设置 要求ru为用户-2,但是从用户0调用;这需要 android.permission.INTERACT_ACROSS_USERS_FULL
我认为这种情况一直在发生,因为我已将多个Google +用户添加到我的手机中(以测试应用内购买)。