NetworkException

public abstract class NetworkException extends CronetException

فئات فرعية مباشرة معروفة
QuicException

فئة فرعية من NetworkException تحتوي على رمز خطأ QUIC تفصيلي من QuicErrorCode.


يتم تمرير الاستثناء إلى UrlRequest.Callback.onFailed() عندما يتعذّر على Cronet معالجة طلب شبكة. في هذه الحالة، يمكن استخدام getErrorCode وgetCronetInternalErrorCode للحصول على مزيد من المعلومات حول النوع المحدّد من حالات التعذّر. إذا عرضت الدالة getErrorCode القيمة ERROR_QUIC_PROTOCOL_FAILED، يمكن تحويل هذا الاستثناء إلى QuicException يمكنه تقديم المزيد من التفاصيل.

ملخّص

الثوابت

static final int

رمز الخطأ الذي يشير إلى تعذّر الوصول إلى عنوان IP الذي يتم الاتصال به، ما يعني عدم توفّر مسار إلى المضيف أو الشبكة المحدّدة.

static final int

رمز الخطأ الذي يشير إلى أنّ الاتصال تم إغلاقه بشكل غير متوقع.

static final int

رمز الخطأ الذي يشير إلى أنّه تم رفض محاولة الاتصال.

static final int

رمز الخطأ الذي يشير إلى أنّه تمت إعادة ضبط الاتصال بشكل غير متوقع.

static final int

رمز الخطأ الذي يشير إلى انتهاء مهلة محاولة الاتصال.

static final int

رمز الخطأ الذي يشير إلى تعذُّر تحويل المضيف الذي يتم إرسال الطلب إليه إلى عنوان IP.

static final int

رمز الخطأ الذي يشير إلى أنّ الجهاز لم يكن متصلاً بأي شبكة.

static final int

رمز الخطأ الذي يشير إلى أنّه أثناء معالجة الطلب، تم تغيير إعدادات الشبكة.

static final int

رمز الخطأ الذي يشير إلى حدوث نوع آخر من الخطأ.

static final int

رمز الخطأ الذي يشير إلى خطأ متعلّق ببروتوكول QUIC

static final int

رمز خطأ يشير إلى انتهاء المهلة.

طُرق وضع التصميم المحمية

NetworkException(String message, Throwable cause)

تنشئ هذه الطريقة استثناءً ناتجًا عن خطأ في الشبكة.

الإجراءات العامة

abstract int

تعرِض هذه السمة رمز خطأ داخليًا في Cronet.

abstract int

تعرِض هذه السمة رمز الخطأ، وهو أحد الرموز التالية: ERROR_*.

abstract boolean

تعرض القيمة true إذا كان من المحتمل أن تنجح إعادة محاولة تنفيذ هذا الطلب على الفور، أو false في الحالات الأخرى.

الإجراءات المكتسبة

من java.lang.Throwable
synchronized final void
synchronized Throwable
synchronized Throwable
String
String
StackTraceElement[]
synchronized final Throwable[]
synchronized Throwable
void
void
setStackTrace(StackTraceElement[] p)
String

الثوابت

ERROR_ADDRESS_UNREACHABLE

public static final int ERROR_ADDRESS_UNREACHABLE = 9

رمز الخطأ الذي يشير إلى تعذّر الوصول إلى عنوان IP الذي يتم الاتصال به، ما يعني عدم توفّر مسار إلى المضيف أو الشبكة المحدّدة.

ERROR_CONNECTION_CLOSED

public static final int ERROR_CONNECTION_CLOSED = 5

رمز الخطأ الذي يشير إلى أنّ الاتصال تم إغلاقه بشكل غير متوقع.

ERROR_CONNECTION_REFUSED

public static final int ERROR_CONNECTION_REFUSED = 7

رمز الخطأ الذي يشير إلى أنّه تم رفض محاولة الاتصال.

ERROR_CONNECTION_RESET

public static final int ERROR_CONNECTION_RESET = 8

رمز الخطأ الذي يشير إلى أنّه تمت إعادة ضبط الاتصال بشكل غير متوقع.

ERROR_CONNECTION_TIMED_OUT

public static final int ERROR_CONNECTION_TIMED_OUT = 6

رمز الخطأ الذي يشير إلى انتهاء مهلة محاولة الاتصال.

