kostenloser Webspace werbefrei: lima-city


Problem mit HTTP Request auf Android (Java)

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    na-web

    na-web hat kostenlosen Webspace.

    Liebe Community
    Wieder einmal bin ich komplett aufgeschmissen. Ich habe ein kleines Problem, ich habe folgenden Code:
    package com.nfasoftware.myschool;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    
    import java.io.BufferedInputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.net.MalformedURLException;
    import java.net.URL;
    
    import javax.net.ssl.HttpsURLConnection;
    
    public class student_register extends AppCompatActivity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_student_register);
    
            Button button = (Button)findViewById(R.id.button);
            button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    try {
                        URL url = new URL("https://www.android.com/");
                        HttpsURLConnection urlConnection = (HttpsURLConnection) url.openConnection();
                        try {
                            InputStream in = new BufferedInputStream(urlConnection.getInputStream());
                        } finally {
                            urlConnection.disconnect();
                        }
    
                    }
                    catch (MalformedURLException e) {
    
                    }
                    catch(IOException e) {
    
                    }
    
                }
            });
        }
    }
    In Android Studio werden mir keine Fehler angezeigt, wenn ich nun aber die App auf mein Smartphone lade, stürzt die App beim Klick auf den Button ab. Bzw. schliesst sich auf mysteriöse Weise (zumindest für mich). Ich bin Java Anfänger, vermutlich handelt es sich also um einen Anfängerfehler, trotzdem wäre ich dankbar für einen Hinweis, woran der Fehler liegen könnte.
    Das Ziel dieser Aktivität ist es schlicht und ergreifend nur eine Website abzurufen und später, sobald ich soweit bin Daten per Post an einen Webserver zu senden. Ich habe schon sehr (sehr) viele Tutorials zu HTTP Requests gesehen, aber irgendwie funktioniert es bei mir einfach nicht.
    Ich hoffe, jemand kann mir helfen.
    Grüsse na-web
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. schrotti12

    Moderator Kostenloser Webspace von schrotti12

    schrotti12 hat kostenlosen Webspace.

    Hast du der App Netzwerkzugriff in der XML manifest Datei erlaubt?

    Siehe: https://developer.android.com/guide/topics/manifest/manifest-intro

    Bei neuen Versionen ist Netzwerkzugriff im Main-Thread teilweise auch nicht mehr erlaubt. Bei Timeout steht dann nämlich die ganze App. Kann sein, dass du einen Worker-Thread schreiben musst, der das macht.

    Beitrag zuletzt geändert: 23.9.2019 21:04:14 von schrotti12
  4. Autor dieses Themas

    na-web

    na-web hat kostenlosen Webspace.

    Hallo und erstmal danke für die schnelle Antwort
    In der Datei AndroidManifest.xml habe ich folgende Zeile innerhalb des manifest-tags eingefügt:
    <uses-permission android:name="android.permission.INTERNET"/>
    Genügt das und ist das korrekt, oder muss man da noch mehr machen? Soweit ich gelesen habe, müsste es eigentlich genügen. Da die App ja abstürzt, nehme ich an es handelt sich um das Zweite, das du angesprochen hast. Ich nutze Android 8.0.0. Ich bin wie gesagt Anfänger, könntest du mir vielleicht ein Beispiel zeigen, wie man das mit einem Worker-Thread macht?
    Vielen Dank im Voraus
    na-web
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!