每次关闭设备屏幕并再次打开时,GoogleApiClient都会调用

时间:2015-08-09 22:39:29

标签: android google-api-client

由于我需要用于异步任务的用户位置,因此我使用LocationServices api来获取用户的纬度和经度。然后在onConnected中,我执行异步任务。我在onConnected而不是onCreate中执行此操作,因为我需要用户位置。

问题是每当我关闭屏幕并再次打开时,再次调用onConnected,导致异步任务再次执行。

以下是GoogleApiClient的方法。

    @Override
    public void onStart() {
    Log.e("Connected?", String.valueOf(mGoogleApiClient.isConnected()));
        mGoogleApiClient.connect();

        super.onStart();

    }

    @Override
    public void onStop() {
        mGoogleApiClient.disconnect();
        super.onStop();
    }

    @Override
    public void onConnected(Bundle bundle) {
        Log.i("onConnected", "onConnected called"); //called everytime screen is turned off and on again
        new asynctask().execute();
    }

    @Override
    public void onConnectionSuspended(int i) {
    }

    @Override
    public void onConnectionFailed(ConnectionResult connectionResult) {
        Log.i("ConnectionFailure", "onConnetion failed");
    }

非常感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

使用标志只执行一次