ERROR_HOSTNAME_NOT_RESOLVED

public static final int ERROR_HOSTNAME_NOT_RESOLVED = 1

رمز الخطأ الذي يشير إلى تعذُّر تحويل المضيف الذي يتم إرسال الطلب إليه إلى عنوان IP.

ERROR_INTERNET_DISCONNECTED

public static final int ERROR_INTERNET_DISCONNECTED = 2

رمز الخطأ الذي يشير إلى أنّ الجهاز لم يكن متصلاً بأي شبكة.

ERROR_NETWORK_CHANGED

public static final int ERROR_NETWORK_CHANGED = 3

رمز الخطأ الذي يشير إلى أنّه أثناء معالجة الطلب، تم تغيير إعدادات الشبكة. عندما تعرض getErrorCode هذا الرمز، يمكن تحويل هذا الاستثناء إلى QuicException للحصول على مزيد من المعلومات في حال استخدام بروتوكول QUIC.

ERROR_OTHER

public static final int ERROR_OTHER = 11

رمز الخطأ الذي يشير إلى حدوث نوع آخر من الخطأ. يمكن الرجوع إلى getCronetInternalErrorCode لمعرفة السبب بشكل أكثر تحديدًا.

ERROR_QUIC_PROTOCOL_FAILED

public static final int ERROR_QUIC_PROTOCOL_FAILED = 10

رمز الخطأ الذي يشير إلى خطأ متعلّق ببروتوكول QUIC عندما تعرض الدالة getErrorCode هذا الرمز، يمكن تحويل هذا الاستثناء إلى QuicException للحصول على مزيد من المعلومات.

ERROR_TIMED_OUT

public static final int ERROR_TIMED_OUT = 4

رمز خطأ يشير إلى انتهاء المهلة. سيتم تسجيل انتهاء المهلة أثناء محاولة الاتصال على أنّه ERROR_CONNECTION_TIMED_OUT الأكثر تحديدًا.

طُرق وضع التصميم المحمية

NetworkException

protected NetworkException(String message, Throwable cause)

تنشئ هذه الطريقة استثناءً ناتجًا عن خطأ في الشبكة.

المعلَمات
String message

تفسير سبب الفشل

Throwable cause

السبب (الذي يتم حفظه لاسترجاعه لاحقًا باستخدام الطريقة getCause()). يُسمح بالقيمة "فارغ"، وتشير إلى أنّ السبب غير موجود أو غير معروف.

الإجراءات العامة

getCronetInternalErrorCode

public abstract int getCronetInternalErrorCode()

تعرِض هذه السمة رمز خطأ داخليًا في Cronet. قد يوفّر ذلك تشخيصًا أكثر تحديدًا للأخطاء من getErrorCode، ولكن لا يتم عرض القيم الثابتة في Java وقد تتغيّر بمرور الوقت. اطّلِع على هنا للحصول على أحدث قائمة بالقيم.

المرتجعات
int

رمز الخطأ الداخلي في Cronet.

getErrorCode

public abstract int getErrorCode()

تعرِض هذه السمة رمز الخطأ، وهو أحد الرموز التالية: ERROR_*.

المرتجعات
int

رمز الخطأ، وهو أحد الرموز ERROR_*.

immediatelyRetryable

public abstract boolean immediatelyRetryable()

تعرض القيمة true إذا كان من المحتمل أن تنجح إعادة محاولة تنفيذ هذا الطلب على الفور، أو false في الحالات الأخرى. على سبيل المثال، تعرض الدالة true القيمة ERROR_NETWORK_CHANGED عندما تعرض الدالة getErrorCode القيمة ERROR_NETWORK_CHANGED لأنّ إعادة محاولة الطلب قد تنجح باستخدام إعدادات الشبكة الجديدة، ولكن تعرض الدالة true القيمة false عندما تعرض الدالة getErrorCode() القيمة ERROR_INTERNET_DISCONNECTED لأنّ إعادة محاولة الطلب على الفور ستؤدي إلى حدوث الخطأ نفسه (بدلاً من ذلك، يجب تأخير إعادة المحاولة إلى أن يستعيد الجهاز الاتصال بالشبكة).

المرتجعات
boolean

true إذا كان من المحتمل أن تنجح إعادة محاولة تنفيذ هذا الطلب على الفور، false في الحالات الأخرى.