如何使用Google Play游戏服务获取RealTimeMultiplayer中参与者的个人资料图片

时间:2014-03-27 06:29:00

标签: android google-plus multiplayer google-play-games

我在RealTimeMultiplayer概念上使用谷歌游戏服务构建游戏,我的问题是如何访问所有参与者的个人资料图像来显示。我是谷歌游戏服务的新手,没有找到关于API的解决方案或任何指导。请指导我,我们可以访问以及如何访问?

1 个答案:

答案 0 :(得分:3)

使用ImageManager类加载ImagerUri是我解决它的方法。

下面,我循环遍历currentRoom中的每个参与者,并请求他们的IconImageUri由ImageManager实例加载。

这可以直接用于扩展视图,但是当我使用LibGDX时,我将其保存为png以便处理。

(你可以看到我告诉游戏接口,如果它们没有pic,它是null,要么是因为没有,或者它们是“未知”参与者,因此GPGS返回null)

        for (Participant p : mRoomCurrent.getParticipants()) {

            //makeToast("should be loading pic");
            ImageManager IM = ImageManager.create(this);
            IM.loadImage(new ImageManager.OnImageLoadedListener() {             

                @Override
                public void onImageLoaded(Uri arg0, Drawable drawable, boolean arg2) {
                    if(drawable == null) {
                        theGameInterface.picLoaded(participantID, null);
                    } else {
                        Bitmap bitmap = ((BitmapDrawable)drawable).getBitmap();
                        try {
                           FileOutputStream out = openFileOutput("pic" + participantID + ".png", Context.MODE_MULTI_PROCESS);
                           bitmap.compress(Bitmap.CompressFormat.PNG, 90, out);
                           out.flush();
                           out.close();
                        } catch (Exception e) {
                            e.printStackTrace();
                            //dLog(e.getStackTrace().toString());
                        }
                    }

            }
            }, p.getIconImageUri());

这些是从开发者网站

推断出来的

ImageManagerParticipant