java - Can't resolve symbol class plus client -
i used default login activity after building app got 2 errors in "plusbaseactivity" cannot resolve symbol class googleplayservicesclient
changed googleapiclient
, still cannot resolve symbol class plus client
that's code below :
package net.egy_develop.scci; import android.content.intent; import android.content.intentsender; import android.os.bundle; import android.app.activity; import android.util.log; import com.google.android.gms.common.connectionresult; import com.google.android.gms.common.api.googleapiclient; import com.google.android.gms.common.scopes; import com.google.android.gms.plus.plusclient; /** * base class wrap communication google play services plusclient. */ public abstract class plusbaseactivity extends activity implements googleapiclient.connectioncallbacks, googleapiclient.onconnectionfailedlistener { private static final string tag = plusbaseactivity.class.getsimplename(); // magic number use know our sign-in error resolution activity has completed private static final int our_request_code = 49404; // flag stop multiple dialogues appearing user private boolean mautoresolveonfail; // flag track when connection in progress public boolean mplusclientisconnecting = false; // helper object connects google play services. private plusclient mplusclient; // saved result {@link #onconnectionfailed(connectionresult)}. if connection // attempt has been made, non-null. // if null, connect method still running. private connectionresult mconnectionresult; /** * called when {@link plusclient} revokes access app. */ protected abstract void onplusclientrevokeaccess(); /** * called when plusclient connected. */ protected abstract void onplusclientsignin(); /** * called when {@link plusclient} disconnected. */ protected abstract void onplusclientsignout(); /** * called when {@link plusclient} blocking ui. if have progress bar widget, * tells when show or hide it. */ protected abstract void onplusclientblockingui(boolean show); /** * called when there change in connection state. if have "sign in"/ "connect", * "sign out"/ "disconnect", or "revoke access" buttons, lets know when states * need updated. */ protected abstract void updateconnectbuttonstate(); @override protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); // initialize plusclient connection. // scopes indicate information user application able access. mplusclient = new plusclient.builder(this, this, this).setscopes(scopes.plus_login, scopes.plus_me).build(); } /** * try sign in user. */ public void signin() { if (!mplusclient.isconnected()) { // show dialog signing in. setprogressbarvisible(true); // make sure start resolution (e.g. fire intent , pop // dialog user) errors come in. mautoresolveonfail = true; // should have connection result ready resolve, // can start process. if (mconnectionresult != null) { startresolution(); } else { // if don't have 1 though, can start connect in // order retrieve one. initiateplusclientconnect(); } } updateconnectbuttonstate(); } /** * connect {@link plusclient} if connection isn't in progress. * call {@link #onconnected(android.os.bundle)} or * {@link #onconnectionfailed(com.google.android.gms.common.connectionresult)}. */ private void initiateplusclientconnect() { if (!mplusclient.isconnected() && !mplusclient.isconnecting()) { mplusclient.connect(); } } /** * disconnect {@link plusclient} if connected (otherwise, can throw error.) * call {@link #ondisconnected()}. */ private void initiateplusclientdisconnect() { if (mplusclient.isconnected()) { mplusclient.disconnect(); } } /** * sign out user (so can switch account). */ public void signout() { // want sign out if we're connected. if (mplusclient.isconnected()) { // clear default account in order allow user potentially choose // different account account chooser. mplusclient.cleardefaultaccount(); // disconnect google play services, reconnect in order restart // process scratch. initiateplusclientdisconnect(); log.v(tag, "sign out successful!"); } updateconnectbuttonstate(); } /** * revoke google+ authorization completely. */ public void revokeaccess() { if (mplusclient.isconnected()) { // clear default account in sign out. mplusclient.cleardefaultaccount(); // revoke access entire application. call // onaccessrevoked when complete, needs reach google // authentication servers revoke tokens. mplusclient.revokeaccessanddisconnect(new plusclient.onaccessrevokedlistener() { public void onaccessrevoked(connectionresult result) { updateconnectbuttonstate(); onplusclientrevokeaccess(); } }); } } @override protected void onstart() { super.onstart(); initiateplusclientconnect(); } @override protected void onstop() { super.onstop(); initiateplusclientdisconnect(); } public boolean isplusclientconnecting() { return mplusclientisconnecting; } private void setprogressbarvisible(boolean flag) { mplusclientisconnecting = flag; onplusclientblockingui(flag); } /** * helper method flip mresolveonfail flag , start resolution * of connectionresult failed connect() call. */ private void startresolution() { try { // don't start resolution until have result activity we're // start. mautoresolveonfail = false; // if can resolve error, call start resolution , pass integer tag // can use track. // means when onactivityresult callback we'll know it's // being started here. mconnectionresult.startresolutionforresult(this, our_request_code); } catch (intentsender.sendintentexception e) { // problems, try connect() again new connectionresult. mconnectionresult = null; initiateplusclientconnect(); } } /** * earlier connection failed, , we're receiving result of resolution attempt * plusclient. * * @see #onconnectionfailed(connectionresult) */ @override protected void onactivityresult(int requestcode, int responsecode, intent intent) { updateconnectbuttonstate(); if (requestcode == our_request_code && responsecode == result_ok) { // if have successful result, want able resolve further // errors, turn on resolution our flag. mautoresolveonfail = true; // if have successful result, let's call connect() again. if there more // errors resolve we'll our onconnectionfailed, if not, // we'll onconnected. initiateplusclientconnect(); } else if (requestcode == our_request_code && responsecode != result_ok) { // if we've got error can't resolve, we're no longer in midst of signing // in, can stop progress spinner. setprogressbarvisible(false); } } /** * connected (called plusclient) */ @override public void onconnected(bundle connectionhint) { updateconnectbuttonstate(); setprogressbarvisible(false); onplusclientsignin(); } /** * disconnected (called plusclient) */ @override public void ondisconnected() { updateconnectbuttonstate(); onplusclientsignout(); } /** * connection failed reason (called plusclient) * try , resolve result. failure here not indication of serious error, * user's input needed. * * @see #onactivityresult(int, int, intent) */ @override public void onconnectionfailed(connectionresult result) { updateconnectbuttonstate(); // of time, connection fail user resolvable result. can store // in our mconnectionresult property ready used when user clicks // sign-in button. if (result.hasresolution()) { mconnectionresult = result; if (mautoresolveonfail) { // local helper function starts resolution of problem, // may showing user account chooser or similar. startresolution(); } } } public plusclient getplusclient() { return mplusclient; } }
yeah i'm on same boat you... changing googleapiclient
tripped me too... or still tripping me up... long story i'm pretty sure i've figured out.
try changing old plusclient
code googleapiclient
; , mplusclients
code mgoogleapiclient
.
i'm still testing out; 30 or more minutes , i'll know sure , i'll answer (y)
don't know if still looking answer if hope helped... or help... or whatever anyway cheers.
check out link https://developers.google.com/identity/sign-in/android/sign-in
Comments
Post a Comment