Search code examples
xamarin.androidgoogle-plusgoogle-api-client

'PlusClass' is obsolete


When initializing GoogleApiClient, I get this warning:

'PlusClass' is obsolete: 'This class is obsoleted in this android platform'

What are its alternative?

Code:

mGoogleApiClient = new GoogleApiClient.Builder(this)
   .AddConnectionCallbacks(this)
   .AddOnConnectionFailedListener(this)
   .AddApi(PlusClass.API)
   .AddScope(new Scope(Scopes.Profile))
   .Build();

Version:

  <package id="Xamarin.GooglePlayServices.Base" version="42.1001.0" targetFramework="monoandroid71" />
  <package id="Xamarin.GooglePlayServices.Basement" version="42.1001.0" targetFramework="monoandroid71" />
  <package id="Xamarin.GooglePlayServices.Plus" version="42.1001.0" targetFramework="monoandroid71" />
  <package id="Xamarin.GooglePlayServices.Tasks" version="42.1001.0" targetFramework="monoandroid71" />

Solution

  • I had the same problem and after a lot of digging around and reverse engineering java examples I arrived at the code below.

    protected override void OnCreate(Bundle bundle)
    {
        base.OnCreate(bundle);
    
        GoogleSignInOptions gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DefaultSignIn)
            .RequestProfile()
            .Build();
    
        _GoogleApiClient = new GoogleApiClient.Builder(this)
            .AddConnectionCallbacks(this)
            .AddOnConnectionFailedListener(this)
            .AddApi(Auth.GOOGLE_SIGN_IN_API, gso)
            .Build();
    }
    

    Packages

    <package id="Xamarin.GooglePlayServices.Auth" version="42.1001.0" targetFramework="monoandroid71" />
    <package id="Xamarin.GooglePlayServices.Auth.Base" version="42.1001.0" targetFramework="monoandroid71" />
    <package id="Xamarin.GooglePlayServices.Base" version="42.1001.0" targetFramework="monoandroid70" />
    <package id="Xamarin.GooglePlayServices.Basement" version="42.1001.0" targetFramework="monoandroid70" />
    <package id="Xamarin.GooglePlayServices.Location" version="42.1001.0" targetFramework="monoandroid70" />
    <package id="Xamarin.GooglePlayServices.Plus" version="42.1001.0" targetFramework="monoandroid71" />
    <package id="Xamarin.GooglePlayServices.Tasks" version="42.1001.0" targetFramework="monoandroid70" />