java - ब्लैकबेरी पर जेएसआर 177 समर्थन



blackberry mobile-phones (1)

मैं एपीडीयू एक्सचेंजों के माध्यम से सिम आवेदन के साथ बातचीत करने की कोशिश कर रहा हूं। एपीडीयू का आदान-प्रदान करने के लिए, मुझे कनेक्टर। ओपन () एपीआई के माध्यम से एक एपीडीक्यूनेक्शन बनाना पड़ता था, लेकिन यह विशेष एपीआई एक आईओ अपवाद बताती है कि "जेएसआर 177 इस प्लेटफ़ॉर्म पर समर्थित नहीं है", मुझे नहीं पता कि यह क्या होता है क्योंकि मैं इसका परीक्षण करता हूं सिम्युलेटर या ब्लैकबेरी उपकरणों पर भी समर्थित नहीं है या नहीं।

मैं जानना चाहूंगा, क्या कोई भी ब्लैकबेरी पर सिम ऐप के साथ कामयाब हुआ है? यदि हां, तो यह करने का तरीका क्या है? क्या ब्लैकबेरी एसडीके में एक्सटेंशन जोड़ना संभव है, यदि मैं जेएसआर 177 लागू कर सकता हूं? मैं ऐसे एक्सटेंशन को शामिल करने के लिए एसडीके का विस्तार कैसे करूं? मैं वास्तव में आप लोगों से किसी भी इनपुट की सराहना करते हैं अग्रिम में धन्यवाद।


JSR 177 का उपयोग आमतौर पर सिक्योर एलिमेंट्स और यूआईसीसी के साथ संचार के लिए किया जाता है। JSR 177 ब्लैकबेरी सिम्युलेटर पर काम नहीं करेगा क्योंकि यह आवश्यक हार्डवेयर का अनुकरण करने का समर्थन नहीं करता है यदि आप एनएफसी सिमुलेशन जोड़ना चाहते हैं, तो आपको सिम्युलेटर को संपादित करना होगा और यहां दिए गए निर्देशों का पालन करना होगा। मैंने इन निर्देशों को पूरा नहीं किया है इसलिए मुझे नहीं पता कि क्या सिम में जेएसआर 177 कनेक्शन को अनुकरण करना संभव है। लिंक के भीतर दिए गए निर्देशों से, "ब्लैकबेरी स्मार्टफ़ोन सिम्युलेटर केवल असुरक्षित निष्क्रिय संचार की उत्पत्ति करता है।"

मैं आपको सलाह देता हूं कि ब्लैकबेरी एनएफसी प्राइमर पढ़ें और स्मार्ट कार्ड के अनुप्रयोगों के साथ बातचीत करने का कुछ ज्ञान है।

एक ब्लैकबेरी डिवाइस पर जेएसआर 177 का उपयोग करना संभव है लेकिन ऐसा करने के लिए आपको एपीआई तक पहुंचने में सक्षम होने के लिए एनसीएफआर या आरईई हस्ताक्षर के साथ अपने आवेदन पर हस्ताक्षर करना होगा। यह हस्ताक्षर केवल एक आवेदन ब्लैकबेरी पर प्राप्त किया जा सकता है। आप अपने आवेदन के भीतर उपयोग किए गए एपीआई के आधार पर हस्ताक्षर के लिए दोनों या एक की आवश्यकता हो सकती है, हालांकि यदि आप सिम के साथ संवाद करना चाहते हैं तो मेरा मानना ​​है कि आपको केवल एनएफसीआर हस्ताक्षर की आवश्यकता होगी।

नीचे एक JSR 177 कनेक्शन बनाने का एक छोटा (अनचाहे वाला) उदाहरण है:

//The BNF URI is explained within JSR 177, it will connect to the AID specified in the
//target. In this example the AID is the first thing that came to my head and should be an
//application install on the UICC.
    final String BNF_URI = "apdu:0;target=A0.00.00.00.01.02.03.04";

    ...

    //Cmd APDU defines the APDU to be sent to the application on the UICC
    byte[] cmdApdu = new byte[]{ 0x00, 0x4A, 0x00, 0x01, 0x00};
    ApduConnection conn = (ApduConnection)Connector.open();
    byte[] rApdu = conn.exchangeAPDU(cmdApdu);
    ...

उदाहरण में, आर-एपीडीडी को स्मार्ट कार्ड पर्यावरण के अंदर आवेदन से भेजे गए डाटा के एक बाइट सरणी मिलेगी।





apdu