प्रॉडक्ट से जुड़ी खबरें

Wear OS 7 में नया क्या है

पढ़ने में 9 मिनट लगेंगे
जॉन ज़ोलर की प्रोफ़ाइल देखें
John Zoeller डेवलपर रिलेशंस इंजीनियर, Wear OS

आज हम Wear OS 7 को पेश करते हुए बहुत खुश हैं. यह एक बड़ा अपडेट है. इससे उपयोगकर्ताओं और डेवलपर, दोनों को ही बैटरी की कम खपत और बेहतर परफ़ॉर्मेंस का अनुभव मिलेगा.

हम जानते हैं कि स्मार्टवॉच, उपयोगकर्ताओं के लिए पूरे दिन साथ रहने वाले एक ज़रूरी डिवाइस की तरह होती हैं. इसलिए, हम पावर ऑप्टिमाइज़ेशन पर लगातार काम कर रहे हैं, ताकि आपके उपयोगकर्ता अपने पसंदीदा ऐप्लिकेशन का ज़्यादा से ज़्यादा फ़ायदा ले सकें. Wear OS 6 से Wear OS 7 पर अपग्रेड करने वाली स्मार्टवॉच के लिए, सामान्य तौर पर इस्तेमाल करने वाले लोगों को बैटरी लाइफ़ में 10% तक का सुधार दिख सकता है.

Android इकोसिस्टम के लिए, इस सुविधा को बड़े पैमाने पर लॉन्च किया जा रहा है. इस साल के आखिर तक लॉन्च होने वाली चुनिंदा स्मार्टवॉच में Gemini की इंटेलिजेंस की सुविधा होगी. इससे उपयोगकर्ताओं को उनकी ज़रूरत के हिसाब से मदद मिलेगी, ताकि वे ज़रूरी कामों पर फ़ोकस कर सकें. 

Wear OS 7 में, हम सिस्टम की नई सुविधाएं और डेवलपर टूल को बेहतर बना रहे हैं. उपयोगकर्ताओं के लिए उपलब्ध नई सुविधाओं, जैसे कि लाइव अपडेट और बेहतर मीडिया कंट्रोल की मदद से, स्मार्टवॉच पर ज़्यादा स्मार्ट और सहज अनुभव मिलता है. साथ ही, डेवलपर टूलकिट में किए गए सुधारों की मदद से, डेवलपर कलाई पर पहने जाने वाले डिवाइसों के लिए अपने ऐप्लिकेशन के अनुभव को बेहतर बना पाएंगे. जैसे, Wear Compose 1.6 और AppFunctions.  

चलिए, शुरू करते हैं!

Wear OS 7 Canary

अब Google के स्मार्टवॉच प्लैटफ़ॉर्म के अगले वर्शन, Wear OS 7 Canary Emulator को आज़माया जा सकता है. यह Android 17 पर आधारित है और इस साल के आखिर तक उपलब्ध हो जाएगा.  

नए एम्युलेटर की मदद से, ऊपर बताई गई डेवलपर सुविधाओं और टूल का इस्तेमाल किया जा सकता है. साथ ही, आने वाले प्लैटफ़ॉर्म के साथ काम करने के लिए अपने ऐप्लिकेशन की जांच की जा सकती है.  

देखें कि क्या बदला है और आज ही अपने ऐप्लिकेशन की टेस्टिंग शुरू करें.

Wear OS की नई सुविधाओं के बारे में जानें

Wear OS विजेट

Widgets (1).png

Wear OS पर फ़ुल-स्क्रीन टाइल, उपयोगकर्ताओं के लिए सबसे ज़्यादा इस्तेमाल किया जाने वाला प्लैटफ़ॉर्म रहा है. इससे उपयोगकर्ताओं को ज़रूरी अपडेट तुरंत और आसानी से मिल जाते हैं. Android का पूरा सिस्टम, विजेट के लिए एक ही विज़न की ओर बढ़ रहा है. इसलिए, हम डेवलपर के काम को आसान बनाने के लिए, स्मार्टवॉच को Android के बाकी डिवाइसों के साथ इंटिग्रेट कर रहे हैं.

