我按照教程连接到谷歌排行榜,但很多教程都使用旧的谷歌播放服务库。我设法使用此代码登录谷歌,但它在启动应用程序时出现。我应该将 googleAPIclient 代码放在哪里,以便在单击游戏内的按钮时可以登录。我使用 libgdx,如果有人可以链接使用新的 google play 服务库的教程,那将会有很大帮助。我似乎被这个问题困住了。谢谢!
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Create the layout
RelativeLayout layout = new RelativeLayout(this);
// Do the stuff that initialize() would do for you
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(
WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
// Create the libgdx View
View gameView = initializeForView(new RBGame(this,this), false);
mGoogleApiClient = new GoogleApiClient.Builder(this)
.addApi(Plus.API)
.addApi(Games.API)
.addScope(Plus.SCOPE_PLUS_LOGIN)
.addScope(Games.SCOPE_GAMES)
.addConnectionCallbacks(this)
.addOnConnectionFailedListener(this)
.build();
// Create and setup the AdMob view
adView = new AdView(this);
adView.setAdSize(AdSize.BANNER);
adView.setAdUnitId(AD_UNIT_ID);
AdRequest adRequest = new AdRequest.Builder().build();
adView.loadAd(adRequest);
// Add the libgdx view
layout.addView(gameView);
// Add the AdMob view
RelativeLayout.LayoutParams adParams = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
adParams.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
adParams.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
//layout.addView(adView, adParams);
// Hook it all up
setContentView(layout);
}
最佳答案
最简单的方法是使用 BaseGameUtils
,您可以下载 here (它位于/BasicSamples/libraries/
)。
Google Play Game Services文档描述了如何使用它。您仍然不必使用BaseGameUtils
,您可以将其用作您自己的编码的引用。但使用它似乎是 Google 希望的方式 - 可能是为了在游戏之间提供一定的一致性:)
就我个人而言,我不喜欢使用 BaseGameActivity
作为我自己 Activity 的基础并允许它完全接管登录流程。我只是使用 GameHelper
类来按需执行所需的功能。
关于java - 如何控制google play排行榜登录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23465723/