8.0 ではオートフィルが優先されることはわかっていますが、Google Smart Lock の保存ダイアログを強制したいと考えています。実装中に次のエラーが発生します。
{Status{statusCode=The Credentials API's save confirmation dialog has been disabled to avoid conflicts with the Android Autofill feature. This choice may be overridden via AuthCredentialsOptions.Builder.forceEnableSaveDialog()., resolution=null}}
しかし、Android docsには、この方法はありません。Google 検索やドキュメントの検索でこのforceEnableSaveDialog()
方法を見つけることができる場所はありません。
8.0 デバイスでこのダイアログを強制する方法を知っている人はいますか? 異なるバージョン間でアプリの動作に一貫性を持たせたいです。
SaveCredentials コードのスニペット:
mCredentialsApiClient = new GoogleApiClient.Builder(Xamarin.Forms.Forms.Context)
.AddConnectionCallbacks((obj) =>
{
var credendial = new Credential.Builder(userName).SetPassword(password).Build();
Auth.CredentialsApi.Save(mCredentialsApiClient, credendial).SetResultCallback(new ResultCallback<IResult>((obj2) =>
{
Print("Saved");
if (obj2.Status.IsSuccess)
{
Print("Credentails successfully saved with Google Smart Lock");
}
else if (obj2.Status.StatusCode == CommonStatusCodes.ResolutionRequired)
{
obj2.Status.StartResolutionForResult(CrossCurrentActivity.Current.Activity, obj2.Status.StatusCode);
}
}));
})
.AddOnConnectionFailedListener(NotConnected)
.AddApi(Auth.CREDENTIALS_API)
.Build();
mCredentialsApiClient.Connect();
これは Xamarin の Android です。C#を使用するだけで、同じメソッドとすべて