Android 如何管理多个';小游戏';在一个应用程序/游戏中使用Google Play服务?
我开发了一个应用程序,它也是一个游戏,因此我决定使用在线多人游戏,并向谷歌游戏服务注册。在开发了第一款迷你游戏之后,一切都按照预期进行,我没有遇到任何问题。在开发第二款迷你游戏时,我突然想知道我如何才能唯一地允许我的用户在特定的迷你游戏上玩多人游戏 该应用程序链接到一个游戏服务,然后该服务向我提供一个存在于我的清单文件中的应用程序ID,如下所示:Android 如何管理多个';小游戏';在一个应用程序/游戏中使用Google Play服务?,android,google-play-services,google-play-games,Android,Google Play Services,Google Play Games,我开发了一个应用程序,它也是一个游戏,因此我决定使用在线多人游戏,并向谷歌游戏服务注册。在开发了第一款迷你游戏之后,一切都按照预期进行,我没有遇到任何问题。在开发第二款迷你游戏时,我突然想知道我如何才能唯一地允许我的用户在特定的迷你游戏上玩多人游戏 该应用程序链接到一个游戏服务,然后该服务向我提供一个存在于我的清单文件中的应用程序ID,如下所示: <meta-data android:name="com.google.android.gms.games.APP_ID" an
<meta-data android:name="com.google.android.gms.games.APP_ID"
android:value="@string/app_id" />
在一个应用程序中处理多个游戏是否有最佳实践?我现在发现,您可以指定一个
变量值,该值是int
值,从1到1023。构建房间时,可以将此变量设置为适当的int
,以反映不同的游戏类型:
RoomConfig.Builder selectPlayersRoomConfigBuilder = makeBasicRoomConfigBuilder();
selectPlayersRoomConfigBuilder.addPlayersToInvite(invitees);
// specifies a specific game variant
selectPlayersRoomConfigBuilder.setVariant(gameType);
if (autoMatchCriteria != null) {
selectPlayersRoomConfigBuilder.setAutoMatchCriteria(autoMatchCriteria);
}
// prevent screen from sleeping during handshake
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Games.RealTimeMultiplayer.create(mGoogleApiClient, selectPlayersRoomConfigBuilder.build());
在我的游戏示例中,gameType
是一个int,当用户选择他们想玩的游戏时,从上一个活动
设置,然后通过Intent
传入。我已经决定第一种游戏类型使用1,第二种游戏类型使用2,等等
RoomConfig.Builder selectPlayersRoomConfigBuilder = makeBasicRoomConfigBuilder();
selectPlayersRoomConfigBuilder.addPlayersToInvite(invitees);
// specifies a specific game variant
selectPlayersRoomConfigBuilder.setVariant(gameType);
if (autoMatchCriteria != null) {
selectPlayersRoomConfigBuilder.setAutoMatchCriteria(autoMatchCriteria);
}
// prevent screen from sleeping during handshake
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
Games.RealTimeMultiplayer.create(mGoogleApiClient, selectPlayersRoomConfigBuilder.build());