私はアンドロイドxamarinに新しいです。私はアイデンティティプロバイダとしてGoogleとxamarin androidでOAuthを実装しようとしています。私はグーグルで私のアプリを登録し、以下のようにユーザーがログインボタンをクリックしたときに使用しているクライアントIDとクライアントシークレットを得ました。アンドロイドのOAuth 403エラーxamarin - disallowed_useragent
void OnLoginClicked(object sender, EventArgs e)
{
var authenticator = new OAuth2Authenticator(
Constants.ClientId,
Constants.ClientSecret,
Constants.Scope,
new Uri(Constants.AuthorizeUrl),
new Uri(Constants.RedirectUrl),
new Uri(Constants.AccessTokenUrl));
authenticator.Completed += OnAuthCompleted;
authenticator.Error += OnAuthError;
var presenter = new Xamarin.Auth.Presenters.OAuthLoginPresenter();
presenter.Login(authenticator);
}
Googleにリダイレクトされますが、403エラーは「disallowed_useragent」と表示されます。 thisによると、私は
chromecustomtabs必要が使用することを知るようになり、いくつかのフォーラムを通過した後
を「ウェブビューとして知られている組み込みのブラウザでGoogleにOAuthの要求を許可もはや」グーグルないと質問をStackOverflowの。
だからここに私は2つの質問
を持ってchromecustomtabsへの代替解決策はありますか?
上記の答えがノーであれば、私が正しく理解していれば、その後、私は私のプロジェクトのコードの下に追加する必要があります。私の質問は、どのような変更をOnLoginClicked関数で行う必要がありますか?その場合、OAuth2Authenticatorが必要ですか?
マイコード:
var mgr = new CustomTabsActivityManager (this);
mgr.CustomTabsServiceConnected += delegate {
mgr.LaunchUrl ("http://xamarin.com");
};
mgr.BindService();
任意の提案/リンクいただければ幸いです。ありがとう。
>それがデフォルトだったらいいのに。 これからの予定です。問題は、GoogleがネイティブUIを必要とするプロバイダだけで、他のプロバイダをセットアップできることですが、これは必須ではありません。 互換性の理由から、デフォルトではfalseです(下位互換性)。しばらくお待ちください。 – moljac