मुझे लगता है कि एंड्रॉइड प्रतिबिंब का समर्थन करता है। लेकिन क्या यह वास्तव में है? प्रतिबिंब पर भरोसा करना कितना समझदार होगा? जुर्माना क्या है?एंड्रॉइड और प्रतिबिंब
उत्तर
एंड्रॉइड प्रतिबिंब का समर्थन करता है।
एक बार जब आपके पास प्रोटोटाइप चल रहा है, तो आप बेंचमार्क कर सकते हैं और अपनी बाधाओं को निर्धारित कर सकते हैं।
यदि इसका प्रतिबिंब है, तो इंटरफेस को कैश करने की कोशिश करने पर विचार करें और इस तरह से एक ही लागत को बार-बार उसी इंटरफेस को लगातार हल करने के बजाय इसे एक-ऑफ लागत बनाने के लिए विचार करें।
यह समर्थित है, और उस स्थिति में भी सिफारिश की जाती है जहां आप एंड्रॉइड ओएस के एकाधिक संस्करणों के साथ एक apk
फ़ाइल में संगतता चाहते हैं। आधिकारिक Android डेवलपर ब्लॉग से यह आलेख वर्णन करता है कि कैसे एक एप्लिकेशन एपीआई के केवल कुछ शुरुआती संस्करण की आवश्यकता है कि निर्माण करने के लिए, और नए एपीआई आह्वान करने के लिए अगर वे उपलब्ध हैं प्रतिबिंब का उपयोग करता है:
एक अच्छा उदाहरण नहीं है बिजनेसकार्ड में नमूना कोड में भी प्रतिबिंब का। इस विधि के परिणामस्वरूप निष्पादन का एक गुच्छा फेंक दिया जाएगा, इसलिए यह अधिक प्रदर्शन अनुकूल होना चाहिए। यह भी मेरी राय में, लागू करने में आसान है। विशेष रूप से अगर यह पहले अनुपूरक विधि से संबंधित है।
यहाँ है जहाँ यह प्रयोग किया जाता है: http://developer.android.com/resources/samples/BusinessCard/src/com/example/android/businesscard/ContactAccessor.html
एक सरल एंड्रॉयड http://aaarkonusurum.blogspot.com/2012/02/android-ile-reflection.html
Class x = Object.class;
Constructor[] constructors = x.getDeclaredConstructors();
Field[] fields = x.getDeclaredFields();
Method[] methods = x.getDeclaredMethods();
for (Constructor constructor : constructors) {
//constructors
}
for (Field field : fields) {
//fields
}
for (Method method : methods) {
//methods
}
पर प्रतिबिंब का उपयोग प्रतिबिंब
String x = TextView.class.toString().replace("class ", "");
Class<?> cls = Class.forName(x);
Class<?> param[] = new Class[1];
param[0] = Context.class; //Context=o an ki context ==> [activity.class]
Constructor<?> ct = cls.getConstructor(param);
Object paramVal[] = new Object[1];
paramVal[0] = context;
Object retobj = ct.newInstance(paramVal);
क्रम निश्चित रूप से
Class methodParam[] = new Class[1];
methodParam[0] = java.lang.CharSequence.class;
Method method = cls.getMethod("setText", methodParam);
Object arglist[] = new Object[1];
arglist[0] = new String("THIS TEXTVIEW HAS BEEN CREATED ON RUN TIME");
method.invoke(retobj, arglist);
एंड्रॉयड पर() विधि setText को पहुँचना प्रतिबिंब का समर्थन करता है और हम एक अलग APK या फ्रेमवर्क वर्ग के तरीकों पढ़ सकते हैं। यहाँ बनाने के लिए API- http://prasanta-paul.blogspot.kr/2013/09/java-reflection-as-android-api.html
मुझे "बिल्कुल" बिट पसंद नहीं है। जावा वातावरण के बहुत सारे हैं जिनमें प्रतिबिंब मौजूद नहीं है। जावाकार्ड और जावा एमई दिमाग में आते हैं। –
- 1. सी # प्रतिबिंब: यदि ... और?
- 2. गुण विरासत और प्रतिबिंब
- 3. जेनेरिक कन्स्ट्रक्टर और प्रतिबिंब
- 4. कचरा संग्रह और प्रतिबिंब
- 5. मोडोपेट और .NET प्रतिबिंब
- 6. Obfuscate असेंबली और प्रतिबिंब
- 7. प्रतिबिंब
- 8. प्रतिबिंब
- 9. प्रतिबिंब
- 10. प्रतिबिंब
- 11. प्रतिबिंब
- 12. प्रतिबिंब
- 13. प्रतिबिंब
- 14. प्रतिबिंब
- 15. प्रतिबिंब?
- 16. प्रतिबिंब
- 17. प्रतिबिंब
- 18. प्रतिबिंब
- 19. प्रतिबिंब
- 20. प्रतिबिंब
- 21. प्रतिबिंब
- 22. प्रतिबिंब
- 23. प्रतिबिंब
- 24. प्रतिबिंब
- 25. प्रतिबिंब
- 26. प्रतिबिंब
- 27. प्रतिबिंब
- 28. प्रतिबिंब
- 29. प्रतिबिंब
- 30. प्रतिबिंब
मुझे लगता है कि सवाल वास्तव में है अगर किसी को पहले से ही विभिन्न उपकरणों पर मानक किया एक संभव डिजाइन दृष्टिकोण के रूप में एंड्रॉयड में प्रतिबिंब का उपयोग करने पर एक लेख है। –