Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

Android ऐप में URL से Bitmap कैसे प्राप्त करें?

URL से Bitmap डाउनलोड करना

यह उदाहरण दर्शाता है कि Android में AsyncTask का उपयोग करके बैकग्राउंड थ्रेड में URL से इमेज डाउनलोड करके ImageView में कैसे प्रदर्शित करें।

चरण 1: नया प्रोजेक्ट बनाएं

Android Studio में File → New Project चुनें।

चरण 2: लेआउट में दो ImageView जोड़ें (activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:padding="8dp"
    tools:context=".MainActivity">

    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center"
        android:orientation="vertical">

        <ImageView
            android:layout_width="150dp"
            android:layout_height="150dp"
            android:layout_gravity="center"
            android:layout_margin="15dp"
            android:src="@drawable/image" />

    </LinearLayout>

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center"
        android:layout_margin="20sp" />

</LinearLayout>

चरण 3: ड्रॉएबल में प्लेसहोल्डर इमेज जोड़ें

res/drawable में कोई इमेज कॉपी करें।

चरण 4: MainActivity.java में AsyncTask से इमेज लोड करें

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.AsyncTask;
import android.os.Bundle;
import android.widget.ImageView;
import androidx.appcompat.app.AppCompatActivity;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;

public class MainActivity extends AppCompatActivity {

    ImageView imageView;
    String imageUrl = "https://thumbs.dreamstime.com/z/hands-holding-blue-earth-cloud-sky-elements-imag-background-image-furnished-nasa-61052787.jpg";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        imageView = findViewById(R.id.imageView);
        new DownloadImageTask(imageView).execute(imageUrl);
    }

    private static class DownloadImageTask extends AsyncTask {
        private final ImageView imageView;

        DownloadImageTask(ImageView imageView) {
            this.imageView = imageView;
        }

        @Override
        protected Bitmap doInBackground(String... urls) {
            String urlString = urls[0];
            Bitmap bitmap = null;
            try {
                InputStream inputStream = new URL(urlString).openStream();
                bitmap = BitmapFactory.decodeStream(inputStream);
            } catch (IOException e) {
                e.printStackTrace();
            }
            return bitmap;
        }

        @Override
        protected void onPostExecute(Bitmap bitmap) {
            if (bitmap != null) {
                imageView.setImageBitmap(bitmap);
            }
        }
    }
}

चरण 5: AndroidManifest.xml में इंटरनेट अनुमति

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.urltobitmap">

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

    </application>
</manifest>

ऐप चलाएं

डिवाइस कनेक्ट करें, Run दबाएं, और कुछ सेकंड में URL से डाउनलोड की गई इमेज ImageView में दिखाई देगी।

Android ऐप में URL से Bitmap कैसे प्राप्त करें?

  1. Android ऐप में स्क्रीन डायमेंशन पिक्सल में कैसे प्राप्त करें? Android ऐप में स्क्रीन डायमेंशन पिक्सल में कैसे प्राप्त करें?

    यह उदाहरण दर्शाता है कि Android डिवाइस की स्क्रीन चौड़ाई और ऊंचाई को पिक्सल में कैसे प्राप्त किया जाए। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में नया प्रोजेक्ट बनाएं। चरण 2: लेआउट XML res/layout/activity_main.xml - चार TextViews: <?xml version=1.0 encoding=utf-8?> <RelativeLayout x

  1. एंड्रॉइड में बिटमैप से गोलाकार क्षेत्र कैसे क्रॉप करें? (टच-आधारित) एंड्रॉइड में बिटमैप से गोलाकार क्षेत्र कैसे क्रॉप करें? (टच-आधारित)

    एंड्रॉइड में टच जेस्चर से बिटमैप का फ्री-फॉर्म क्रॉपिंग यह उदाहरण दिखाता है कि उपयोगकर्ता के टच इनपुट के आधार पर बिटमैप का मनचाहा आकार कैसे क्रॉप किया जाता है। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनकर नया प्रोजेक्ट बनाएं। चरण 2: लेआउट XML (कस्टम व्यू उपयोग करेगा) res/

  1. अपने PC से Android ऐप्स कैसे इंस्टॉल करें अपने PC से Android ऐप्स कैसे इंस्टॉल करें

    आप इस परिदृश्य से परिचित हो सकते हैं: आप वेब ब्राउज़ कर रहे थे और एक दिलचस्प ऐप पर ठोकर खाई जिसने आपकी जिज्ञासा को बढ़ाया। बस खड़े होकर अपने फोन को ढूंढने, Google Play Store खोलने, ऐप को मैन्युअल रूप से खोजने, और इंस्टॉल पर हिट करने के बजाय, आप सीधे अपने PC से Android ऐप इंस्टॉल कर सकते हैं। इस पोस्