分享

java – Gplus用户身份验证和获取用户在同一活动中的位置

 印度阿三17 2019-07-03

在我的活动中,我正在实施以下给定的课程

com.google.android.gms.common.GooglePlayServicesClient.ConnectionCallbacks,
com.google.android.gms.common.GooglePlayServicesClient.OnConnectionFailedListener,
com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks,
com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener

这两个界面用于通过google plus验证用户.

com.google.android.gms.common.api.GoogleApiClient.ConnectionCallbacks,
com.google.android.gms.common.api.GoogleApiClient.OnConnectionFailedListener

这些是用于获取用户当前位置的

com.google.android.gms.common.GooglePlayServicesClient.ConnectionCallbacks,
com.google.android.gms.common.GooglePlayServicesClient.OnConnectionFailedListener

这些类中的方法是相同的.

@Override
public void onConnected(Bundle connectionHint) {}

@Override
public void onConnectionFailed(ConnectionResult connectionResult) {}

由于这些方法具有相同的参数和相同的返回类型,因此在同一类中不能有两个.所以我认为我需要确定从Bundle或ConnectionResult调用了哪个接口.我怎么能这样做?我的意思是我需要检查哪个关键值?如果需要任何澄清请评论.
谢谢

解决方法:

将接口实现为匿名成员声明怎么样?

public class Ac {

    private GooglePlayServicesClient.OnConnectionFailedListener psConnectionFailedListener =
            new GooglePlayServicesClient.OnConnectionFailedListener() {

                @Override
                public void onConnectionFailed(ConnectionResult connectionResult) {
                    // implementation
                }
            };

    private GooglePlayServicesClient.ConnectionCallbacks psConnectionCallbacks =
            new GooglePlayServicesClient.ConnectionCallbacks() {

                @Override
                public void onConnected(Bundle bundle) {
                    // implementation
                }

                @Override
                public void onDisconnected() {
                    // implementation
                }
            };

    private GoogleApiClient.ConnectionCallbacks googleConnectionCallbacks =
            new GoogleApiClient.ConnectionCallbacks() {

                @Override
                public void onConnected(Bundle bundle) {
                    // implementation
                }

                @Override
                public void onConnectionSuspended(int i) {
                    // implementation
                }
            };

    private GoogleApiClient.OnConnectionFailedListener googleConnectionFailedListener =
            new GoogleApiClient.OnConnectionFailedListener() {

                @Override
                public void onConnectionFailed(ConnectionResult connectionResult) {
                    // implementation
                }
            };
}
来源:https://www./content-1-293651.html

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多