ऐनिमेशन वाले GIF दिखाएं

ऐनिमेशन वाले GIF, बातचीत करने और खुद की भावनाएं ज़ाहिर करने में मदद करते हैं. इससे एक डाइनैमिक और बातचीत में दिलचस्प एलिमेंट जोड़कर अपनी भावनाएं ज़ाहिर की जा सकती हैं. सिर्फ़ स्टैटिक इमेज या टेक्स्ट की तुलना में, प्रतिक्रियाओं और हंसी-मज़ाक़ को ज़्यादा असरदार तरीके से इस्तेमाल किया जा सकता है. ऑनलाइन कल्चर में GIF की लोकप्रियता को देखते हुए, इन्हें इंटिग्रेट करना ज़रूरी है. इससे, उपयोगकर्ताओं को आधुनिक सुविधाएं और बेहतर मल्टीमीडिया अनुभव मिलता है.

इमेज लोड करने वाली लाइब्रेरी का इस्तेमाल करके, ऐनिमेशन वाले GIF दिखाएं

इमेज लोड होने में लाइब्रेरी का काम बहुत आसान हो जाता है. इसमें अक्सर इमेज लोड होने वाली ऐनिमेशन वाले GIF जैसी सुविधाओं के लिए, पुराने सिस्टम के साथ काम करने की सुविधा. नीचे दिए गए कोड दिखाता है कि ऐनिमेशन वाले GIF को कॉइल इमेज लोडिंग लाइब्रेरी:

GIF के लिए Coil डिपेंडेंसी जोड़ें:

implementation("io.coil-kt:coil-gif:2.6.0")

GIF लोड करने वाला टूल बनाएं. इसके लिए, Android 9 (एपीआई लेवल 28) में जोड़े गए प्लैटफ़ॉर्म ImageDecoder और Coil के GifDecoder, दोनों का इस्तेमाल करें. ऐसा इसलिए किया जाता है, ताकि पुराने वर्शन के साथ भी काम किया जा सके:

val gifEnabledLoader = ImageLoader.Builder(this)
    .components {
        if ( SDK_INT >= 28 ) {
            add(ImageDecoderDecoder.Factory())
        } else {
            add(GifDecoder.Factory())
        }
    }.build()

अपने Coil AsyncImage कॉम्पोनेंट में gifEnabledLoader का इस्तेमाल करें:

AsyncImage(
    imageLoader = gifEnabledLoader,
    ...
)

Android प्लैटफ़ॉर्म की सहायता का इस्तेमाल करके ऐनिमेशन वाले GIF दिखाएं

AsyncImage(
     model = request,
     imageLoader = videoEnabledLoader,
     contentDescription = null
 )

Android 9+ (एपीआई लेवल 28) में, ऐनिमेशन वाली GIF फ़ाइलों के साथ काम करने की सुविधा पहले से मौजूद है. एक Accompanist लाइब्रेरी से मिलने वाली मदद से, Jetpack Compose ये काम कर सकता है कोड की बस कुछ पंक्तियों के साथ इन एनिमेशन को चलाएं.

ड्रॉ करने लायक पेंटर के साथ काम करने के लिए, Accompanist लाइब्रेरी डिपेंडेंसी जोड़ें:

implementation("com.google.accompanist:accompanist-drawablepainter:0.35.0-alpha")

ऐसा तरीका बनाएं जो ऐनिमेटेड GIF को को AnimatedImageDrawable में लोड करता हो ImageDecoder का इस्तेमाल करके:

private fun createAnimatedImageDrawableFromImageDecoder(context: Context, uri: Uri): AnimatedImageDrawable {
    val source = ImageDecoder.createSource(context.contentResolver, uri)
    val drawable = ImageDecoder.decodeDrawable(source)
    return drawable as AnimatedImageDrawable
}

rememberDrawablePainter का इस्तेमाल इसके साथ करें AnimatedImageDrawable:

Image(
    painter = rememberDrawablePainter(
        drawable = createAnimatedImageDrawableFromImageDecoder(applicationContext, mediaUri)),
     contentDescription = "animated gif"
)

इमेज कीबोर्ड और अन्य रिच कॉन्टेंट से GIF फ़ाइलों के साथ काम करें

ऐनिमेशन वाली GIF फ़ाइलें, कई Android कीबोर्ड में लोकप्रिय सुविधाएं हैं. इनमें ये सुविधाएं शामिल हैं Google का Gboard. किसी भी तरह के स्टिकर या ऐनिमेशन को इस्तेमाल करने के लिए, फ़िलहाल OnReceiveContentListener का इस्तेमाल करने का सुझाव दिया जाता है. भले ही, वह इनपुट के तरीके से या किसी दूसरे ऐप्लिकेशन से आता हो.

नीचे दी गई चीज़ों के लिए सहायता देने के तरीके के बारे में ज़्यादा जानने के लिए, रिच कॉन्टेंट पाएं देखें आपके ऐप्लिकेशन में GIF ऐनिमेशन और अन्य रिच मीडिया पाने के लिए.