我正在尝试使用Google Play游戏服务开发实时多人游戏,并下载示例(ButtonClicker2000),但Eclipse ADK一直抱怨com.google.android.gms.games.GamesClient无法解析。
所有其他导入工作正常:
import com.google.android.gms.games.Games;
import com.google.android.gms.games.GamesActivityResultCodes;
import com.google.android.gms.games.multiplayer.Invitation;
import com.google.android.gms.games.multiplayer.OnInvitationReceivedListener;
import com.google.android.gms.games.multiplayer.Participant;
import com.google.android.gms.games.multiplayer.realtime.RealTimeMessage;
import com.google.android.gms.games.multiplayer.realtime.RealTimeMessageReceivedListener;
import com.google.android.gms.games.multiplayer.realtime.Room;
import com.google.android.gms.games.multiplayer.realtime.RoomConfig;
import com.google.android.gms.games.multiplayer.realtime.RoomStatusUpdateListener;
import com.google.android.gms.games.multiplayer.realtime.RoomUpdateListener;
import com.google.example.games.basegameutils.BaseGameActivity;
有谁知道如何解决这个问题?
答案 0 :(得分:26)
GamesClient是Google Play服务库的一部分 - google-play-services.jar
。
在旧版本中,如果您浏览库,则可以找到该类。在Eclipse中,它可能位于包列表中的“Android Private Libraries”下。下去包并搜索com.google.android.gms.games.GamesClient
自Google Play服务更新至4.3版以来,GamesClient已不再可用。您应该切换到GoogleApiClient。
因此,如果您从Android SDK管理器更新您的软件包,Google Play服务将更新为2014年3月17日发布的第16版。由于GamesClient
已弃用,因此您的软件包将丢失重启Eclipse并刷新工作区。
This is the official statement:
自2014年2月7日起,之前的游戏客户端已弃用。 强烈建议现有和新开发人员使用 GoogleApiClient代替不推荐使用的GamesClient。:
因此您需要使用GoogleApiClient(更好)替换GamesClient,或将您的google-play-service lib降级为旧版本(不推荐)。
为了替换GamesClient,您需要重构代码。这是官方announcement and introduction to the new API。 Here is one example of an updated sample。
可能会更新playgameservices示例,您可以为该项目的github页面发出票证。