android - 谷歌播放服务实现
问题描述
我想将 google play 服务添加到我的应用程序中,但出现错误。我在游戏控制台上创建了一个排行榜,并添加了 games-ids.xml app_Id 、排行榜 ID 和包名称。我不知道我能做什么?
像这样的代码块:
class MainActivity : AppCompatActivity() {
private var counter:Int=0
private var googleSignInClient: GoogleSignInClient? = null
private var achievementClient: AchievementsClient? = null
private var leaderboardsClient: LeaderboardsClient? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
initGoogleClientAndSignin()
leaderboardsClient?.submitScore("leader_board_id", counter.toLong())
button1.setOnClickListener {
counter += 1
tvDisplay.text=counter.toString()
}
}
fun initGoogleClientAndSignin() {
googleSignInClient = GoogleSignIn.getClient(this,
GoogleSignInOptions.Builder(
GoogleSignInOptions.DEFAULT_GAMES_SIGN_IN).build())
googleSignInClient?.silentSignIn()?.addOnCompleteListener{ task ->
if (task.isSuccessful) {
achievementClient = Games.getAchievementsClient(this,
task.result!!)
leaderboardsClient = Games.getLeaderboardsClient(this,
task.result!!)
} else {
Log.e("Error", "signInError", task.exception)
}
}
}
fun showAchievements(view: View) {
achievementClient?.achievementsIntent?.addOnSuccessListener { intent ->
startActivityForResult(intent, 0)
}
}
fun showTopPlayers(view: View) {
leaderboardsClient?.allLeaderboardsIntent?.addOnSuccessListener {intent ->
startActivityForResult(intent, 0)
}
}
}
当我运行应用程序时没有 google 登录或当我单击按钮时没有任何反应,这也是错误:
signInError
com.google.android.gms.common.api.ApiException: 8: 8:
at com.google.android.gms.common.internal.ApiExceptionUtil.fromStatus(Unknown Source:4)
at com.google.android.gms.common.internal.zai.zaf(Unknown Source:2)
at com.google.android.gms.common.internal.zaj.onComplete(Unknown Source:6)
at com.google.android.gms.common.api.internal.BasePendingResult.zaa(Unknown Source:172)
at com.google.android.gms.common.api.internal.BasePendingResult.setResult(Unknown Source:131)
at com.google.android.gms.auth.api.signin.internal.zzj.zzc(Unknown Source:5)
at com.google.android.gms.auth.api.signin.internal.zzt.dispatchTransaction(Unknown Source:6)
at com.google.android.gms.internal.auth-api.zzd.onTransact(Unknown Source:12)
at android.os.Binder.execTransact(Binder.java:731)
解决方案
推荐阅读
- r - scale_y_discrete 从向量添加标签
- visual-studio-code -
在 VS Code 中保存时进一步缩进 - c++ - C++井字游戏极小极大
- javascript - switch case 跳过两个相同的字母
- recursion - 如何在 Prolog 中只进行 2 次递归调用?
- python - 从python中的不同路径导入模块类:“NameError:名称'enpy'未定义”
- javascript - HTML 似乎试图在 Angular 中初始化变量之前渲染它
- html - 我们可以在剪辑 css 中使用百分比吗?
- c++ - 如何使函数线程安全
- c++ - return 语句中使用的局部变量不会隐式转换为 r 值以匹配转换运算符