عیب‌یابی خطاهای رایج «مدیر اطلاعات کاربری»

این راهنما کدهای خطای رایج و شرح‌های مربوط به Credential Manager را فهرست می‌کند و اطلاعاتی درباره دلایل آن‌ها ارائه می‌دهد.

کد و شرح خطا علت

android.os.TransactionTooLargeException

این مشکل به‌دلیل مشکل شناخته‌شده‌ای است که در آن میانای برنامه‌سازی کاربردی credentialManager.getCredential() در Android 14 و نسخه‌های بالاتر نمی‌تواند کادر گفتگوی ورود به سیستم را وقتی چند «حساب Google» در دستگاه وجود دارد نمایش دهد. این مشکل به‌طور خاص در GetGoogleIdOption دیده می‌شود و نه GetSignInWithGoogleOption. این مشکل در «خدمات Google Play» نسخه 24.40.XX و بالاتر برطرف شده است.

CreateCredentialCancellationException

کاربر ثبت یا بازیابی گذرکلید را لغو کرد.

کاربر انتخاب کرده است که اطلاعات اعتباری ایجاد یا استفاده نکند. اکنون می‌توانید واسط کاربری‌تان را تنظیم کنید تا روش ورود به سیستم جایگزینی ارائه دهید یا به مراحل بعدی در فرایندتان بروید.

GetCredentialCancellationException

فرایند بازیابی اطلاعات کاربری متوقف شد زیرا مجوز لازم از کاربر دریافت نشد. اگرچه این اتفاق معمولاً زمانی رخ می‌دهد که کاربر به‌صورت دستی جریان ورود به سیستم را لغو می‌کند، اما می‌تواند نشان‌دهنده این باشد که درخواست به‌دلیل محدودیت‌های فنی مجاز نبوده است. چون این خطا نشان‌دهنده عدم رضایت است، درخواست را به‌طور خودکار تکرار نکنید، زیرا این کار باعث ایجاد تجربه کاربری مختل‌کننده می‌شود. بااین‌حال، توسعه‌دهندگان باید بسامد این استثنا را پایش کنند. حجم بالای «لغوها» ممکن است درواقع نشان‌دهنده پیکربندی نادرست باشد (مثلاً دامنه مفقود یا نادرست) که مانع از تکمیل موفقیت‌آمیز واسط کاربری صدور مجوز می‌شود. اگر متوجه روندهای غیرمنتظره شدید، پارامترهای درخواست و پیکربندی [طرف متکی][2] را مرور کنید.

توجه: پیام خطا می‌تواند براساس نوع اطلاعات اعتباری متفاوت باشد:

  • برای گذرکلیدها، پیام خطا می‌تواند «ثبت یا بازیابی گذرکلید توسط کاربر لغو شد» باشد.
  • برای «ورود به سیستم با Google»، پیام خطا می‌تواند «فعالیت توسط کاربر لغو شده است» باشد.

CreateCredentialCustomException یا GetCredentialCustomException

هنگام استفاده از کیت توسعه نرم‌افزار طرف سوم برای برقراری تماس‌های میانای برنامه‌سازی کاربردی با شیء درخواستی که زیرکلاس CreateCustomCredentialRequest یا GetCustomCredentialOption است، ممکن است با خطا مواجه شوید. اگر این اتفاق افتاد، کیت توسعه نرم‌افزار را برای ثابت‌های نوع استثنای سفارشی که با e.type مطابقت دارند بررسی کنید. اگر موردی منطبق پیدا نشد، می‌توانید استثنا را رها کنید یا ثبت کنید.

CreateCredentialInterruptedException یا GetCredentialInterruptedException

ممکن است عملیات قطع شده باشد زیرا کاربر برای پیکربندی مجدد مدیران گذرواژه به تنظیمات رفته است. دلایل دیگری نیز ممکن است در این وقفه نقش داشته باشند. لطفاً دوباره تماس بگیرید.

CreateCredentialUnknownException

During save password, found password failure response from one tap 16: [28431] Skipping password saving since the user is likely prompted with Android Autofill.

این خطا فقط بر Android 13 و نسخه‌های قدیمی‌تر تأثیر می‌گذارد، آن‌هم زمانی که Google به‌عنوان ارائه‌دهنده «تکمیل خودکار» تعیین شده باشد. در این موارد، کاربران پیام‌واره ذخیره‌سازی را از «تکمیل خودکار» دریافت خواهند کرد و گذرواژه در «مدیر گذرواژه Google» ذخیره خواهد شد. نکته مهم اینکه اعتبارنامه‌های ذخیره‌شده بااستفاده از «تکمیل خودکار با Google» به‌صورت دوطرفه با Credential Manager API همگام‌سازی می‌شوند. بنابراین، می‌توان این خطا را نادیده گرفت.

CreatePublicKeyCredentialDomException و GetPublicKeyCredentialDomException

احتمالاً استثنای DOM حاوی domError مشخص‌تری است. برای جزئیات بیشتر می‌توانید آن را به DomException WebAuthn نگاشت کنید.

CreatePublicKeyCredentialDomException و GetPublicKeyCredentialDomException

