सबसे पहले, Xamarin एक ही समय में दो अलग-अलग runtimes पर काम करता है। जब आप विजुअल स्टूडियो में अपनी सी # कक्षा बना रहे हैं, तो इस वर्ग का उदाहरण मोनो के तहत चलाएगा। इसके अलावा जब आप न्यूटन से न्यूटन.जेसन पैकेज डाउनलोड कर रहे हैं, तो यह भी मोनो में चलाएगा। यही कारण है कि हम सभी शांत .NET सामान का उपयोग कर सकते हैं। हालांकि, जब आप Java.Lang.Object (एंड्रॉइड) या NSObject (आईओएस) से विरासत में हैं या कस्टम नियंत्रण बना रहे हैं, तो इन कक्षाओं के उदाहरण देशी रनटाइम के तहत चलेंगे।
दूसरा, आप देख सकते हैं कि हमें इन दोनों दुनिया को किसी भी तरह से बांधना होगा। चलो देखते हैं कि हमारे पास किस प्रकार की वस्तुएं हैं।
- प्रबंधित वस्तुओं (मोनो)
- Unmaneged वस्तुओं (मूल निवासी दुनिया)
- सहकर्मी वस्तुओं (मोनो, जिन वस्तुओं पर देशी वस्तुओं के लिए रैपर है)
सहकर्मी वस्तुओं यह है Xamarin SDKs वर्गों के उदाहरण (उदाहरण के लिए गतिविधियां, नियंत्रण नियंत्रण, UILabels, TextViews और इसी तरह), Java.Lang.Object, NSObject, Fragment या यहां तक कि UISegment कक्षाओं से अपने उत्तराधिकारी के उदाहरण।
यह तंत्र Xamarin से सबसे महत्वपूर्ण चीजों में से एक है।
पीएस: असल में, इससे कोई फर्क नहीं पड़ता कि हम किस प्रकार के संकलन का उपयोग ज़ैमरिन परियोजनाओं जेआईटी या एओटी के लिए करते हैं। यह मंच पर निर्भर करता है और .NET दुनिया से कुछ सुविधाओं की अनुमति देता है/नहीं देता है। यह वर्णन नहीं करता है कि Xamarin कैसे काम करता है।
स्रोत
2017-06-17 08:11:48
आईओएस बंडल में डीएलएल केवल मेटाडेटा प्रतिबिंब के लिए उपयोग किया जाता है, निष्पादन योग्य कोड नहीं। एंड्रॉइड उपयोग जिट के लिए http://stackoverflow.com/questions/10741319/how-secure-is-monotouch – Jason