मेरा प्रश्न कमांड लाइन से aidl.exe (विंडोज सिस्टम पर) का उपयोग करने से संबंधित है।मैं एसडीके नमूना कोड का उपयोग कर कमांड लाइन से एआईडीएल उपकरण का उपयोग कैसे करूं?
IRemoteService.aidl IRemoteServiceCallback.aidl ISecondary.aidl
स्थित: यह सवाल तीन AIDL परिभाषा फ़ाइलों का अनुसरण कर रहे ग्रहण, NetBeans के साथ कोई लेना देना नहीं है, आदि
Android SDK के साथ शामिल है
C: निम्न निर्देशिका में \ Android-SDK-windows \ प्लेटफार्मों \ एंड्रॉयड-2.1 \ नमूने \ ApiDemos \ src \ कॉम \ उदाहरण \ एंड्रॉयड \ apis \ एप्लिकेशन
सादगी के लिए, मैंने उपरोक्त निर्देशिका में aidl.exe की प्रतिलिपि बनाई। फिर, एक कंसोल विंडो से, मैं सफलतापूर्वक निम्न दो आदेशों इस्तेमाल किया जावा उत्पन्न करने के लिए फ़ाइलों:
C: \ एंड्रॉयड परियोजना \ ApiDemos \ src \ कॉम \ उदाहरण \ एंड्रॉयड \ apis \ ऐप> AIDL IRemoteServiceCallback.aidl सी: \ एंड्रॉइड-प्रोजेक्ट \ ApiDemos \ src \ com \ example \ android \ apis \ app> aidl ISecondary.aidl
इन आदेशों को आमंत्रित करने से क्रमशः IRemoteServiceCallback.java और ISecondary.java फ़ाइलें उत्पन्न हुईं। अब तक सब ठीक है।
मुझे लगता है कि दोनों .aidl फ़ाइलें सरल हैं; उनमें कोई 'आयात' कथन शामिल नहीं है।
शेष .aidl फ़ाइल, IRemoteService.aidl, लाइन 19 पर निम्नलिखित इंपोर्ट स्टेटमेंट शामिल होते हैं:
आयात com.example.android.apis.app.IRemoteServiceCallback;
समस्याउठता है जब मैं इस फाइल पर AIDL उपकरण चलाएँ:
IRemoteService.aidl:: 19:
C:\Android-project\ApiDemos\src\com\example\android\apis\app>aidl IRemoteService.aidl
ऐसा करने से निम्न त्रुटि संदेश का कारण बनता है कंसोल विंडो में मुद्रित करने के लिए नहीं किया जा सका क्लास com.example.android.apis.app.iremoteServiceCallback
एआईडीएल उपकरण स्पष्ट रूप से उसी निर्देशिका में IRemoteServiceCallback.aidl फ़ाइल का पता नहीं लगा सका, जिसमें वह चल रहा था। AIDL उपकरण के "उपयोग" संदेश के अनुसार, वहाँ एक आदेश है कि जाहिरा तौर पर इस समस्या को हल करने के लिए इस्तेमाल किया जा सकता है:
-I<DIR> search path for import statements.
समस्या: मैं से बचने के लिए के रूप में इस तरह से मैं निर्दिष्ट करने के लिए सक्षम नहीं किया गया त्रुटि संदेश और एआईडीएल उपकरण एक .java फ़ाइल जेनरेट फ़ाइल से 'आयात' कथन के साथ उत्पन्न करता है। (नोट: मैं अपने वर्तमान निर्देशिका करने के लिए Windows वातावरण चर 'पथ' की स्थापना की।) यहाँ कुछ रूपों मैं कोशिश की है इस प्रकार हैं:
-Ic:\com\example\android\apis\app
-Ic:/com/example/android/apis/app
-I.\
-I.
मैं कुछ सरल लापता होना चाहिए। आश्चर्य की बात है, भले ही मैंने इस प्रश्न के विभिन्न स्थानों पर पोस्ट किए गए बदलावों को देखा है, फिर भी मुझे एआईडीएल कमांड लाइन उपयोग (aidl.exe यूएसएजी जानकारी के अलावा) के बारे में कोई जवाब या कोई दस्तावेज नहीं मिला है। क्या कोई मुझे अंदर खींच सकता है?
धन्यवाद, मैट
मुझे लगता है कि यह इंटरनेट पर एकमात्र जगह है जिसे दस्तावेज किया गया है। धन्यवाद, आप नायक हैं। – benkc