[JAVA] Je n'ai trouvé aucun moyen d'obtenir le code d'erreur lorsque j'ai reçu une exception sur Android

Contexte

Avec Swift ou ObjC Le code d'erreur est inclus dans le NSError intercepté

let e: NSError = NSError(domain: "unko", code: 931, userInfo: nil)
print(e.code) // <- 931

En revanche, lorsque j'ai reçu une exception avec HttpURLConnection sur Android Java, un tel message était affiché. ``failed to connect to /...** (port *****): connect failed: ECONNREFUSED (Connection refused)``` Je me suis demandé si cet ECONNREFUSED avait un code d'erreur dans Excption, mais je l'ai cherché, mais getCode comme Swift()Il n'y a pas une telle chose Eh, getLocalizedMessage()Est-il classé à partir de la chaîne de caractères? C'est un tel imbécile J'avais des problèmes avec ce sentiment, mais j'étais un peu accro car aucune information ne sortait même si je cherchais #je l'ai trouvé

URL url = new URL("http://unko.com");
HttpURLConnection connection = null;
try {
    connection = (HttpURLConnection) url.openConnection();
    connection.setRequestMethod("GET");
 connection.connect (); // Exception à venir
    Log.d("unko", "" + connection.getResponseCode());
    Log.d("unko", "" + connection.getContentType());
} catch (Exception e) {
    Log.w("unko", "" + ((ErrnoException) e.getCause()).errno);
} finally {
    if (connection != null) {
        connection.disconnect();
    }
}

J'ai le code dans cette partie

((ErrnoException) e.getCause()).errno // == 111

Ce 111 semble provenir d'erreurs système Linux Il ne fait aucun doute que j'ai également envoyé un message tel que ETIMEDOUT ...

Errors: Linux System Errors http://www-numi.fnal.gov/offline_software/srt_public_context/WebDocs/Errors/unix_system_errors.html

Au fait, ils avaient des constantes définies OsConstants.ECONNREFUSED

Alors j'ai le code d'erreur

Oui

#Résumé -C'est ennuyeux de prendre le code -Je ne l'ai pas étudié correctement, donc s'il y a une autre méthode, ce sera grave. -Java est de la bouse

Recommended Posts

Je n'ai trouvé aucun moyen d'obtenir le code d'erreur lorsque j'ai reçu une exception sur Android
J'ai une question. Une erreur se produit lors de la lecture d'une vidéo dans Listview avec Android.
Je souhaite afficher un message d'erreur lors de l'inscription dans la base de données
J'obtiens une erreur lors de l'ajout d'une dépendance
Après avoir renouvelé le certificat avec CircleCI × fastlane, j'obtiens un état de sortie: erreur 65.
Débutant: j'obtiens une erreur à la ligne 30. Je ne sais pas où le réparer.
Je souhaite simplifier la sortie du journal sur Android
Lancer une exception et attraper lorsqu'il n'y a pas de gestionnaire correspondant au chemin au printemps
Je veux rendre le cadre de la zone de texte rouge lorsqu'il y a une erreur de saisie
Si vous obtenez une erreur "Quantum Renderer: aucun pipeline approprié trouvé" lors de l'exécution d'un fichier jar
J'obtiens une erreur de version de Ruby lorsque j'essaye de démarrer Rails.
J'ai essayé de traduire le message d'erreur lors de l'exécution d'Eclipse (Java)
[Android] Je souhaite obtenir l'auditeur à partir du bouton de ListView
[Android] Obtenez la date du lundi
Obtenez la couverture du code JUnit sur Android.
Que faire si vous obtenez l'erreur Trop long sans sortie (dépassé 10m0s) dans CircleCI
[Android Studio] Que faire en cas d'erreur en crachant l'enfer
[Visual Studio Code] J'obtiens une erreur de syntaxe lors de l'exécution du débogage lors de l'utilisation de rbenv
[Docker] Comment créer lorsque le code source est monté en liaison sur le conteneur
il ne reste plus d'espace sur l'appareil Que faire en cas d'erreur
Je souhaite obtenir l'adresse IP lors de la connexion au Wi-Fi avec Java
[Rails] Que faire si vous obtenez une erreur indiquant "Impossible de trouver un moteur d'exécution JavaScript." Lors de l'exécution de la commande rails dans Catalina
Quand j'ai essayé de démarrer GlassFish, j'ai eu une erreur interne lors de la "Publication sur GlassFish 4.0 sur mon hôte local ...". Que faire quand ça devient
Que faire si le message "Un serveur est déjà en cours d'exécution" s'affiche. Erreur lors de la tentative de démarrage du serveur rails
Dans WSL2, quand j'ai fait `docker-compose up`, j'ai eu une erreur disant que le fichier sh n'a pas été trouvé.
Ce que j'ai essayé quand je voulais obtenir tous les champs d'un haricot
Points sur lesquels je suis tombé lors de la création d'une application Android [Mis à jour de temps en temps]
[Heroku] Comment résoudre lorsqu'une erreur est affichée par git push heroku master
J'ai réussi à obtenir un blanc lorsque j'ai apporté le contenu de Beans dans la zone de texte
[Android] Obtenez la position tapée (coordonnées) sur l'écran
Migration d'Eclipse vers IntelliJ (en cours)
Code utilisé pour connecter Rails 3 à PostgreSQL 10
Je veux obtenir la valeur en Ruby
[Android Studio] Je souhaite définir des restrictions sur les valeurs enregistrées dans EditText [Java]
J'ai eu une erreur en essayant d'installer sbt pour créer un environnement de développement Scala
Personnalisez l'affichage lorsqu'une erreur telle que 404 Not Found se produit dans Spring Boot