Android विकास की छिपी विशेषताएं?


121

मुझे आश्चर्य है कि हिडन फीचर्स श्रृंखला में अभी तक कोई एंड्रॉइड हिडन फीचर्स पोस्ट नहीं है जिसे मैं अभी कुछ समय के लिए ट्रैक कर रहा हूं।

द हिडन फीचर्स सीरीज़ उन लोगों के लिए बढ़िया है जो एक निश्चित भाषा के लिए नए हैं। यह रस्सियों और कुछ मूल्यवान चालों को दिखाता है, सभी एक ही स्थान पर। मुझे लगता है कि यह एक शानदार विचार है। यहां तक ​​कि विशेषज्ञों को कभी-कभी ऐसी ट्रिक्स मिलती हैं जिनके बारे में उन्होंने कभी नहीं सुना होगा।

मैं Android विकास शुरू कर रहा हूं और मुझे इसकी छिपी हुई विशेषताओं, युक्तियों, चालों और नुकसान के बारे में सुनना अच्छा लगेगा।

तो, यहाँ जाता है: एंड्रॉइड की कुछ छिपी हुई विशेषताएं क्या हैं ?

जवाबों:


105

उम्मीद है कि बहुत अधिक छिपी हुई, छिपी हुई विशेषताएं नहीं हैं - लेकिन यहां एंड्रॉइड के लिए कुछ कम ज्ञात और गैर-सहज ज्ञान युक्त विशेषताएं उपलब्ध हैं जो निश्चित रूप से आपके जीवन को आसान और आपके ऐप्स को बेहतर बनाएंगी।

  • प्लेटफ़ॉर्म के लिए सभी स्रोत कोड और सभी गैर-Google देशी ऐप्स आपके लिए एंड्रॉइड ओपन सोर्स प्रोजेक्ट से ब्राउज़, डाउनलोड, उधार या चोरी करने के लिए उपलब्ध हैं ।
  • संसाधन ढांचे का उपयोग करते हुए , आपके ऐप के स्थानीयकृत संस्करण बनाना एक नया एनोटेट किए गए सबफ़ोल्डर (उदाहरण। मान-fr) को जोड़ने के लिए उतना ही सरल है, जिसमें एक अलग भाषा में स्ट्रिंग के साथ XML फ़ाइल होती है (जैसे। फ्रेंच)। Android आपके लिए रनटाइम पर सही फ़ोल्डर का चयन करेगा।
    • समान संसाधन ढांचा आपको विभिन्न हार्डवेयर कॉन्फ़िगरेशन, स्क्रीन पिक्सेल घनत्व और इनपुट उपकरणों के लिए वैकल्पिक लेआउट का उपयोग करने देता है, केवल नामित फ़ोल्डर में उन्हें ड्रॉप करके।
  • एंड्रॉइड 1.6 के बाद से, आपका ऐप उन परिणामों का उत्पादन कर सकता है जो होमस्क्रीन क्विक सर्च बॉक्स खोज के परिणामों में दिखाई देंगे। इसे कस्टम खोज सुझावों के रूप में जाना जाता है ।
  • इरादे और इरादे फ़िल्टर का उपयोग करके आपके एप्लिकेशन किसी कार्रवाई को पूरा करने के लिए अनाम अनुरोध कर सकते हैं और सेवा कर सकते हैं (जैसे। कहां ऐप ओपन टेबल ऐप से टेबल बुकिंग का अनुरोध कर सकता है )।
    • वे एक अज्ञात आवेदन के लिए एक कार्रवाई को पूरा करने के लिए अनुरोध किए बिना यह जान सकते हैं कि कौन सा आवेदन उस अनुरोध को पूरा कर सकता है
    • आपका ऐप अज्ञात ऐप्स से अनुरोधों को पूरा करने की आवश्यकता के बिना कार्यों को पूरा कर सकता है, जिससे पता चलेगा कि कौन से ऐप अनुरोध करेंगे। इसे दाईं ओर चलाएं और आप 'डिफ़ॉल्ट' ट्विटर ऐप, या बुकिंग ऐप आदि बना सकते हैं।
  • अलार्म का उपयोग करके आप अपने ऐप को पूर्व निर्धारित समय पर कार्यों को पूरा करने के लिए सेट कर सकते हैं, भले ही आपका ऐप न चल रहा हो।
    • आप नियमित ईवेंट (जैसे सर्वर पोलिंग या अपडेट) शेड्यूल करने के लिए setInexactRepeating विधि का उपयोग करके बहुत सारे बैटरी जीवन को बचा सकते हैं । यह एडहॉक के बजाय एक ही समय में होने वाले कई ऐप से अलार्म को सिंक्रोनाइज़ करेगा।
  • प्रेफ़रेंस फ्रेमवर्क का उपयोग करके आप अपने ऐप्स के लिए सेटिंग स्क्रीन उसी शैली में बना सकते हैं जैसे सिस्टम सेटिंग्स। आप अपने एप्लिकेशन की सेटिंग पदानुक्रम में सिस्टम सेटिंग्स स्क्रीन (उदाहरण सुरक्षा और स्थान) को भी शामिल कर सकते हैं।
  • AudioTrack और AudioRecord API का उपयोग करके , आप ऑडियो डेटा को सीधे और PCM ऑडियो बफ़र से स्ट्रीम कर सकते हैं।

