Android 6.0 और उसके बाद के वर्शन, ब्लूटूथ स्टाइलस के लिए स्टैंडर्ड डेटा फ़ॉर्मैट के साथ काम करते हैं ब्लूटूथ (बीटी), ब्लूटूथ कम ऊर्जा (बीटीएलई) या यूएसबी से कनेक्ट होने वाले कनेक्शन. प्लैटफ़ॉर्म, टच इनपुट और स्टाइलस डेटा के बीच के समय को जोड़ता है. इसके बाद, ऐक्टिव ऐप्लिकेशन में MotionEvents को रेंडर करने के लिए स्टाइलस डेटा उपलब्ध कराता है. यहां दिए गए सेक्शन में, OEM डिवाइस लागू करने वाले, स्टाइलस ऐक्सेसरी बनाने वाले, और स्टाइलस ऐप्लिकेशन डेवलपर के लिए दिशा-निर्देश दिए गए हैं.
OEM डिवाइस लागू करने वालों के लिए दिशा-निर्देश
ब्लूटूथ स्टाइलस की सुविधा चालू करने के लिए, OEM डिवाइस इंप्लीमेंटर को ब्लूटूथ के साथ काम करना होगा (यह ज़्यादा डिवाइसों के साथ काम करने के लिए, BTLE के साथ काम करता हो). प्लैटफ़ॉर्म, काम करने वाले स्टाइलस इवेंट के लिए, डेटा इकट्ठा करने, समय से जुड़ी जानकारी को जोड़ने, और ऐप्लिकेशन को रेंडर करने की सुविधा देता है.
14 और उसके बाद के वर्शन में,
StylusButtonInputEventTest
कनेक्ट किए गए स्टाइलस के व्यवहार को एमुलेट करता है और यह जांच करता है कि बटन इवेंट सही तरीके से रिपोर्ट किए गए हैं या नहीं. हमारा सुझाव है कि आप कम वर्शन के लिए, स्टाइलस ऐक्सेसरी या एमुलेटर बनाएं, जो स्टाइलस इवेंट को सिम्युलेट कर सके.
स्टाइलस ऐक्सेसरी बनाने वाले क्रिएटर्स के लिए दिशा-निर्देश
स्टाइलस डिवाइस पर सहायता लागू करने के लिए, डिवाइस में बदलाव करने वाले लोगों को स्टाइलस का इस्तेमाल करना होगा
ह्यूमन इंटरफ़ेस डिवाइस (एचआईडी) की जानकारी नीचे दी गई है. इसमें स्टाइलस का डेटा इस्तेमाल करने का तरीका बताया गया है
(दबाव की संवेदनशीलता, इरेज़र, बटन, डिवाइस आईडी, बैटरी लेवल, चार्जिंग की स्थिति वगैरह)
बताया गया है. स्टाइलस डिवाइस, Android मोबाइल डिवाइस को एचआईडी की जानकारी भेजता है,
इससे प्लैटफ़ॉर्म को टचस्क्रीन के टच डेटा के साथ एचआईडी डेटा को जोड़ने में मदद मिलती है
इवेंट बनाने के लिए
MotionEvent
क्लास. Android 14 और उसके बाद वाले वर्शन में, स्टाइलस पर किए गए बटन दबाने से भी जनरेट होता है
इंटरनल इवेंट
KeyEvent
क्लास.
डेटा को ब्लूटूथ (बीटी), ब्लूटूथ लो एनर्जी (बीटीईएल) या यूएसबी के ज़रिए भेजा जा सकता है.
एचआईडी डिस्क्रिप्टर का उदाहरण
यहां दिए गए सैंपल HID डिस्क्रिप्टर में, टिप संपर्क, दबाव, प्राइमरी और सेकंडरी बटन, इरेज़र, और सीरियल नंबर की जानकारी दी गई है. आपके शामिल किए गए एचआईडी डिस्क्रिप्टर में, ब्लूटूथ की मदद से स्टाइलस की ओर से दी गई जानकारी सही तरीके से दिखनी चाहिए. यह जानकारी, उपलब्ध सुविधाओं का कोई भी सबसेट हो सकती है.UsagePage(Digitizer) Usage(Pen) Collection(Application) Usage(Stylus) Collection(Logical) Usage(Tip Pressure) Logical Minimum(0) Logical Maximum(1023) Report Count(1) Report Size(10) Input(Data, Variable, Absolute, No Null) Usage(Barrel Switch) Usage(Secondary Barrel Switch) Usage(Tip Switch) Usage(Invert) Logical Maximum(1) Report Count(4) Report Size(1) Input(Data, Variable, Absolute, No Null) Usage(Transducer Serial Number) Report Count(1) Report Size(128) Feature(Constant, Variable) EndCollection EndCollection unsigned char HID_DESC[] = { 0x05, 0x0D, // UsagePage(Digitizer) 0x09, 0x02, // Usage(Pen) 0xA1, 0x01, // Collection(Application) 0x09, 0x20, // Usage(Stylus) 0xA1, 0x02, // Collection(Logical) 0x09, 0x30, // Usage(Tip Pressure) 0x15, 0x00, // Logical Minimum(0) 0x26, 0xFF, 0x03, // Logical Maximum(1023) 0x95, 0x01, // Report Count(1) 0x75, 0x0A, // Report Size(10) 0x81, 0x02, // Input(Data, Variable, Absolute, No Null) 0x09, 0x44, // Usage(Barrel Switch) 0x09, 0x5A, // Usage(Secondary Barrel Switch) 0x09, 0x42, // Usage(Tip Switch) 0x09, 0x3C, // Usage(Invert) 0x25, 0x01, // Logical Maximum(1) 0x95, 0x04, // Report Count(4) 0x75, 0x01, // Report Size(1) 0x81, 0x02, // Input(Data, Variable, Absolute, No Null) 0x09, 0x5B, // Usage(Transducer Serial Number) 0x95, 0x01, // Report Count(1) 0x75, 0x80, // Report Size(128) 0xB1, 0x03, // Feature(Constant, Variable) 0xC0, // End Collection 0xC0, // End Collection }
स्टाइलस ऐप्लिकेशन डेवलपर के लिए दिशा-निर्देश
Android प्लैटफ़ॉर्म, पेयरिंग और इवेंट के बीच के संबंध को अपने-आप मैनेज करता है. इसलिए, मौजूदा और नए ऐप्लिकेशन, डिफ़ॉल्ट रूप से ब्लूटूथ स्टाइलस के साथ काम करते हैं. इस बारे में ज़्यादा जानने के लिए Android ऐप्लिकेशन में स्टाइलस का इस्तेमाल करने की सुविधा के साथ काम करने वाले स्टाइलस के बारे में जानने के लिए, Android डेवलपर दस्तावेज़.