أوامر NCI الخاصة بنظام التشغيل Android

تُستخدم واجهة وحدة تحكم NFC (NCI) للتفاعل مع وحدة تحكُّم NFC (الاتصال القصير المدى) توضّح هذه الصفحة مواصفات Android. أوامر NCI الخاصة.

تعريفات أداة "إحصاءات المستهلكين في أخبار Google"

تستخدم أوامر أداة NCI الخاصة بنظام التشغيل Android رقم تعريف المجموعة الخاصة بالمالك (GID) 0xF. ومساحة رمز معرّف العملية لنظام التشغيل Android 0xC.

تنسيق الحزمة الشائعة

يتّبع تنسيق حزمة NCI لنظام التشغيل Android مواصفات أداة NCI الخاصة بحِزم التحكّم. باستخدام الملكية Group_ID 0xF وOpcode_ID 0x0C. لكل جهاز Android ملكية إضافية، يجب تعيين البايت الأول من حمولة الحزمة على رمز تشغيل Android (0x0C). تستخدم حزم التحكم في Android Message_Type PBF لتحديد الأوامر والردود والإشعارات بشكل مشابه والأوامر القياسية.

يظهر تنسيق حزمة Android في الجدول التالي:

0 1 2 3 4 5 6 7
Message_Type PBF Group_ID = 0xF (PROPRIETARY)
محجوز للاستخدام في المستقبل (RFU) Opcode_ID = 0x0C (ANDROID)
Payload_Length
Android_Opcode_ID
Android_Payload

يتم عرض معرّفات رموز التشغيل المخصصة لنظام التشغيل Android في الجدول التالي. تشير رسالة الأشكال البيانية لكل حزمة نتبعها في الأقسام التالية.

معرّف OID لنظام Android نوع الرسالة اسم الرسالة
0×00 NCI_MT_CMD NCI_ANDROID_GET_CAPS_CMD
NCI_MT_RSP NCI_ANDROID_GET_CAPS_RSP
0x01 NCI_MT_CMD NCI_ANDROID_POWER_SAVING_CMD
NCI_MT_RSP NCI_ANDROID_POWER_SAVING_RSP
0x02 NCI_MT_CMD NCI_ANDROID_PASSIVE_OBSERVE_MODE_CMD
NCI_MT_RSP NCI_ANDROID_PASSIVE_OBSERVE_MODE_RSP
0x03 NCI_MT_NTF NCI_ANDROID_POLLING_FRAME_NTF
0×04 NCI_MT_CMD NCI_ANDROID_QUERY_PASSIVE_OBSERVER_STATUS_CMD
NCI_MT_RSP NCI_ANDROID_QUERY_PASSIVE_OBSERVER_STATUS_RSP

أمر الحصول على الإمكانيات

يستخدم المضيف NCI_ANDROID_GET_CAPS_CMD لطلب البحث في القائمة. الميزات المملوكة لنظام التشغيل Android والمدعومة من قبل بروتوكول NFCC. تشير رسالة الأشكال البيانية لا يأخذ الأمر NCI_ANDROID_GET_CAPS_CMD أي معلمات.

يجب أن يستجيب الاتصال القصير المدى (NFCC) بالاستجابة NCI_ANDROID_GET_CAPS_RSP مع إدراج حالة. .STATUS_OK وقائمة الميزات والميزات المتاحة

إذا كان NFCC لا يتوافق مع NCI_ANDROID_GET_CAPS_CMD، يجب أن يفترض المضيف أن تأخذ كل الإمكانات القيمة الافتراضية المحددة. إذا تم تحديد من خلال NFCC في الرد، يجب أن يفترض المضيف أن تمتلك الإمكانية القيمة التلقائية المحددة.

NCI_ANDROID_GET_CAPS_CMD

حقول الحمولة حجم الملف القيمة/الوصف
لا ينطبق 0 ثُمانيات

NCI_ANDROID_GET_CAPS_RSP

