我按照教程连接谷歌排行榜,但很多教程都使用旧的谷歌播放服务库。我设法使用此代码登录谷歌,但它在启动应用时出现。我应该在哪里放置googleAPIclient代码,这样当我点击游戏内部的按钮时我就可以登录。我使用libgdx,如果有人可以链接使用新的谷歌播放服务库的教程,这将有很大帮助。我好像被这个人困住了。谢谢!
@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);
}
答案 0 :(得分:1)
最简单的方法是使用BaseGameUtils
您可以下载here(它位于/BasicSamples/libraries/
)。
Google Play Game Services文档介绍了如何使用它。您仍然没有 使用BaseGameUtils
,您可以将其用作编码自己的参考。但使用它似乎是谷歌希望它完成的方式 - 可能是为了在游戏中提供一些一致性:)
就个人而言,我不喜欢使用BaseGameActivity
作为我自己活动的基础,并允许它完全接管登录流程。我只是使用GameHelper
类来按需执行所需的功能。