Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

Android UserManager.isUserAGoat() के उचित उपयोग के मामले?

UserManager.isUserAGoat() - ईस्टर एग API

UserManager.isUserAGoat() एंड्रॉइड में एक **मजाक/ईस्टर एग API** है। इसका कोई वास्तविक उत्पादन उपयोग-मामला नहीं है।

यह क्या करता है

  • API 17-20: हमेशा false लौटाता था।
  • API 21+ (लॉलीपॉप): true लौटाता है यदि पैकेज com.coffeestainstudios.goatsimulator (गोट सिम्युलेटर गेम) इंस्टॉल है; अन्यथा false।

कोड (संदर्भ के लिए)

UserManager um = (UserManager) getSystemService(Context.USER_SERVICE);
boolean isGoat = um.isUserAGoat(); // API 21+ पर: गोट सिम्युलेटर इंस्टॉल है?

इसे गंभीरता से क्यों न लें

  • यह एक **आंतरिक मजाक** है एंड्रॉइड टीम का (गोट सिम्युलेटर संदर्भ)।
  • व्यवहार OS संस्करणों में बदलता है — इस पर भरोसा करने से बग आते हैं।
  • कोई दस्तावेज़ीकृत अनुबंध नहीं, कोई गारंटी नहीं।
  • उत्पादन कोड में इसका उपयोग करना कोड समीक्षा विफलताओं और रखरखाव की समस्याओं का कारण बनता है।

वास्तविक "उपयोगकर्ता प्रकार" जांच के लिए वैध विकल्प

आवश्यकताउचित API
डिवाइस मालिक / प्रोफ़ाइल मालिक जांचेंDevicePolicyManager API
प्रबंधित प्रोफ़ाइल / कार्य प्रोफ़ाइल का पता लगाएंUserManager.isManagedProfile()
सिस्टम उपयोगकर्ता / द्वितीयक उपयोगकर्ता जांचेंUserManager.getUserInfo(), UserHandle
किओस्क मोड / लॉक टास्कActivityManager.isLockTaskPermitted()

मूल उदाहरण की समीक्षा

मूल कोड isUserAGoat() को एक कस्टम विधि में लपेटता था जो जांचती थी कि खुद का पैकेज इंस्टॉल है या नहीं (हमेशा सच), फिर एक सिंगलटन सेट करता था। यह API को पूरी तरह से गलत समझता है और एक एंटी-पैटर्न प्रदर्शित करता है। **उत्पादन कोड में कभी भी isUserAGoat() का उपयोग न करें।**

मजेदार तथ्य

एंड्रॉइड स्रोत कोड में टिप्पणी: "यह निर्धारित करने के लिए उपयोग किया जाता है कि इस कॉल को करने वाला उपयोगकर्ता बकरी बनाने के अधीन है या नहीं।" — यह पूरी तरह से विनोदी है।

  1. एंड्रॉइड फोन को PC और TV के लिए स्पीकर बनाएं एंड्रॉइड फोन को PC और TV के लिए स्पीकर बनाएं

    दुनिया की सभी अच्छी चीजें जोड़ियों में आती हैं: नमक और काली मिर्च, चाकू और कांटा, टॉम और जेरी, और तकनीक के शौकीनों के लिए, ऑडियो और वीडियो। हाथ में सबसे उन्नत तकनीक होने के बावजूद, ऑडियो और वीडियो के बीच शाश्वत मिलन दशकों से एक समस्याग्रस्त मामला रहा है। ऐसे समय में आपके एंड्रॉइड फोन का स्पीकर काम

  1. एंड्रॉइड पर व्हाट्सएप के लिए स्टिकर्स का उपयोग कैसे करें: एक व्यापक गाइड एंड्रॉइड पर व्हाट्सएप के लिए स्टिकर्स का उपयोग कैसे करें: एक व्यापक गाइड

    हाल ही में, iOS 13 ने कई ऐसी विशेषताएं जारी कीं जो एनिमोजी स्टिकर्स के लिए गेम-चेंजिंग हैं। एनिमोजी आपको स्टिकर्स का अपना व्यक्तिगत समूह प्रदान करता है। आप इस सुविधा का लाभ iPhone 10 और उससे ऊपर के मॉडल में उठा सकते हैं और एनिमोजी फेस आईडी फीचर के साथ काम करता है। आप एनिमोजी स्टिकर्स के साथ लाइव वीड

  1. अपने एंड्रॉइड फोन को पावरफुल PC गेम कंट्रोलर में बदलें अपने एंड्रॉइड फोन को पावरफुल PC गेम कंट्रोलर में बदलें

    गेम्स हमेशा एडिक्टिव होते हैं, खासकर अगर आप उन्हें बड़ी स्क्रीन पर खेल रहे हैं। कभी-कभी, गेम्स को आपकी अपेक्षाओं को पूरा करने के लिए पर्याप्त कंट्रोलर्स की आवश्यकता होती है। हालांकि, गुणवत्ता के आधार पर, ये कंट्रोलर्स आपको महंगे पड़ सकते हैं। लेकिन, अपने एंड्रॉइड को PC के लिए कंट्रोलर के रूप में उपय