आज हम टाइल के विकास में एक और कदम आगे बढ़ाते हुए, फ़्लेक्सिबल और डाइनैमिक Wear विजेट लॉन्च कर रहे हैं. 

Wear OS के विजेट, Jetpack Glance और नए RemoteCompose फ़्रेमवर्क की मदद से बनाए जाते हैं. ये Tiles ProtoLayout लाइब्रेरी की तुलना में, Compose के साथ ज़्यादा बेहतर तरीके से काम करते हैं और ज़्यादा जानकारी देते हैं. Wear Widgets में दो नए कार्ड लेआउट काम करते हैं—छोटे और बड़े. ये मोबाइल पर 2x1 और 2x2 फ़ॉर्मैट के साथ पूरी तरह से काम करते हैं. इससे यह पक्का होता है कि आपके डिज़ाइन सभी डिवाइसों पर एक जैसे दिखें. साथ ही, आपको कलाई के हिसाब से अपने डिज़ाइन ऑप्टिमाइज़ करने की सुविधा भी मिलती है.

फ़ुल-स्क्रीन टाइल के mainSlot से यूज़र इंटरफ़ेस (यूआई) को 2x2 विजेट में आसानी से बदला जा सकता है. एक नज़र डालें!

widgets code (1).png

नई सुविधाओं के बारे में पूरी जानकारी पाने के लिए, इस हफ़्ते के आखिर में Widgets I/O Talk देखें. साथ ही, Wear OS पर विजेट जोड़ने के लिए, विजेट इस्तेमाल करने से जुड़े शुरुआती निर्देश देखें.

लाइव अपडेट

Live Updates Blog post (1).png

Wear OS 7 में, घड़ियों के लिए लाइव अपडेट की सुविधा उपलब्ध है!

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

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

ऊपर देखें कि Just Eat अपने उपयोगकर्ताओं को अपडेट कैसे देता है!

ज़्यादा जानकारी के लिए, Wear OS पर सूचनाएं लेख पढ़ें.

अपने ऐप्लिकेशन को इंटेलिजेंस सिस्टम से कनेक्ट करना

हम डेवलपर के लिए कई ऐसे तरीके तैयार कर रहे हैं जिनसे वे स्मार्टवॉच पर एजेंट की तरह काम करने वाली सुविधाएं उपलब्ध करा सकें. इनमें AppFunctions से लेकर टास्क ऑटोमेशन टूल तक शामिल हैं.

जब ये सुविधाएं उपलब्ध होंगी, तब हम इसकी सूचना डेवलपर ब्लॉग पर देंगे. साथ ही, हम डेवलपर गाइड भी उपलब्ध कराएंगे. इससे आपको अपनी ज़रूरत के हिसाब से सही सुविधा चुनने और उसे लागू करने में मदद मिलेगी. फ़िलहाल, यहां एक नज़र डालें.

AppFunctions

Watch_IO26_Samsung_App_Functions (1).gif

AppFunctions API की मदद से डेवलपर, अपने ऐप्लिकेशन को एजेंट और असिस्टेंट के साथ इंटिग्रेट कर सकते हैं. जैसे, Google Gemini. इससे उपयोगकर्ता, बोलकर निर्देश देकर काम पूरे कर सकते हैं. इससे उन्हें अक्सर, आपके यूज़र इंटरफ़ेस (यूआई) का इस्तेमाल करके, एक-एक करके मैन्युअल तरीके से नेविगेट करने की ज़रूरत नहीं पड़ती.  

उदाहरण के लिए, Samsung Health सेहत से जुड़े ऐप्लिकेशन से दौड़ शुरू करने के लिए, उपयोगकर्ता Gemini से कह सकते हैं: “मेरी दौड़ को ट्रैक करना शुरू करो.”

फ़िलहाल, हम इस सुविधा को आज़माने के लिए Early Access Program चला रहे हैं. इसमें दिलचस्पी रखने वाले डेवलपर, इस प्रोग्राम में शामिल हो सकते हैं. अगर आपको इस सुविधा का इस्तेमाल करना है, तो हमारा फ़ॉर्म भरें.

टास्क ऑटोमेशन

Watch_IO26_RemoteBonobo_Doordash_onBG_a22_GIF (1).gif