35

/ उपकरण निर्देशिका में उपकरण SDK का एक रूप से उल्लेखनीय हैं:

  • हमारा डिज़ाइनर विशेष रूप से प्रभावित हुआ, draw9patchजिसने स्ट्रेचेबल बटन को डिज़ाइन करने में मदद की। उसने मुझे वहां से संपत्ति दी, और मैं पृष्ठभूमि के रंग से बदलकर 9-पैच ड्रॉएबल हो गया और अब हमारे पास एक कस्टम बटन है, गोल कोनों, आदि जो पाठ को फिट करने के लिए फैला हुआ है।
  • ddms, जिसे ग्रहण प्लगइन में भी एकीकृत किया गया है। यह बेहद शक्तिशाली है, लेकिन मैं स्क्रीनशॉट लेने के लिए इसका इस्तेमाल करता हूं।
  • adb- कमांड लाइन से अपने डिवाइस या एमुलेटर के साथ बातचीत करें। मैं अपने डेस्कटॉप पर एक टर्मिनल विंडो में अपने डिवाइस से लॉग का पालन करने के लिए इसका उपयोग करता हूं, हालांकि मैंने इसे उन ऐप्स को इंस्टॉल और अनइंस्टॉल करने के लिए उपयोगी पाया है जो दुर्व्यवहार कर रहे हैं।
  • sqlite3 - एक स्थापित डेटाबेस के साथ बातचीत करने और प्रश्नों को आज़माने के लिए बहुत अच्छा है।
  • apkbuilder, zipalign, aapt- बिना सिर को चलाने के लिए महान बनाता है
  • monkey अपने ऐप की फ़ज़ी-टेस्टिंग के लिए।

मैं भी प्रदर्शन , जवाबदेही और निर्बाधता के लिए तीन डिजाइनिंग को सिंगल करूंगा , लेकिन मैं (बैटरी) लाइफ के लिए एक चौथा कोडिंग भी जोड़ना चाहूंगा ।

हालांकि जावदोक कभी-कभी थोड़ा विरल हो सकता है, यह आपके लिए स्रोत को देखने के लिए कोई अंत नहीं है

यह भी बहुत उपयोगी है कि गोगलर्स द्वारा लिखे गए बहुत सारे सैंपल ऐप्स का निर्माण, जांच और फिर देखें कि उन्होंने यह कैसे किया।


1
आप एक और अच्छा टूल लेआउट अपनाने से चूक गए।
100rabh

एक और अच्छा लापता जो मैं हर समय उपयोग करता हूं वह है पदानुक्रम।
आर्टेम रसाकोवस्की

25