درخواست ورودی تأیید اعتبار نمی‌شود.

سرور مدیر گذرواژه شناسه بسته برنامه را تشخیص نمی‌دهد. این نشان‌دهنده مشکل احتمالی در ادغام سمت سرور شما، به‌ویژه راه‌اندازی پیوند دارایی دیجیتال است. دقت شناسه بسته و SHA را در فایل پیوند دارایی‌تان دوباره بررسی کنید.

CreatePublicKeyCredentialDomException:

کلید درطول ثبت‌نام ایجاد نشد

این مشکل زمانی ممکن است رخ دهد که کاربر کادر گفتگوی قفل صفحه را درطول ثبت‌نام ببندد.

CreateCredentialNoCreateOptionException

این استثنای خاص نشان می‌دهد که کاربر مدیر گذرواژه معتبری را پیکربندی نکرده است. این خطا جریان لغو دستی شروع‌شده توسط کاربر نیست، بلکه یک خرابی جداگانه است.

CreatePublicKeyDomException و GetPublicKeyCredentialDomException

کاربر ثبت گذرکلید را لغو کرد.

کاربر بازیابی گذرکلید را لغو کرد.

این مشکل زمانی ممکن است رخ دهد که کاربر درطول ثبت‌نام / بازیابی گذرکلید، کادر گفتگوی اثر انگشت را ببندد.

GetCredentialProviderConfigurationException و CreateCredentialProviderConfigurationException

وابستگی‌های ارائه‌دهنده getCredentialAsync پیدا نشد

createCredentialAsync هیچ وابستگی ارائه‌دهنده‌ای پیدا نشد

وابستگی androidx.credentials:credentials-play-services-auth:<latest-version> وجود ندارد.

GetCredentialUnsupportedException یا CreateCredentialUnsupportedException

دستگاهتان از مدیر اطلاعات کاربری پشتیبانی نمی‌کند

مطمئن شوید کتابخانه اطلاعات کاربری شما به نسخه ۱.۲.۱ یا بالاتر به‌روز شده باشد.

GetPublicKeyCredentialException

رمزگشایی اعتبارنامه ناموفق بود

این مشکل زمانی رخ می‌دهد که کاربر پس‌از خروج از سیستم «حساب‌های Google» و ورود مجدد به سیستم، سعی می‌کند از گذرکلید استفاده کند. از کاربرتان بخواهید دوباره به سیستم «حساب Google» خود در دستگاهش وارد شود.

NoCreateOptionException

این استثنا زمانی رفتار موردانتظار است که کاربر هیچ اطلاعات اعتباری گذرکلیدی در دستگاهش راه‌اندازی نکرده باشد یا مدیر گذرواژه‌ای پیکربندی نکرده باشد.

NoCredentialException

اطلاعات کاربری منطبقی پیدا نشد

این استثنا در شرایط زیر ایجاد می‌شود:

  • setFilterByAuthorizedAccounts روی «درست» تنظیم شده است بدون اینکه حساب‌های مجاز در دستگاه وجود داشته باشد.
  • هیچ حسابی در دستگاه به سیستم وارد نشده است (هیچ حسابی اضافه نشده است یا حساب‌ها نیاز به اصالت‌سنجی مجدد دارند).
  • اگر «پیام‌واره‌های ورود به سیستم» برای هریک از حساب‌های موجود در دستگاه غیرفعال باشد، واسط کاربر برگه پایین نشان داده نمی‌شود. این تنظیم سراسری که در تنظیمات حساب Google > ورود به سیستم با Google قرار دارد، باید فعال باشد تا واسط کاربر برگه پایین برای هر حسابی نمایش داده شود. این موضوع بر جریان دکمه تأثیر نمی‌گذارد.

به‌دلیل قفل بودن داده‌های رمزگذاری‌شده، گذرکلید ایجاد نشد

کاربر باید داده‌های سمت سرور Chrome خود را بازنشانی کند. این داده‌ها علاوه‌بر گذرواژه‌ها و گذرکلیدهای ذخیره‌شده شامل نشانک‌ها و تنظیمات Chrome نیز می‌شود. برای اطلاعات بیشتر درباره اینکه Chrome چه داده‌هایی را ذخیره می‌کند، به داده‌های Chrome در حسابتان بروید.

  1. به chrome.google.com/sync بروید.
  2. در پایین، پاک کردن داده‌ها را انتخاب کنید.
  3. در دستگاه، همگام‌سازی را در Chrome روشن کنید.

On Begin Sign In Failure: 8: خطای داخلی ناشناخته.

ممکن است دستگاه به‌درستی با «حساب Google» راه‌اندازی نشده باشد. ممکن است مشکلی در نحوه ایجاد JSON گذرکلید وجود داشته باشد. پیاده‌سازی را ازنظر صحت دوباره‌سنجی کنید.

حساب همگام‌سازی دریافت نشد

«خدمات Google Play» نسخه 24.40.XX و جدیدتر کدهای خطای آموزنده‌تری ارائه خواهد داد. برای مثال، به‌جای «حساب همگام‌سازی دریافت نشد»، تماس‌گیرندگان اکنون پیام خطای لغو دریافت خواهند کرد.