حقول الحمولة حجم الملف القيمة/الوصف
الحالة ثماني بتات واحد اطّلِع على رموز الحالة في الجدول 140 من مواصفات NCI.
Android_Version 2 ثماني بتات يحدد إصدار متطلبات Android الذي يتم تطبيقه من خلال NFCC.
0×0000 الإصدار 15 من نظام التشغيل Android
عدد الإمكانات ثماني بتات واحد عدد الإمكانات المتوافقة
الإمكانات[0..n] (م + 2) * n ثماني بتات الإمكانات المتوافقة
النوع ثماني بتات واحد معرّف الميزة
Len ثماني بتات واحد الطول (م) للقيمة
القيمة م ثُماني بتات قيمة القدرة
إمكانات خاصة بنظام التشغيل Android
اسم القدرة رقم التعريف حجم الملف القيمة/الوصف
وضع المراقبة 0×00 ثماني بتات واحد دعم وضع المراقبة
0x00 (تلقائي) - لا يدعم هذه الميزة.
0x01 - يتوافق مع الميزة من خلال إلغاء تنشيط الترددات اللاسلكية من المضيف (مطلوب من أجل الإصدار 15 من نظام Android أو إصدار أحدث).
وجميع القيم الأخرى هي RFU.
إشعار إطار الاستطلاع 0x01 ثماني بتات واحد دعم إشعارات إطار الاستطلاع. 0x01 إذا كان متاحًا، و0x00 (الإعداد التلقائي) إذا لم يكن متاحًا. وجميع القيم الأخرى هي RFU.
وضع توفير الطاقة 0x02 ثماني بتات واحد دعم وضع توفير الطاقة. 0x01 إذا كان متاحًا، و0x00 (الإعداد التلقائي) إذا لم يكن متاحًا. وجميع القيم الأخرى هي RFU.
فلتر حلقة الاستطلاع بشأن Auotransact 0x03 1 ثماني بتات دعم فلاتر حلقة الاستطلاع في البرامج الثابتة لتجاوز وضع المراقبة لأنماط معيَّنة عند تفعيل وضع المراقبة بشكل عام
0x00 (تلقائي) - لا يدعم هذه الميزة
0x01 - إتاحة فلاتر حلقة الاستطلاع
جميع القيم الأخرى هي RFU
0x04..0xFF 0 ثُمانيات محجوزة للاستخدام في المستقبل

أمر توفير الطاقة

لنقل NFCC إلى وضع توفير الطاقة، يمكن للمضيف استخدام الأمر NCI_ANDROID_POWER_SAVING_CMD. يجب أن يستجيب الاتصال القصير المدى (NFCC) بما يلي: NCI_ANDROID_POWER_SAVING_RSP مع رمز حالة إلى النجاح أو الفشل.

أثناء استخدام وضع توفير الطاقة، يجب ألا يرسل المضيف أي أمر إلى NFCC يجب ألا يرسل NFCC أي إشعار أو رد إلى المضيف. يتيح لك NFCC أو يمكن للعنصر الآمن (eSE) المضمّن قبول طلبات الدفع الواردة تلقائيًا. وفقًا لإعدادات التوجيه التي تم ضبطها قبل تفعيل خيار توفير الطاقة الحالي.

للعودة إلى وضع الطاقة الكامل، يمكن للمضيف إعادة ضبط NFCC أو إعادة إعدادها.

NCI_ANDROID_POWER_SAVING_CMD

حقول الحمولة حجم الملف القيمة/الوصف
وضع توفير الطاقة 1 ثماني بتات 0×00 إيقاف "وضع توفير الطاقة"
0x01 تفعيل "وضع توفير الطاقة"

NCI_ANDROID_POWER_SAVING_RSP

حقول الحمولة حجم الملف القيمة/الوصف
الحالة ثماني بتات واحد اطّلع على رموز الحالة في الجدول 140 من مواصفات NCI،

ضبط أمر وضع المراقبة

لتفعيل "وضع المراقبة" أو إيقافه، يمكن للمضيف استخدام الأمر NCI_ANDROID_PASSIVE_OBSERVE_MODE_CMD. يجب أن يستجيب الاتصال القصير المدى (NFCC) بما يلي: NCI_ANDROID_PASSIVE_OBSERVE_MODE_RSP مع رمز حالة يشير إلى نجاح أو إخفاقًا.

عند إيقاف وضع المراقبة، على تقنية NFCC تنفيذ نشاط وضع الاستماع العادي وفقًا المواصفات الفنية للنشاط.

عندما يكون وضع المراقبة مفعَّلاً، يجب ألا يستجيب NFCC لأي استطلاع. الطلبات أثناء حلقة الاستطلاع في وضع الاستماع، إلى أن يتم السماح بذلك صراحةً من قِبل المضيف. يجب أن يرسل NFCC إشعار RF_FIELD_INFO_NTF (كما هو محدد في الفقرة 5.3 من مواصفات أداة "إحصاءات المستهلكين في أخبار Google") عند اكتشاف تفعيل الحقل. إذا كانت ميزة اكتشاف وضع الاستطلاع نشطة، سيتم تفعيل تكنولوجيا NFCC تنفيذ نشاط وضع الاستطلاع وفقًا المواصفات الفنية للنشاط. يمكن لتقنية NFCC تخزين معلومات الاستطلاع مؤقتًا للمتابعة على الفور باستخدام الجهاز. التفعيل فور إيقاف وضع المراقبة.

يجب أن يوقف الاتصال القصير المدى (NFCC) وضع المراقبة في حال إيقاف المضيف لأي سبب. (على سبيل المثال، نفاد شحن البطارية أو بدء إيقاف التشغيل من قِبل المستخدم) بحيث تكون شريحة العنصر الآمن (SE) إمكانية متابعة معاملاتك.

NCI_ANDROID_PASSIVE_OBSERVE_mode_CMD

