Google Street View अपने कवरेज इलाके की तय सड़कों से पैनोरामा वाले 360-डिग्री व्यू दिखाता है.
इस वीडियो में दिखाया गया है कि कैसे Street View सेवा का इस्तेमाल करके, उपयोगकर्ताओं को मैप पर मौजूद किसी पते का असल अनुभव दिया जा सकता है. साथ ही, उन्हें मंज़िल या पसंदीदा जगह के बारे में सही जानकारी दी जा सकती है.
Google Maps के Android एपीआई v2 और आपके Android डिवाइस पर Google Maps ऐप्लिकेशन के लिए उपलब्ध कवरेज, एक जैसी ही होती है. Street View के बारे में जानकारी देने के लिए, इंटरैक्टिव मैप पर Street View के बारे में ज़्यादा पढ़ें और उन इलाकों को देखें जहां यह सुविधा उपलब्ध है.
StreetViewPanorama
क्लास आपके ऐप्लिकेशन में Street View पैनोरामा को मॉडल करती है. आपके यूज़र इंटरफ़ेस (यूआई) में, पैनोरामा को StreetViewPanoramaFragment
या StreetViewPanoramaView
ऑब्जेक्ट से दिखाया जाता है.
कोड सैंपल
GitHub पर ApiDemos स्टोर करने की जगह में, ऐसे सैंपल शामिल हैं जो Street View के इस्तेमाल के बारे में बताते हैं.
Kotlin के सैंपल:
- StreetViewPanoramaBasicDemoActivity: Street View का इस्तेमाल करने से जुड़ी बुनियादी बातें
- StreetViewPanoramaEventsDemoActivity: इवेंट सुनना
- StreetViewPanoramaNavigationDemoActivity: प्रोग्राम के हिसाब से, Street View पैनोरामा को कंट्रोल करना
- StreetViewPanoramaOptionsDemoActivity: यूज़र इंटरफ़ेस (यूआई) और जेस्चर के विकल्प बदलना
- StreetViewPanoramaViewDemoActivity: फ़्रैगमेंट के बजाय
StreetViewPanoramaView
का इस्तेमाल करना - SplitStreetViewPanoramaAndMapDemoActivity: ऐसी गतिविधि का इस्तेमाल करना जो सड़क का व्यू और मैप दिखाती है
Java सैंपल:
- StreetViewPanoramaBasicDemoActivity: Street View का इस्तेमाल करने से जुड़ी बुनियादी बातें
- StreetViewPanoramaEventsDemoActivity: इवेंट सुनना
- StreetViewPanoramaNavigationDemoActivity: प्रोग्राम के हिसाब से, Street View पैनोरामा को कंट्रोल करना
- StreetViewPanoramaOptionsDemoActivity: यूज़र इंटरफ़ेस (यूआई) और जेस्चर के विकल्प बदलना
- StreetViewPanoramaViewDemoActivity: फ़्रैगमेंट के बजाय
StreetViewPanoramaView
का इस्तेमाल करना - SplitStreetViewPanoramaAndMapDemoActivity: एक ऐसी गतिविधि बनाना जो सड़क का व्यू और मैप दिखाती हो
Android के लिए Maps SDK में Street View की खास जानकारी
Android के लिए Maps SDK टूल, Google Street View में इस्तेमाल की गई तस्वीरें लेने और उनमें बदलाव करने के लिए Street View की सेवा देता है. इमेज को पैनोरामा के तौर पर दिखाया जाता है.
हर Street View पैनोरामा एक इमेज या इमेज का सेट होता है, जो एक ही जगह से पूरी तरह से 360-डिग्री व्यू दिखाता है. इमेज, इक्वीरेक्टैंग्युलर (प्लेट कारे) प्रोजेक्शन के मुताबिक होती हैं, जिसमें 360 डिग्री हॉरिज़ॉन्टल व्यू (पूरी तरह रैप-अराउंड) और 180 डिग्री का वर्टिकल व्यू (सीधे ऊपर से सीधे नीचे) होता है. मिलने वाला 360-डिग्री पैनोरामा, किसी गोले पर प्रक्षेप को परिभाषित करता है, जिसमें इमेज को गोले की द्वि-आयामी सतह पर लिपटा हुआ होता है.
StreetViewPanorama
से ऐसा व्यूअर मिलता है जो पैनोरामा को गोले के तौर पर रेंडर करता है और इसके बीच में कैमरा होता है. आपके पास, कैमरे के ज़ूम और ओरिएंटेशन (झुकाव और बियरिंग) को कंट्रोल करने के लिए, StreetViewPanoramaCamera
में बदलाव करने का विकल्प है.
शुरू करें
प्रोजेक्ट सेट अप करना
Android प्रोजेक्ट के लिए Maps SDK टूल सेट अप करने के लिए, शुरुआती निर्देश देखें.
पैनोरामा जोड़ने से पहले Street View पैनोरामा की उपलब्धता देखें
Google Play services की SDK टूल क्लाइंट लाइब्रेरी में Street View के कुछ सैंपल होते हैं. इन्हें अपने प्रोजेक्ट में इंपोर्ट किया जा सकता है और इनका इस्तेमाल डेवलपमेंट के लिए किया जा सकता है. नमूने इंपोर्ट करने के दिशा-निर्देशों के लिए परिचय देखें.
Android Utility लाइब्रेरी के लिए Maps SDK टूल, क्लास की एक ओपन सोर्स लाइब्रेरी है. यह कई तरह के ऐप्लिकेशन के लिए काम की होती है. GitHub रिपॉज़िटरी में Street View मेटाडेटा यूटिलिटी शामिल है.
यह सुविधा यह जांच करती है कि कोई जगह Street View पर काम करती है या नहीं. किसी Android ऐप्लिकेशन में Street View पैनोरामा जोड़ते समय होने वाली गड़बड़ियों से बचा जा सकता है. इसके लिए, इस मेटाडेटा उपयोगिता को कॉल करें और रिस्पॉन्स OK
मिलने पर ही Street View पैनोरामा जोड़ें.
एपीआई का इस्तेमाल करना
किसी Android फ़्रैगमेंट में Street View पैनोरामा जोड़ने के लिए, नीचे दिए गए निर्देशों का पालन करें. अपने ऐप्लिकेशन में Street View जोड़ने का यह सबसे आसान तरीका है. फिर फ़्रैगमेंट, व्यू, और पैनोरामा को पसंद के मुताबिक बनाने के बारे में ज़्यादा पढ़ें.
Street View पैनोरामा जोड़ें
इस तरह का Street View पैनोरामा जोड़ने के लिए, नीचे दिया गया तरीका अपनाएं:
सारांश में:
- उस गतिविधि में फ़्रैगमेंट ऑब्जेक्ट जोड़ें जो Street View पैनोरामा को हैंडल करेगा. ऐसा करने का सबसे आसान तरीका यह है कि
Activity
की लेआउट फ़ाइल में<fragment>
एलिमेंट जोड़ा जाए. OnStreetViewPanoramaReadyCallback
इंटरफ़ेस का इस्तेमाल करें औरStreetViewPanorama
ऑब्जेक्ट को हैंडल करने के लिए,onStreetViewPanoramaReady(StreetViewPanorama)
कॉलबैक के तरीके का इस्तेमाल करें.- कॉलबैक को रजिस्टर करने के लिए, फ़्रैगमेंट पर मौजूद
getStreetViewPanoramaAsync()
को कॉल करें.
नीचे हर चरण के बारे में ज़्यादा जानकारी दी गई है.
फ़्रैगमेंट जोड़ें
फ़्रैगमेंट ऑब्जेक्ट तय करने के लिए, गतिविधि की लेआउट फ़ाइल में <fragment>
एलिमेंट जोड़ें. इस एलिमेंट में, class
एट्रिब्यूट को com.google.android.gms.maps.StreetViewPanoramaFragment
(या SupportStreetViewPanoramaFragment
) पर सेट करें.
यहां लेआउट फ़ाइल में फ़्रैगमेंट का एक उदाहरण दिया गया है:
<fragment android:name="com.google.android.gms.maps.StreetViewPanoramaFragment" android:id="@+id/streetviewpanorama" android:layout_width="match_parent" android:layout_height="match_parent"/>
Street View कोड जोड़ें
अपने ऐप्लिकेशन में Street View पैनोरामा का इस्तेमाल करने के लिए, आपको OnStreetViewPanoramaReadyCallback
इंटरफ़ेस लागू करना होगा. साथ ही, StreetViewPanoramaFragment
या StreetViewPanoramaView
ऑब्जेक्ट पर कॉलबैक का इंस्टेंस सेट करना होगा. इस ट्यूटोरियल में StreetViewPanoramaFragment
का इस्तेमाल किया गया है, क्योंकि अपने ऐप्लिकेशन में Street View को जोड़ने का यह सबसे आसान तरीका है. इसके लिए, कॉलबैक इंटरफ़ेस को लागू करें:
Kotlin
class StreetViewActivity : AppCompatActivity(), OnStreetViewPanoramaReadyCallback { // ... }
Java
class StreetViewActivity extends AppCompatActivity implements OnStreetViewPanoramaReadyCallback { // ... }
Activity
के onCreate()
तरीके में, लेआउट फ़ाइल को कॉन्टेंट व्यू के तौर पर सेट करें. उदाहरण के लिए, अगर लेआउट फ़ाइल का
नाम main.xml
है, तो इस कोड का इस्तेमाल करें:
Kotlin
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_street_view) val streetViewPanoramaFragment = supportFragmentManager .findFragmentById(R.id.street_view_panorama) as SupportStreetViewPanoramaFragment streetViewPanoramaFragment.getStreetViewPanoramaAsync(this) }
Java
@Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_street_view); SupportStreetViewPanoramaFragment streetViewPanoramaFragment = (SupportStreetViewPanoramaFragment) getSupportFragmentManager() .findFragmentById(R.id.street_view_panorama); streetViewPanoramaFragment.getStreetViewPanoramaAsync(this); }
FragmentManager.findFragmentById()
को कॉल करके फ़्रैगमेंट के लिए हैंडल पाएं. इसमें अपने <fragment>
एलिमेंट का रिसॉर्स आईडी पास करें.
ध्यान दें कि लेआउट फ़ाइल बनाने पर, Android प्रोजेक्ट में रिसॉर्स आईडी R.id.streetviewpanorama
अपने-आप जुड़ जाता है.
इसके बाद, फ़्रैगमेंट पर कॉलबैक सेट करने के लिए, getStreetViewPanoramaAsync()
का इस्तेमाल करें.
Kotlin
val streetViewPanoramaFragment = supportFragmentManager .findFragmentById(R.id.street_view_panorama) as SupportStreetViewPanoramaFragment streetViewPanoramaFragment.getStreetViewPanoramaAsync(this)
Java
SupportStreetViewPanoramaFragment streetViewPanoramaFragment = (SupportStreetViewPanoramaFragment) getSupportFragmentManager() .findFragmentById(R.id.street_view_panorama); streetViewPanoramaFragment.getStreetViewPanoramaAsync(this);
इस्तेमाल के लिए तैयार StreetViewPanorama
के नॉन-शून्य इंस्टेंस को वापस पाने के लिए, onStreetViewPanoramaReady(StreetViewPanorama)
कॉलबैक के तरीके का इस्तेमाल करें.
Kotlin
override fun onStreetViewPanoramaReady(streetViewPanorama: StreetViewPanorama) { val sanFrancisco = LatLng(37.754130, -122.447129) streetViewPanorama.setPosition(sanFrancisco) }
Java
@Override public void onStreetViewPanoramaReady(StreetViewPanorama streetViewPanorama) { LatLng sanFrancisco = new LatLng(37.754130, -122.447129); streetViewPanorama.setPosition(sanFrancisco); }
शुरुआती स्थिति को कॉन्फ़िगर करने के बारे में ज़्यादा जानकारी
मैप के उलट, एक्सएमएल की मदद से Street View पैनोरामा की शुरुआती स्थिति को कॉन्फ़िगर नहीं किया जा सकता. हालांकि, आपके पास तय किए गए विकल्पों वाले StreetViewPanoramaOptions
ऑब्जेक्ट को पास करके, पैनोरामा को प्रोग्राम के हिसाब से कॉन्फ़िगर करने का विकल्प होता है.
- अगर
StreetViewPanoramaFragment
का इस्तेमाल किया जा रहा है, तो फ़्रैगमेंट बनाने और पसंद के मुताबिक कॉन्फ़िगर किए गए विकल्पों में पास करने के लिए,StreetViewPanoramaFragment.newInstance(StreetViewPanoramaOptions options)
के स्टैटिक फ़ैक्ट्री तरीके का इस्तेमाल करें. - अगर
StreetViewPanoramaView
का इस्तेमाल किया जा रहा है, तोStreetViewPanoramaView(Context, StreetViewPanoramaOptions)
कंस्ट्रक्टर का इस्तेमाल करें और पसंद के मुताबिक कॉन्फ़िगर किए गए विकल्पों में पास करें.
Kotlin
val sanFrancisco = LatLng(37.754130, -122.447129) val view = StreetViewPanoramaView( this, StreetViewPanoramaOptions().position(sanFrancisco) )
Java
LatLng sanFrancisco = new LatLng(37.754130, -122.447129); StreetViewPanoramaView view = new StreetViewPanoramaView(this, new StreetViewPanoramaOptions().position(sanFrancisco));
StreetViewPanoramaफ़्रैगमेंट के बारे में ज़्यादा जानकारी
StreetViewPanoramaFragment
, Android फ़्रैगमेंट क्लास का सब-क्लास है. इससे आपको Android फ़्रैगमेंट में Street View पैनोरामा दिखाने की सुविधा मिलती है. StreetViewPanoramaFragment
ऑब्जेक्ट, पैनोरामा के लिए कंटेनर का काम करते हैं और StreetViewPanorama
ऑब्जेक्ट का ऐक्सेस देते हैं.
StreetViewPanoramaView
StreetViewPanoramaView
, Android View
क्लास की सब-क्लास है. इसकी मदद से, Android View
में Street View पैनोरामा दिखाया जा सकता है. View
, स्क्रीन पर दिखने वाले आयताकार हिस्से को दिखाता है. साथ ही, यह Android ऐप्लिकेशन और विजेट के लिए बुनियादी बिल्डिंग ब्लॉक है.
StreetViewPanoramaFragment
की तरह, StreetViewPanoramaView
, पैनोरामा के लिए कंटेनर की तरह काम करता है. इससे StreetViewPanorama
ऑब्जेक्ट की मदद से, मुख्य फ़ंक्शन की जानकारी मिलती है. इस क्लास के उपयोगकर्ताओं को गतिविधि की लाइफ़ साइकल के सभी तरीकों (जैसे कि onCreate()
, onDestroy()
, onResume()
, और onPause())
को StreetViewPanoramaView
क्लास में दिए गए तरीकों से फ़ॉरवर्ड करना होगा).
उपयोगकर्ता के कंट्रोल वाली सुविधा को पसंद के मुताबिक बनाएं
डिफ़ॉल्ट रूप से, उपयोगकर्ता को Street View पैनोरामा देखते समय ये सुविधाएं मिलती हैं: पैन करना, ज़ूम करना, और आस-पास के पैनोरामा देखने के लिए. StreetViewPanorama
पर तरीकों की मदद से, लोगों के कंट्रोल किए जाने वाले जेस्चर को चालू और बंद किया जा सकता है. हाथ के जेस्चर की सुविधा बंद होने पर भी, प्रोग्राम के हिसाब से, अपने-आप होने वाले बदलाव किए जा सकते हैं.
पैनोरामा की जगह सेट करें
Street View पैनोरामा की जगह सेट करने के लिए, StreetViewPanorama.setPosition()
पर कॉल करें और LatLng
पास करें.
radius
और source
को वैकल्पिक पैरामीटर के तौर पर भी पास किया जा सकता है.
अगर आप उस क्षेत्र को चौड़ा या छोटा करना चाहते हैं जिसमें Street View का इस्तेमाल करने से मिलता-जुलता पैनोरामा दिखता है, तो दायरा फ़ायदेमंद होता है. 0 की रेडियस का मतलब है कि पैनोरामा पूरी तरह बताए गए LatLng
से जुड़ा होना चाहिए.
डिफ़ॉल्ट दायरा 50 मीटर है. अगर मैच करने वाले एरिया में एक से ज़्यादा पैनोरामा हैं, तो एपीआई सबसे अच्छा मैच दिखाएगा.
सोर्स तब फ़ायदेमंद होता है, जब आपको Street View को सिर्फ़ बाहर के पैनोरामा देखने के लिए प्रतिबंधित करना हो. डिफ़ॉल्ट रूप से, Street View पैनोरामा, म्यूज़ियम, सार्वजनिक इमारतों, कैफ़े, और कारोबारों जैसी जगहों के अंदर हो सकता है. ध्यान दें: हो सकता है कि बताई गई जगह के लिए आउटडोर पैनोरामा मौजूद न हों.
Kotlin
val sanFrancisco = LatLng(37.754130, -122.447129) // Set position with LatLng only. streetViewPanorama.setPosition(sanFrancisco) // Set position with LatLng and radius. streetViewPanorama.setPosition(sanFrancisco, 20) // Set position with LatLng and source. streetViewPanorama.setPosition(sanFrancisco, StreetViewSource.OUTDOOR) // Set position with LaLng, radius and source. streetViewPanorama.setPosition(sanFrancisco, 20, StreetViewSource.OUTDOOR)
Java
LatLng sanFrancisco = new LatLng(37.754130, -122.447129); // Set position with LatLng only. streetViewPanorama.setPosition(sanFrancisco); // Set position with LatLng and radius. streetViewPanorama.setPosition(sanFrancisco, 20); // Set position with LatLng and source. streetViewPanorama.setPosition(sanFrancisco, StreetViewSource.OUTDOOR); // Set position with LaLng, radius and source. streetViewPanorama.setPosition(sanFrancisco, 20, StreetViewSource.OUTDOOR);
इसके अलावा, आप पैनोरामा आईडी के आधार पर जगह की जानकारी सेट करने के लिए, panoId
को StreetViewPanorama.setPosition()
पर पास कर सकते हैं.
पास के पैनोरामा का पैनोरामा आईडी पाने के लिए, सबसे पहले getLocation()
का इस्तेमाल करके StreetViewPanoramaLocation
को फिर से पाएं.
इस ऑब्जेक्ट में मौजूदा पैनोरामा का आईडी और StreetViewPanoramaLink
ऑब्जेक्ट की एक कलेक्शन है. हर ऑब्जेक्ट में, मौजूदा पैनोरामा से कनेक्ट किए गए पैनोरामा का आईडी शामिल है.
Kotlin
streetViewPanorama.location.links.firstOrNull()?.let { link: StreetViewPanoramaLink -> streetViewPanorama.setPosition(link.panoId) }
Java
StreetViewPanoramaLocation location = streetViewPanorama.getLocation(); if (location != null && location.links != null) { streetViewPanorama.setPosition(location.links[0].panoId); }
ज़ूम इन और ज़ूम आउट करना
StreetViewPanoramaCamera.zoom
को सेट करके, ज़ूम के लेवल को प्रोग्राम के हिसाब से बदला जा सकता है.
ज़ूम को 1.0 पर सेट करने से इमेज को 2 के कारक
से आवर्धित किया जाएगा.
यह स्निपेट, ज़ूम को पचास प्रतिशत बढ़ाते हुए StreetViewPanoramaCamera.Builder()
का इस्तेमाल करता है. ऐसा, एक नया कैमरा बनाने के लिए किया जाता है, जिसमें मौजूदा कैमरे को झुकाया और रखा गया हो.
Kotlin
val zoomBy = 0.5f val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom + zoomBy) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing) .build()
Java
float zoomBy = 0.5f; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom + zoomBy) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing) .build();
कैमरे का ओरिएंटेशन (पॉइंट ऑफ़ व्यू) सेट करना
बियरिंग और झुकाने की सुविधा को StreetViewPanoramaCamera
पर सेट करके, आप Street View कैमरे का ओरिएंटेशन तय कर सकते हैं.
- बियरिंग
- जिस दिशा में कैमरा ले जा रहा है, वह कैमरे की जगह के आस-पास सही उत्तर से घड़ी की दिशा में डिग्री में बताया गया है. सही उत्तर 0 है, पूर्व का मतलब 90 है, दक्षिण 180 है, दक्षिण 270 है.
- झुकाएं
- Y-ऐक्सिस, ऊपर या नीचे की ओर झुका हुआ है. रेंज -90 से लेकर 0 से 90 तक होती है. इसमें -90 सीधे नीचे की ओर दिखते हैं, 0 क्षितिज के बीच में, और 90 सीधे ऊपर की ओर दिखते हैं. वैरियंस को कैमरे के शुरुआती डिफ़ॉल्ट पिच से मापा जाता है. यह अक्सर (लेकिन हमेशा नहीं) सपाट हॉरिज़ॉन्टल होता है. उदाहरण के लिए, पहाड़ी पर ली गई किसी इमेज में शायद एक डिफ़ॉल्ट पिच होगी, जो हॉरिज़ॉन्टल नहीं होगी.
अगला स्निपेट, बेयरिंग को बाईं ओर 30 डिग्री बदलते हुए, मौजूदा कैमरे के ज़ूम और झुकाव के साथ नया कैमरा बनाने के लिए StreetViewPanoramaCamera.Builder()
का इस्तेमाल करता है.
Kotlin
val panBy = 30f val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing - panBy) .build()
Java
float panBy = 30; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing - panBy) .build();
नीचे दिया गया स्निपेट, कैमरे को 30 डिग्री ऊपर की ओर झुकाता है.
Kotlin
var tilt = streetViewPanorama.panoramaCamera.tilt + 30 tilt = if (tilt > 90) 90f else tilt val previous = streetViewPanorama.panoramaCamera val camera = StreetViewPanoramaCamera.Builder(previous) .tilt(tilt) .build()
Java
float tilt = streetViewPanorama.getPanoramaCamera().tilt + 30; tilt = (tilt > 90) ? 90 : tilt; StreetViewPanoramaCamera previous = streetViewPanorama.getPanoramaCamera(); StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder(previous) .tilt(tilt) .build();
कैमरे की मूवमेंट पर ऐनिमेशन का कमाल देखें
कैमरे की मूवमेंट को ऐनिमेट करने के लिए, StreetViewPanorama.animateTo()
पर कॉल करें.
ऐनिमेशन, कैमरे के मौजूदा एट्रिब्यूट और नए कैमरे के एट्रिब्यूट के बीच इंटरपोलेट करता है. अगर आपको ऐनिमेशन के बिना सीधे कैमरे पर जाना है, तो
समय को 0 पर सेट करें.
Kotlin
// Keeping the zoom and tilt. Animate bearing by 60 degrees in 1000 milliseconds. val duration: Long = 1000 val camera = StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.panoramaCamera.zoom) .tilt(streetViewPanorama.panoramaCamera.tilt) .bearing(streetViewPanorama.panoramaCamera.bearing - 60) .build() streetViewPanorama.animateTo(camera, duration)
Java
// Keeping the zoom and tilt. Animate bearing by 60 degrees in 1000 milliseconds. long duration = 1000; StreetViewPanoramaCamera camera = new StreetViewPanoramaCamera.Builder() .zoom(streetViewPanorama.getPanoramaCamera().zoom) .tilt(streetViewPanorama.getPanoramaCamera().tilt) .bearing(streetViewPanorama.getPanoramaCamera().bearing - 60) .build(); streetViewPanorama.animateTo(camera, duration);
इस इमेज में तब नतीजा दिखाया गया है, जब ऊपर दिए गए ऐनिमेशन को Handler.postDelayed()
का इस्तेमाल करके, हर 2,000 मिलीसेकंड में चलाने के लिए शेड्यूल किया जाता है: