1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

UnknownHostException

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von lowterm, 15.11.2010.

  1. lowterm, 15.11.2010 #1
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hi,

    seit ein paar Tagen versuche ich eine Funktion zu schreiben, die mir unter Android den Quellcode einer HTML-Datei aus dem Netz zurückgibt. Leider ist die Sache schwieriger als ich zu Anfang dachte. Im Netz habe ich einige Lösungen gefunden, die alle nichts taugten. Del Teil, der Fehler verursacht ist:

    private static final String URL = "http://www.heise.de";
    HttpGet httpget = ​
    new HttpGet(URL);
    HttpResponse res =
    null;

    DefaultHttpClient httpclient =
    new DefaultHttpClient();

    res = httpclient.execute(httpget);

    Genau an dieser Stelle kommt die Fehlermeldung:

    UnknownHostException: www.heise.de

    leider bin ich auch mit meinem Latein am Ende. Kann mir bitte jemand hierbei helfen?

    Danke im Voraus.

     
  2. s3th.g3ck9, 15.11.2010 #2
    s3th.g3ck9

    s3th.g3ck9 Android-Experte

    Beiträge:
    886
    Erhaltene Danke:
    118
    Registriert seit:
    12.10.2010
    Hast du auch im manifest die berechtigung für den internet zugriff definiert?

    Sent from my Galaxy 3 using Tapatalk
     
  3. funcoder, 15.11.2010 #3
    funcoder

    funcoder Erfahrener Benutzer

    Beiträge:
    218
    Erhaltene Danke:
    38
    Registriert seit:
    15.08.2009
    Hast du das bisher nur im Emulator ausprobiert gehabt? Ich hatte auch schonmal das Problem das ich im Emulator keinen Internet Zugriff hatte. Am richtigen Android gerät ging es einwandfrei.
     
  4. lowterm, 16.11.2010 #4
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hi,

    danke für die Antworten. In Manifest? Du meinst diese Zeile:

    <uses-permission android:name="android.permission.INTERNET" />

    Versucht habe ich. Ich bekomme aber von Debuger eine Fehlermeldung. Anscheint wird das nicht erkannt.

    Ich probiere momentan alles im Emulator. Wenn ich aber das Ganze unter Emulator nicht testen kann, wie soll ich dann mit der Entwicklung weiter machen. Mir steht ja zur Zeit kein echtes Gerät zur Verfügung.

    Gruß
     
  5. s3th.g3ck9, 16.11.2010 #5
    s3th.g3ck9

    s3th.g3ck9 Android-Experte

    Beiträge:
    886
    Erhaltene Danke:
    118
    Registriert seit:
    12.10.2010
    Öhm... welche zeile? Da ist nichts zu sehen. Berechrigung müssen im manifest-xml explizit vergeben werden. Google mal nech android berechtigungen.

    Sent from my Galaxy 3 using Tapatalk
     
  6. Kranki, 16.11.2010 #6
    Kranki

    Kranki Ehrenmitglied

    Beiträge:
    3,831
    Erhaltene Danke:
    814
    Registriert seit:
    19.07.2009
    Tablet:
    Samsung Galaxy Tab 3 7.0 Lite
    Eine fehlende Berechtigung sollte sich in einer SecurityException äußern, nicht in der da. Das sieht eher nach fehlgeschlagener Namensauflösung aus.

    Sent from my Nexus One
     
  7. funcoder, 16.11.2010 #7
    funcoder

    funcoder Erfahrener Benutzer

    Beiträge:
    218
    Erhaltene Danke:
    38
    Registriert seit:
    15.08.2009
    Stimmt, muss Kranki recht geben. Deine Exception liegt an der nicht funktionierenden Namensauflösung. Deshalb, kannst du im Android-Browser im Emulator eine beliebige Website aufrufen?
     
  8. lowterm, 16.11.2010 #8
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hi,

    sorry, ich weiss es nicht, warum die angegebene XML-Zeile bei euch nicht zu sehen ist. Ich versuche es noch einmal:

    Code:
    <uses-permission android:name="android.permission.INTERNET"></uses-permission>
    
    Ich finde überall dies als Empfehlung, um via Android auf externen URLs zugreifen zu können. Wie gesagt, dies verursacht bei mir eine Fehlermeldung.

    Gruß
     
    Zuletzt bearbeitet: 16.11.2010
  9. lowterm, 16.11.2010 #9
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hallo,

    ich habe gerade das mit "AndroidManifest.xml" nochmal getestet. Ich bekomme zwar keine Fehlermeldung mehr von Manifest, die alte Fehlermeldung mit "UnknownHostException" ist aber immer noch da.

    Gruß
     
  10. funcoder, 16.11.2010 #10
    funcoder

    funcoder Erfahrener Benutzer

    Beiträge:
    218
    Erhaltene Danke:
    38
    Registriert seit:
    15.08.2009
    Funktioniert im Emulator überhaupt die Namensauflösung?
    Versuch mal im Android Browser eine beliebige Adresse aufzurufen.
    Dann wissen wir wenigstens ob es ein allgemeines Problem ist, oder doch dein Code :)
     
  11. lowterm, 16.11.2010 #11
    lowterm

    lowterm Threadstarter Neuer Benutzer

    Beiträge:
    14
    Erhaltene Danke:
    0
    Registriert seit:
    13.11.2010
    Hi,

    eine Seite aufzurufen fonktioniert einwandfrei. Ich kann mit

    Code:
    [SIZE=2][LEFT][/SIZE][SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f][U]Uri[/U] [U]uri[/U] = Uri.parse("http://www.heise.de");[/LEFT]
    [/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][LEFT][/SIZE][SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]Intent intent = new Intent(Intent.ACTION_VIEW, [U]uri[/U]);[/LEFT]
    [/COLOR][/SIZE][/COLOR][/SIZE][SIZE=2][/SIZE][SIZE=2][COLOR=#3f7f5f][SIZE=2][COLOR=#3f7f5f]startActivity(intent); 
    [/COLOR][/SIZE][/COLOR][/SIZE]
    die Seite einfach aufrufen, auch jede andere vom Emulator aus.

    Gruß
     

Diese Seite empfehlen