حقول الحمولة حجم الملف القيمة/الوصف
وضع المراقبة ثماني بتات واحد 0×00 إيقاف وضع المراقبة (تلقائي)
0x01 تفعيل وضع المراقبة

NCI_ANDROID_PASSIVE_OBSERVE_mode_RSP

حقول الحمولة حجم الملف القيمة/الوصف
الحالة ثماني بتات واحد اطّلِع على رموز الحالة في الجدول 140 من مواصفات NCI.

إشعار حلقة الاستطلاع

يجب أن يرسل NFCC إشعارًا NCI_ANDROID_POLLING_FRAME_NTF إلى المضيف. بعد كل إطار لحلقة الاستطلاع. عندما يُمنع كل من RF_FIELD_INFO_NTF و يتم إنشاء NCI_ANDROID_POLLING_FRAME_NTF إشعار، ويجب أن يرسل NFCC NCI_ANDROID_POLLING_FRAME_NTF بعد RF_FIELD_INFO_NTF.

إنّ إشعار NCI_ANDROID_POLLING_FRAME_NTF مستقلّ عمّا إذا كان وضع المراقبة نشط أم لا. عندما يكون وضع المراقبة نشطًا، يجب أن يرسل NFCC دائمًا إشعارًا NCI_ANDROID_POLLING_FRAME_NTF قبل متابعة المعاملة.

NCI_ANDROID_POLLING_iframe_NTF

حقول الحمولة حجم الملف القيمة/الوصف
بيانات الاستطلاع[0..n] (m +3) * n ثماني بتات قائمة طلبات الاستطلاع التي تم تلقّيها منذ آخر . وتعطي كل نتيجة نوع (تقنية) البيانات المستلمة الطلبات والبيانات التي تحدد الهوية من الطلب وفقًا للتكنولوجيا.
النوع ثماني بتات واحد راجِع أنواع الإطارات.
أعلام ثماني بتات واحد راجِع الإبلاغ عن بايت.
المدة ثماني بتات واحد طول (m) تقرير بيانات الاستطلاع، بما في ذلك حقول الطابع الزمني والاكتساب
الطابع الزمني 4 ثمانيات يتم قياس الطابع الزمني بالمللي ثانية من وقت استلام طلبات الاستطلاع.
اكتساب الألوان ثماني بتات واحد قوة طلب الاستطلاع
يشير 0xFF إلى أن القيمة غير متاحة.
البيانات م - 5 ثماني بتات عرض بيانات التعريف الموجودة في طلب الاستطلاع
أنواع الإطارات
إطار الاقتراع النوع حجم الملف القيمة/الوصف
حقل بعيد 0×00 ثماني بتات واحد 0×00 الحقل غير مفعَّل
0x01 الحقل مفعّل
0x02..0xFF تردد لاسلكي (RFU)
NFC-A 0x01 عدد الثمانيات يجب أن تتضمّن القيمة أمر ISO 14443-3 (مثل REQ أو WUP).
NFC-B 0x02 عدد الثمانيات يجب أن تتضمّن القيمة بايت AIF وأمر ISO 14443-3. (على سبيل المثال، REQ أو WUP)
NFC-F 0x03 عدد الثمانيات يجب أن تتضمّن القيمة أمر ISO 14443-3 (مثل REQ أو WUP).
NFC-V 0×04 عدد الثمانيات يجب أن تتضمّن القيمة أمر ISO 14443-3 (مثل REQ أو WUP).
غير معروف 0×07 عدد الثمانيات بيانات الإطارات الأولية
الإبلاغ عن تعريف البايت
أعلام
B0 ب1 ب2 ب 3 ب4 ب5 ب6 ب7
0 إطار قصير تردد لاسلكي (RFU) تردد لاسلكي (RFU) تردد لاسلكي (RFU) تردد لاسلكي (RFU) تردد لاسلكي (RFU) تردد لاسلكي (RFU) تردد لاسلكي (RFU)
1 إطار طويل

طلب بحث حالة وضع مراقبة

لاسترداد الحالة الحالية لوضع الطلب السلبي، يمكن للمضيف استخدام الأمر NCI_ANDROID_QUERY_PASSIVE_OBSERVER_STATUS_CMD. يجب أن يكون NFCC الردّ باستخدام الحالة "NCI_ANDROID_QUERY_PASSIVE_OBSERVER_STATUS_RSP" رمز يشير إلى نجاح الفشل.

NCI_ANDROID_QUERY_PASSIVE_OBSERVER_STATUS_CMD

حقول الحمولة حجم الملف القيمة/الوصف
لا ينطبق 0 ثُمانيات

NCI_ANDROID_QUERY_PASSIVE_OBSERVER_STATUS_RSP

حقول الحمولة حجم الملف القيمة/الوصف
الحالة ثماني بتات واحد اطّلع على رموز الحالة في الجدول 140 من مواصفات NCI،
وضع المراقبة ثماني بتات واحد 0×00 تم إيقاف وضع المراقبة
0x01 تم تفعيل وضع المراقبة