/** * Method called every time the options menu is invalidated/repainted. Shows/hides the sign out button * * @see android.app.Activity#onPrepareOptionsMenu(android.view.Menu) */ @Override public boolean onPrepareOptionsMenu(final Menu menu) { super.onPrepareOptionsMenu(menu); menu.findItem(R.id.sign_out).setVisible(GoogleSignIn.getLastSignedInAccount(this) != null); return true; }
/** * Handles resolution callbacks. */ @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == REQUEST_CODE_SIGN_IN) { if (resultCode != RESULT_OK) { // Sign-in may fail or be cancelled by the user. For this sample, sign-in is // required and is fatal. For apps where sign-in is optional, handle appropriately. Log.e(TAG, "Sign-in failed."); finish(); return; } // We can use last signed in account here because we know the account has Drive scopes. initializeDriveClient(GoogleSignIn.getLastSignedInAccount(this)); } }
@Override public void onLoadFinished(final Loader<Cursor> loader, final Cursor data) { final int rowCount = data == null ? 0 : data.getCount(); if (BuildConfig.DEBUG) Log.d(TAG, "onLoadFinished found " + rowCount + " rows"); stats = stats.unionWith(new StatsState(data)); if (mAlreadyLoadedState && GoogleSignIn.getLastSignedInAccount(this) != null) saveToCloud(); else if (rowCount > 0) mPendingUpdateState = true; }
@Override public void onPause() { super.onPause(); // remove callbacks from refreshing handler.removeCallbacks(refreshRunnable); // set refreshing back to false if it was refreshing if (swipeRefreshLayout.isRefreshing()) { swipeRefreshLayout.setRefreshing(false); } // unregister the listener if (!GoogleSignIn.hasPermissions(GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity()))) { Log.d(TAG, "Not signed in..."); } else { Fitness.getSensorsClient((AppCompatActivity) getActivity(), GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity())) .remove(stepListener) .addOnCompleteListener( new OnCompleteListener<Boolean>() { @Override public void onComplete(@NonNull Task<Boolean> task) { if (task.isSuccessful() && task.getResult()) { Log.d(TAG, "Step Listener for steps was removed."); } else { Log.e(TAG, "Step Listener for steps was not removed.", task.getException()); } } } ); } }
if (!GoogleSignIn.hasPermissions(GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity()), fitnessOptions)) { GoogleSignIn.requestPermissions( this, REQUEST_OAUTH_REQUEST_CODE, GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity()), fitnessOptions); } else {
Drive.getDriveResourceClient(getContext(), GoogleSignIn.getLastSignedInAccount(getContext())).openFile(file, DriveFile.MODE_READ_ONLY); openFileTask .continueWithTask(task -> { Task<Void> discardTask = Drive.getDriveResourceClient(getContext(), GoogleSignIn.getLastSignedInAccount(getContext())).discardContents(contents); return discardTask; })
if (!GoogleSignIn.hasPermissions(GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity()))) { Log.d(TAG, "Not signed in..."); } else { Fitness.getSensorsClient((AppCompatActivity) getActivity(), GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity())) .add( new SensorRequest.Builder()
private void accessGoogleFit() { Fitness.getRecordingClient((AppCompatActivity) getActivity(), GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity())) .subscribe(DataType.AGGREGATE_STEP_COUNT_DELTA) .addOnSuccessListener(new OnSuccessListener<Void>() { Fitness.getRecordingClient((AppCompatActivity) getActivity(), GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity())) .subscribe(DataType.TYPE_STEP_COUNT_DELTA) .addOnSuccessListener(new OnSuccessListener<Void>() { Fitness.getRecordingClient((AppCompatActivity) getActivity(), GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity())) .subscribe(DataType.TYPE_DISTANCE_DELTA) .addOnSuccessListener(new OnSuccessListener<Void>() { Fitness.getHistoryClient((AppCompatActivity) getActivity(), GoogleSignIn.getLastSignedInAccount((AppCompatActivity) getActivity())) .readData(readRequest) .addOnSuccessListener(new OnSuccessListener<DataReadResponse>() {