इसके अलावा, जल्द ही उपयोगकर्ताओं को ऐप्लिकेशन के टास्क अपने-आप पूरे होने की सुविधा मिलेगी. इसके लिए, उन्हें कोई डेवलपमेंट नहीं करना होगा. वे सीधे तौर पर अपनी स्मार्टवॉच से, फ़ोन पर मौजूद कुछ ऐप्लिकेशन के टास्क पूरे कर पाएंगे. जैसे, DoorDash से ऑर्डर करना!

अपने ऐप्लिकेशन को Android के इंटेलिजेंस सिस्टम से तैयार करने और कनेक्ट करने के इन फ़्लेक्सिबल विकल्पों के बारे में जानने के लिए, हमारे डेवलपर ब्लॉग पर नज़र रखें.

Wear Workout Tracker

Watch_IO26_SystemFitnessTracker_onBG_a05 (1).gif

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

वर्कआउट ट्रैकर, वर्कआउट को ट्रैक करने का एक बेहतर और स्टैंडर्ड अनुभव देता है. इसमें धड़कन की दर को मॉनिटर करने, मीडिया को कंट्रोल करने, और अन्य काम की सुविधाओं का कलेक्शन शामिल है. इससे आपको डेवलपमेंट में कम निवेश करने में मदद मिलती है. साथ ही, यह आपके उपयोगकर्ताओं को बेहतर अनुभव देने की गारंटी देता है.

हम ASICS Runkeeper के साथ मिलकर काम कर रहे हैं, ताकि यह सुविधा उनके उपयोगकर्ताओं के लिए उपलब्ध कराई जा सके. इसे आज़माएं!

Wear OS 7 में बेहतर सिस्टम मीडिया कंट्रोल

Wear OS 7 में, सिस्टम मीडिया कंट्रोल को बेहतर बनाया गया है. इससे लोगों को मीडिया पर ज़्यादा कंट्रोल मिलता है और वे बिना किसी रुकावट के मीडिया का आनंद ले पाते हैं.

हर ऐप्लिकेशन के लिए, मीडिया कंट्रोल अपने-आप लॉन्च होने की सुविधा

Watch_IO26_AutoLaunch_Media_onBG_a05 (1).gif

अब उपयोगकर्ता, घड़ी पर मौजूद सिस्टम मीडिया कंट्रोल से सीधे तौर पर, हर ऐप्लिकेशन के लिए मीडिया अपने-आप लॉन्च होने की सुविधा को अपनी पसंद के मुताबिक बना सकते हैं.

अगर किसी ऐप्लिकेशन के लिए उपयोगकर्ता ने ‘अपने-आप लॉन्च होने की सेटिंग’ चालू की है, तो फ़ोन पर मीडिया चलाने पर, स्मार्टवॉच पर मीडिया कंट्रोल अपने-आप दिखने लगेंगे. 

जिन डेवलपर ने स्मार्टवॉच पर काम करने वाले मीडिया ऐप्लिकेशन को पहले से लागू किया हुआ है वे इस सुविधा का फ़ायदा बिना किसी अतिरिक्त प्रयास के ले सकते हैं.

रिमोट आउटपुट स्विचर की मदद से, ऑडियो को आसानी से रूट करना

Remote Output Switcher (1).png

सिस्टम मीडिया कंट्रोल में इंटिग्रेट किए गए नए रिमोट आउटपुट स्विचर की मदद से, ऑडियो डिवाइस को मैनेज करना अब पहले से ज़्यादा आसान हो गया है. 

जोड़े गए फ़ोन पर मीडिया सुनने के दौरान, उपयोगकर्ता सीधे अपनी कलाई से उस डिवाइस को आसानी से बदल सकते हैं जिस पर मीडिया चलाया जा रहा है.

यूज़र इंटरफ़ेस (यूआई) लाइब्रेरी से जुड़े अपडेट

उपयोगकर्ताओं के लिए इन सभी नई सुविधाओं के साथ-साथ, हम डेवलपर टूलकिट में कुछ बेहतरीन सुधार कर रहे हैं. इससे डेवलपर को Wear OS के आने वाले समय के लिए तैयार होने में मदद मिलेगी!

Compose for Wear OS 1.6

Wear OS के लिए ऐप्लिकेशन बनाने के लिए, Compose for Wear OS 1.6 उपलब्ध है.

इसमें कई शानदार अपडेट शामिल हैं. जैसे:

Navigation 3 की मदद से, आसानी से नेविगेट करना

डेवलपर, Wear OS पर नेविगेशन को मैनेज करने के लिए, Navigation 3 के साथ इंटिग्रेट कर सकते हैं. इससे उन्हें नेविगेशन को ज़्यादा आसानी से और Compose के हिसाब से हैंडल करने में मदद मिलेगी.

@Composable
fun WearApp() {
    val backStack = rememberNavBackStack(MenuScreen)

    WearAppTheme {
        AppScaffold {
            val entryProvider = remember {
                entryProvider<NavKey> {
                    entry<MenuScreen> { GreetingScreen() }
                    entry<ListNavScreen> { ListScreen() }
                }
            }

            val swipeDismissableSceneStrategy = 
                rememberSwipeDismissableSceneStrategy<NavKey>()

            NavDisplay(
                backStack = backStack,
                entryProvider = entryProvider,
                sceneStrategies = listOf(swipeDismissableSceneStrategy)
            )
        }
    }
}

TransformingLazyColumn के लिए, सूची को मैनेज करने से जुड़े सुधार

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

val listState = rememberTransformingLazyColumnState()
val transformationSpec = rememberTransformationSpec()

/*
 * TransformingLazyColumn takes care of the horizontal and vertical
 * padding for the list and handles scrolling.
 */
ScreenScaffold(scrollState = listState) { contentPadding ->
    TransformingLazyColumn(
        state = listState,
        contentPadding = contentPadding
    ) {
        item {
            ListHeader(
                modifier = Modifier
                    .fillMaxWidth()
                    .transformedHeight(this, transformationSpec)
                    .minimumVerticalContentPadding(
                        ListHeaderDefaults.minimumTopListContentPadding
                    ),
                    transformation = SurfaceTransformation(transformationSpec)
            ) { Text(text = "Header") }
        }
    }
}

LocalAmbientModeManager की मदद से, ऐंबियंट मोड को ऑप्टिमाइज़ करना

नया LocalAmbientModeManager, ऐंबियंट फ़्लो को मैनेज करने के लिए ऑप्टिमाइज़ किया गया है. इससे डेवलपर को यह तय करने का ज़्यादा कंट्रोल मिलता है कि उपयोगकर्ताओं को ऐंबियंट अनुभव कैसे दिखाए जाएं. 

 
override fun onCreate(savedInstanceState: Bundle?) {
    setContent {
        val ambientModeManager = rememberAmbientModeManager()
        CompositionLocalProvider(LocalAmbientModeManager provides ambientModeManager) {
            val localAmbientModeManager = LocalAmbientModeManager.current
            val ambientMode = localAmbientModeManager?.currentAmbientMode

            Column(
                verticalArrangement = Arrangement.Center,
                horizontalAlignment = Alignment.CenterHorizontally,
                modifier = Modifier.fillMaxSize(),
            ) {
                val ambientModeName =
                    when (ambientMode) {
                        is AmbientMode.Interactive -> "Interactive"
                        is AmbientMode.Ambient -> "Ambient"
                        else -> "Unknown"
                    }

                val color = if (ambientMode is AmbientMode.Ambient) Color.Gray
                    else Color.Yellow
                Text(text = "$ambientModeName Mode", color = color)
            }
        }
    }
}

Protolayout और टाइल से जुड़े अपडेट

हम डेवलपर को नए Wear विजेट इस्तेमाल करने के लिए बढ़ावा देते हैं. हालांकि, हम कुछ समय तक Protolayout और Tiles लाइब्रेरी के लिए सहायता देना जारी रखेंगे. साथ ही, हमारे पास दोनों के नए स्टेबल वर्शन उपलब्ध हैं.

Protolayout 1.4 और Tiles 1.6 मिलकर कई नई सुविधाएं उपलब्ध कराते हैं. इनमें ये शामिल हैं:

  • इनलाइन किए गए इमेज रिसॉर्स: अब ImageResource को सीधे तौर पर लेआउट में इनलाइन किया जा सकता है. साथ ही, टाइलें अब ProtoLayoutScope के ज़रिए, अपने-आप रिसॉर्स इकट्ठा करने की सुविधा के साथ काम करती हैं. इससे, मैन्युअल तरीके से रिसॉर्स मैपिंग करने और उन्हें अलग-अलग तरीकों में बांटने की ज़रूरत नहीं होती. बेहतर कोड क्वालिटी के साथ-साथ, इससे टाइलें लोड होने में लगने वाला समय भी कम हो जाता है. ऐसा इसलिए होता है, क्योंकि सिस्टम से सेवा देने वाली कंपनी को एक ही बाइंडर कॉल किया जाता है.
  • Material3TileService: टाइल को Material3TileService के तौर पर लागू किया जा सकता है. यह एक ऐसा फ़ंक्शन है जो टाइल लेआउट और संसाधन, दोनों को दिखाता है. साथ ही, MaterialScope और ProtoLayoutScope को अपने-आप मैनेज करता है, ताकि डेवलपमेंट को आसान बनाया जा सके.
  • डाइनैमिक सर्विस स्विचिंग: Wear 7 पर, अब कई TileService इंस्टेंस को मेनिफ़ेस्ट में ग्रुप किया जा सकता है. इससे एक ही टाइल को दिखाने वाली अलग-अलग सेवाओं के बीच डाइनैमिक तरीके से स्विच किया जा सकता है.

टाइल के नए सैंपल यहां देखें.

WFF 5

Watch Face Format के वर्शन 5 (WFF5) में कई नई सुविधाएं उपलब्ध हैं. इनकी मदद से, वॉच फ़ेस बनाना आसान हो जाता है. इनमें ये सुविधाएं शामिल हैं:

  • अलाइनमेंट के बेहतर विकल्प: अब TextCircular जैसे टेक्स्ट एलिमेंट के लिए, अलाइनमेंट के ज़्यादा विकल्प उपलब्ध होंगे. इनमें एक ही बेसलाइन पर कई टेक्स्ट एलिमेंट के लिए, verticalAlign विकल्प भी शामिल है.
  • अपने-आप साइज़ बदलने की सुविधा में सुधार: isAutoSize का इस्तेमाल अब TextCircular पर किया जा सकता है. साथ ही, Font एलिमेंट में एक नया एट्रिब्यूट, minSize जोड़ा गया है. इससे, अपने-आप साइज़ बदलने की सुविधा चालू होने पर, कम से कम साइज़ को सीमित किया जा सकता है.
  • ब्लेंड मोड: Group और ComplicationSlot एलिमेंट अब ब्लेंड मोड के साथ काम करते हैं. इससे पहले, ये सिर्फ़ Part* एलिमेंट के साथ काम करते थे.
  • स्ट्रोक जॉइन: स्ट्रोक और WeightedStroke एलिमेंट में अब join एट्रिब्यूट शामिल है.
  • क्रम के हिसाब से सेटिंग: अब उपयोगकर्ता स्टाइल को क्रम के हिसाब से व्यवस्थित किया जा सकता है. इसमें कुछ सेटिंग सिर्फ़ तब दिखती हैं, जब अन्य सेटिंग की वैल्यू तय की गई हों. उपयोगकर्ता स्टाइल अब कॉम्प्लिकेशन स्लॉट को भी चालू या बंद कर सकती हैं. इन्हें उपयोगकर्ता की स्टाइल के विकल्पों पर मौजूद childSettingIds और complicationSlotIds का इस्तेमाल करके कॉन्फ़िगर किया जा सकता है.

WFF 5 के बारे में ज़्यादा जानने के लिए, डेवलपर के लिए उपलब्ध नई गाइडलाइन देखें.

Wear OS 7 के लिए ऐप्लिकेशन बनाना अभी शुरू करें

इन अपडेट के बाद, Wear OS पर ऐप्लिकेशन डेवलप करने का इससे अच्छा मौका नहीं मिलेगा. इन तकनीकी संसाधनों की मदद से, शुरू करने के बारे में ज़्यादा जानें:

हमें Wear OS पर आपके बनाए गए ऐप्लिकेशन का इंतज़ार रहेगा!

लेखक:
पढ़ना जारी रखें