まず、古い方法で性別を取得したいのですが、既に廃止予定だと言われています。getGender()でエラーが発生します。それはGoogle People API scopes.profileで性別エラーが発生する
GoogleSignInAccount acct = result.getSignInAccount();
Intent Home=new Intent(this,HomeActivity.class);
Home.putExtra("name",acct.getDisplayName());
Home.putExtra("email", acct.getEmail());
Home.putExtra("URL",acct.getPhotoUrl());
Home.putExtra("URL",acct.getGender()); // cannot resolve method
startActivity(Home);
を認識し、私はここを検索し、私はこの民APIについて多くの話題を見つけることができなかったことを少し驚い取得、1つの人気の答えは、しかしイザベラ・チェンからではないです。
/** Global instance of the HTTP transport. */
private static HttpTransport HTTP_TRANSPORT = AndroidHttp.newCompatibleTransport();
/** Global instance of the JSON factory. */
private static final JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
// On worker thread
GoogleAccountCredential credential =
GoogleAccountCredential.usingOAuth2(MainActivity.this, Scopes.PROFILE);
credential.setSelectedAccount(
new Account(googleSignInAccount.getEmail(), "com.google"));
People service = new People.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
.setApplicationName(APPLICATION_NAME /* whatever you like */)
.build();
// All the person details
Person meProfile = service.people().get("people/me").execute();
// e.g. Gender
List<Gender> genders = meProfile.getGenders();
String gender = null;
if (genders != null && genders.size() > 0) {
gender = genders.get(0).getValue();
}
私はコードを再利用しようとしますが、Scopes.PROFILESでエラーが発生します。間違った第2の型の引数を言います...私は理解しません。ここ
は私のGoogleのコードです:
//Initializing google signin option
gso = new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
.requestScopes(new Scope(Scopes.PLUS_LOGIN))
.requestScopes(new Scope(Scopes.PROFILE))
.requestProfile()
.requestEmail()
.build();
gplus_button = (SignInButton) findViewById(R.id.sign_in_button);
gplus_button.setSize(SignInButton.SIZE_STANDARD);
gplus_button.setScopes(gso.getScopeArray());
//Initializing google api client
mGoogleApiClient = new GoogleApiClient.Builder(this)
.enableAutoManage(this /* FragmentActivity */, this /* OnConnectionFailedListener */)
.addApi(Auth.GOOGLE_SIGN_IN_API, gso)
.addApi(Plus.API)
.build();
私は残念ながら、私は両方の方法でエラーを取得し、働く何でも廃止予定のものを使用します。明確な質問の
編集:
非推奨メソッドのエラー:getGenderでエラーが発生しました();メソッドを解決できません
新しいメソッド:Scopes.PROFILEのエラー、アンドロイドスタジオの赤い下線は2番目のタイプの引数が間違っています。 'java.lang.String'が必要な型 'java.util.Collection'
どういうところ? – DaImTo
古いメソッドは、 "メソッドを解決することはできません"、新しいメソッドで、その間違ったタイプの第2引数(Scopes.PROFILE) –