Events

:

:

Elektronik | Funk | Software

Der Technik-Blog

  • Social Media

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden

    Der Technik-Blog

    Android Image Download from PHP Java Code

    Android Bild Download

    Alex @ AEQ-WEB

    Auf dieser Seite zeigen wir, wie unter Android mit dem HTTP-Client ein Image von einer PHP-Datei heruntergeladen wird. Ganz unten in der App befindet sich ein Button, der den Task für den Download startet. Das Foto wird dabei im Hintergrund heruntergeladen und nach der Fertigstellung des Downloads in die ImageView geladen. Die App zeigt anschließend in der TextView an, ob der Download erfolgreich war.

    Android Version API Version
    4.0.3 15

    Werbung:

    PHP Image Server

    Der PHP-Script stellt die Daten für die App bereit. Das Foto wird direkt von der PHP-Datei geladen und nicht von einem Pfad mit der Bilddatei. Das hat den Vorteil, dass nicht jedes Bild eine eigene Datei hat. Mittels GET-Parameter kann die PHP-Datei auch ein bestimmtes Image anzeigen. Außerdem kann der Script so modifiziert werden, dass das Bild erst nach einer Autorisierung angezeigt wird. Der hier verwendete PHP-Code hat drei Bilder, von denen er zufällig eines ausgibt. Dieses Beispiel ist auch auf unseren Testserver verfügbar und mit der App kompatibel.

    Image Server
    Download
    HTTP_Image.apk
    Download
    HTTP_Image Source
    Download

    MainActivity: Dieser Abschnitt wird in die MainActivity kopiert.

    
    public class MainActivity extends AppCompatActivity {
    
        TextView txt;
        boolean download_ok;
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            txt = (TextView)findViewById(R.id.textView);
            Button button= (Button) findViewById(R.id.button);
            button.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    new DownloadImageFromInternet((ImageView) findViewById(R.id.imageView))
                            .execute("http://testserver.aeq-web.com/android_load_image/index.php");
                }
            });
        }
        private class DownloadImageFromInternet extends AsyncTask {
            ImageView imageView;
    
            public DownloadImageFromInternet(ImageView imageView) {
                this.imageView = imageView;
                txt.setTextColor(Color.GRAY);
                txt.setText("Try to download image....");
            }
    
            protected Bitmap doInBackground(String... urls) {
                String imageURL = urls[0];
                Bitmap d_image = null;
                try {
                    InputStream in = new java.net.URL(imageURL).openStream();
                    d_image = BitmapFactory.decodeStream(in);
                    download_ok = true;
                } catch (Exception e) {
                    download_ok = false;
                    e.printStackTrace();
                }
                return d_image;
            }
    
            protected void onPostExecute(Bitmap result) {
                txt_update();
                imageView.setImageBitmap(result);
            }
    
            void txt_update (){
                if(download_ok == true) {
                    txt.setTextColor(Color.GREEN);
                    txt.setText("Image was successfully downloaded");
                }else {
                    txt.setTextColor(Color.RED);
                    txt.setText("Image could not be downloaded");
                }
            }
        }
    
        }
    

    Manifest: Diese Zeile wird in die Manifest kopiert, um den Zugriff auf das Internet zu erlauben.

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


    122X122

    Über den Autor

    Alex, der Gründer von AEQ-WEB. Seit über 10 Jahren beschäftigt er sich mit Computern und elektronischen Bauteilen aller Art. Neben den Hardware-Projekten entwickelt er auch Webseiten, Apps und Software für Computer.

    Top Artikel in dieser Kategorie:

    Android GPS Data & Position Java

    Android GPS auslesen

    • DE/EN

    Auf dieser Seite zeigen wir, wie mit Android die GPS-Position, Geschwindigkeit & Seehöhe sowie der Name der Ortschaft ermittelt werden kann.

    Weiterlesen
    Android HTTP Request - Async Task

    Android HTTP Request

    • DE/EN

    Auf dieser Seite zeigen wir, wie unter Android ein asynchroner HTTP/HTTPS Request gestartet wird und mittels Task verarbeitet wird.

    Weiterlesen

    Social Media

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden