पक्का करना कि जेस्चर वाले नेविगेशन के साथ काम करता हो

Android 10 (एपीआई लेवल 29) और Android 10 के बाद से, Android सिस्टम पूरी तरह से जेस्चर के हिसाब से नेविगेशन की सुविधा मिलती है. यह पक्का करने के लिए कि ऐप्लिकेशन डेवलपर को दो काम करने होंगे उनके ऐप्लिकेशन इस सुविधा के साथ काम करते हैं:

  • ऐप्लिकेशन के कॉन्टेंट को एक से दूसरे किनारे तक ले जाएं.
  • ऐप्लिकेशन के लिए इस्तेमाल किए जाने वाले हाथ के अलग-अलग जेस्चर मैनेज करें.

इसके अलावा, Android 13 (एपीआई लेवल 33) की मदद से, Android 13 Android के लिए पीछे जाने के लिए अनुमानित जेस्चर फ़ोन, बड़ी स्क्रीन, और फ़ोल्ड किए जा सकने वाले डिवाइस जैसे डिवाइस रिलीज़. ऐप्लिकेशन डेवलपर यह पक्का करने के लिए कदम उठा सकते हैं कि उनके ऐप्लिकेशन पीछे जाने का सुझाव देने वाला जेस्चर.

ऐप्लिकेशन का नया कॉन्टेंट उपलब्ध कराना

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

अपने ऐप्लिकेशन में कॉन्टेंट को एक से दूसरे किनारे तक दिखाना लेख पढ़ें देखें.

ऐप्लिकेशन के लिए इस्तेमाल किए जाने वाले हाथ के अलग-अलग जेस्चर मैनेज करना

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

पीछे के जेस्चर से मेल नहीं खाती

पीछे जाने के लिए नया सिस्टम जेस्चर, बाईं ओर या पर क्लिक करें. इसकी वजह से, ऐप्लिकेशन में मौजूद नेविगेशन एलिमेंट में रुकावट आ सकती है नहीं जाना पड़ेगा. बाएं और दाएं किनारों पर एलिमेंट की फ़ंक्शन बनाए रखने के लिए से ऑप्ट आउट करने के लिए, सिस्टम. कि किन क्षेत्रों में टच इनपुट पाने की ज़रूरत है. ऐसा करने के लिए: List<Rect> से View.setSystemGestureExclusionRects() के लिए Android 10 में एपीआई की सुविधा शुरू की गई. यह तरीका ViewCompat में भी उपलब्ध है: androidx.core:core:1.1.0-dev01.

उदाहरण के लिए:

Kotlin

var exclusionRects = listOf(rect1, rect2, rect3)

fun onLayout(
        changedCanvas: Boolean, left: Int, top: Int, right: Int, bottom: Int) {
  // Update rect bounds and the exclusionRects list
  setSystemGestureExclusionRects(exclusionRects)
}

fun onDraw(canvas: Canvas) {
  // Update rect bounds and the exclusionRects list
  setSystemGestureExclusionRects(exclusionRects)
}

Java

List<Rect> exclusionRects;

public void onLayout(
        boolean changedCanvas, int left, int top, int right, int bottom) {
    // Update rect bounds and the exclusionRects list
    setSystemGestureExclusionRects(exclusionRects);
}

public void onDraw(Canvas canvas) {
    // Update rect bounds and the exclusionRects list
    setSystemGestureExclusionRects(exclusionRects);
}

होम या फटाफट स्विच करने के जेस्चर में समस्या होना

होम स्क्रीन पर स्वाइप करने और फटाफट स्विच करने की सुविधा में इस्तेमाल किए जाने वाले हाथ के जेस्चर (हाव-भाव) में, होम बटन पर स्वाइप करने की सुविधा शामिल होती है स्क्रीन के सबसे निचले हिस्से पर भी दिख सकता है. ऐप्लिकेशन वे हाथ के इन जेस्चर से ऑप्ट आउट नहीं कर सकते. ऐसा वे पिछले जेस्चर से कर सकते हैं.

इस समस्या को कम करने के लिए, Android 10 WindowInsets.getMandatorySystemGestureInsets() एपीआई की मदद से, ऐप्लिकेशन को टच की पहचान करने के थ्रेशोल्ड के बारे में जानकारी मिलती है.

गेम और अन्य नॉन-व्यू ऐप्लिकेशन

जिन गेम और अन्य ऐप्लिकेशन में व्यू हैरारकी नहीं होती उनमें अक्सर उपयोगकर्ता को सिस्टम जेस्चर वाले क्षेत्रों के पास स्वाइप कर सकता है. ऐसे मामलों में, गेम Window.setSystemGestureExclusionRects() का इस्तेमाल करें. गेम इन जगहों को सिर्फ़ ज़रूरी होने पर ही बाहर रखा जाना चाहिए, जैसे कि गेमप्ले.

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

पिछले पेज पर वापस जाने के जेस्चर की सुविधा का इस्तेमाल करने के लिए, अपना ऐप्लिकेशन अपडेट करें

Android 13 (एपीआई लेवल 33) में, Android के लिए पिछले पेज पर जाने के लिए प्रेडिक्टिव बैक जेस्चर की सुविधा जोड़ी गई है फ़ोन, बड़ी स्क्रीन, और फ़ोल्ड किए जा सकने वाले डिवाइस. द प्रेडिक्टिव बैक जेस्चर कई सालों से रिलीज़ का हिस्सा है. पूरी तरह से लागू करने पर, यह सुविधा इससे उपयोगकर्ता गंतव्य या पिछले जेस्चर के अन्य परिणाम की झलक पहले देख सकते हैं वे इसे पूरी तरह से पूरा कर लेते हैं. इससे वे यह तय कर पाते हैं कि उन्हें इस प्रोग्राम में बने रहना है या जारी रखना है मौजूदा व्यू.

यहां जाएं: पिछले जेस्चर का इस्तेमाल करने की सुविधा जोड़ना देखें.

अन्य संसाधन

जेस्चर वाले नेविगेशन के बारे में ज़्यादा जानने के लिए, यह लेख देखें:

ब्लॉग पोस्ट

वीडियो