# Skill:错误处理(Android) 与具体业务无关的 Android 错误展示设计:错误类型、友好文案与组件。 --- ## 错误类型 - **ErrorType** 枚举:NETWORK、SERVER、TIMEOUT、AUTH、NOT_FOUND、VALIDATION、UNKNOWN。 ## ErrorHandler - `getFriendlyError(errorType, originalMessage)`:生产环境返回友好文案,开发环境可带出 `originalMessage`(如 VALIDATION)。 - `detectErrorType(exception)`:根据异常 message 关键词推断类型。 - `detectErrorTypeByStatusCode(statusCode)`:401/403→AUTH,404→NOT_FOUND,5xx→SERVER 等。 - `getDisplayMessage` / `handleException`:统一得到最终展示文案。 ## 组件 - **FriendlyErrorView**:全屏错误页,图标+标题+描述+重试/去登录按钮,可选动画。 - **FriendlyErrorDialog**:弹窗版,带确认/取消或重试。 - **InlineErrorMessage**:表单等内联错误,生产环境对部分技术性文案做友好替换。 - **Snackbar**:`showFriendlyError` 扩展,用于轻量提示。 ## 约定 - 生产环境不直接暴露后端异常原文;开发环境可通过 `AppConfig.isDebugMode` 显示原始信息。