मुझे लगता है मैं तब शुरू करूँगा।


मुझे लगता है कि एक अच्छी छिपी हुई विशेषता Android प्रलेखन का सबसे अच्छा अभ्यास है। यह उत्तरदायी और तेज एप्लिकेशन को डिजाइन करने के लिए बहुत सारे शानदार सुझावों को सूचीबद्ध करता है।

सर्वोत्तम अभ्यास अनुभाग हैं:

  • एकाधिक स्क्रीन का समर्थन (कई आकार और संकल्प)
  • यूआई दिशानिर्देश
    • आइकन डिजाइन
    • ऐप विजेट डिज़ाइन
    • गतिविधि और कार्य डिजाइन
    • मेनू डिजाइन
  • प्रदर्शन के लिए डिजाइनिंग
  • जवाबदेही के लिए डिजाइनिंग
  • निर्बाध के लिए डिजाइनिंग

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


यदि आप ग्रहण का उपयोग करते हैं, तो आप देखेंगे कि यह XML फ़ाइलों को बहुत अच्छी तरह से प्रारूपित नहीं करता है और जब यह करता है, तो यह बहुत असंगत होता है (कभी-कभी यह नई लाइनों द्वारा विशेषताओं को विभाजित करता है, कभी-कभी यह नहीं होता है)। इसे ठीक करने के लिए, आप Ctrl-Shift-F (ऑटो-प्रारूप) दबा सकते हैं। Ctrl-Shift-F उपयोग नियम विंडो-> प्राथमिकताएं-> XML-> XML फ़ाइलें-> संपादक में हैं।


1
अंतिम एक निश्चित रूप से मेरे वर्कफ़्लो का हिस्सा होगा। यह मुझे पिछले हफ्ते के लिए परेशान कर रहा था ... धन्यवाद !!
मिकेल

14

एंड्रॉइड XML के सपोर्ट करता है <shape>जिसे एसवीजी जैसे ड्रॉबल्स के रूप में इस्तेमाल किया जा सकता है। दुर्भाग्य से उनके लिए कोई दस्तावेज नहीं है। यह सबसे अच्छी जानकारी है जो मुझे मिल सकती है:

http://escomic.net/217


4
आकृतियों के लिए सभी xml सुविधाओं पर एक पूर्ण प्रलेखन के साथ idunnolol.com/android/drawables.html भी है । आकृतियाँ पृष्ठभूमि को गोल करने के लिए बहुत महत्वपूर्ण हो सकती हैं जो क्लिक करने पर रंग बदलती हैं या कस्टम पृष्ठभूमि आरेखों के बजाय xml परिभाषित ग्रेडिएंट बनाते हैं।
Janusz

क्या एक xml दस्तावेज़ में कई आकृतियों को जोड़ना संभव है। घेरे और आयतों के एक जोड़े की तरह?
स्काईफुट

13

सर्वोत्तम प्रथाओं के संबंध में, आप एंड्रॉइड कोडिंग शैली की जांच करना चाहते हैं:

http://source.android.com/source/code-style.html

साथ ही साथ ग्रहण कोड और आयात फ़ॉर्मेटर्स (android-formatting.xml, android.importorder) जो कि विकास / विचार / ग्रहण के तहत प्लेटफ़ॉर्म स्रोत कोड में पाए जाते हैं


2
वहाँ एक सा भी कई हुप्स इसलिए इसे यहाँ मिल जाए, बस ग्रहण फ़ॉर्मेटर हेतु कोड प्राप्त करने के माध्यम से कूदने के लिए है: google.com/codesearch/p?hl=en#CRBM04-7BoA/ide/eclipse/...
idbrii

7

hierarchyviewer in / tools आपको अपने दृश्य लेआउट को डीबग / विश्लेषण करने की अनुमति देता है: गद्दी, स्थिति, दृश्य पदानुक्रम आदि।

इसने मुझे कई बार बचाया जब यह पता लगाने की कोशिश की गई कि चीजों को किस तरह से रखा गया है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.