एंड्रॉइड हाइब्रिड एप्लिकेशन मूल एंड्रॉइड फ़ंक्शंस का उपयोग कर

वर्तमान में मैं एक एंड्रॉइड हाइब्रिड एप्लिकेशन विकसित कर रहा हूं। मैं एंड्रॉइड विकास के लिए काफी नया हूं लेकिन हर दिन नई चीजें उठा रहा हूं। यह हाइब्रिड एप्लिकेशन सेन्चा टच 2.3.1 ढांचे पर बनाया गया है। परियोजना में मुख्य लक्ष्यों के निम्नलिखित शामिल हैं।

कार्यक्षमता:

  • वर्तमान जीपीएस स्थान प्राप्त करना। (यदि आवश्यक हो तो 2 जी/3 जी या वाईफाई द्वारा समर्थित)
  • वर्तमान एक्सेलेरोमीटर मानों को पढ़ना। (फॉल-डिटेक्शन एल्गोरिदम के लिए प्रयुक्त)
  • क्यूआर कोड स्कैनिंग। (मैं शायद इस फ़ंक्शन के लिए लाइब्रेरी का उपयोग करूंगा)
  • टाइमर सेट करना और इसे पृष्ठभूमि में चलाने दें।
  • उपर्युक्त सभी को आवेदन के मूल भाग में 'run' होना चाहिए।

सामान्य प्रश्न: वास्तुकला/आधार संरचना के संदर्भ में ऐसा करने का सबसे अच्छा तरीका क्या होगा?

उत्तर पर थोड़ा अधिक विशिष्ट प्राप्त करने के लिए मैं यहां कुछ और जानकारी प्राप्त करना चाहता हूं।

वर्तमान में एप्लिकेशन का मूल भाग (गतिविधि) कुछ हद तक दिखता है। यह वेबव्यू घोषित करता है और आरंभ करता है और यूआरएल लोड करता है जो मेजबान को संदर्भित करता है जहां मेरा सेन्चा टच एप्लिकेशन होस्ट किया जाता है। अब तक यह एकमात्र गतिविधि/कक्षा है जो मेरे पास है। और यह भी ठीक से काम करता है।

मैं निम्नलिखित < मजबूत> पुल एप्लिकेशन के संकर और मूल भाग के बीच आगे और आगे संवाद करने के लिए। उदाहरण में गिटहब उन्होंने एक जावा क्लास में सभी कार्यक्षमताओं को भर दिया। (गतिविधि)

मेरे मामले में यह मेरे प्रोजेक्ट के लिए होगा, कि सभी हाइब्रिड से मूल फ़ंक्शन कॉल, जैसे वर्तमान जीपीएस स्थिति प्राप्त करना, पृष्ठभूमि में टाइमर सेट करना या कैमरा शुरू करना मुख्य गतिविधि में रहना होगा। इस प्रकार समय में काफी बड़ा हो रहा है, मैं कल्पना कर सकता था।

उप प्रश्न: क्या यह जाने का तरीका है, या मुझे अलग-अलग वर्गों में सभी मूल कार्यक्षमता को विभाजित करना चाहिए?

परिदृश्य:

जीपीएस सेंसर को ठीक करने के लिए काफी समय लगता है, इसलिए जीपीएस को मौजूदा निर्देशांक की खोज करते समय उपयोगकर्ता को बाधित नहीं किया जाना चाहिए। (यदि आवश्यक हो तो इसे फिर से 2 जी/3 जी या वाईफाई द्वारा समर्थित किया जा सकता है)

उप प्रश्न: क्या यह या किसी अन्य पृष्ठभूमि कार्यक्षमता को अलग थ्रेड में संभाला जाना चाहिए? या उसी गतिविधि में जहां वेबव्यू रहता है? या क्या मैं केवल उस गतिविधि के भीतर एक नया धागा बना सकता हूं जो पृष्ठभूमि पर चलाने के लिए आवश्यक जीपीएस और/या अन्य कार्यक्षमता को संभालता है?


जैसा कि आप देख सकते हैं कि मैं मूल पक्ष पर एप्लिकेशन को संरचित करने का सबसे अच्छा तरीका जानने का प्रयास कर रहा हूं।

थ्रेडिंग भाग (पृष्ठभूमि में चलने वाली कार्यक्षमता, जैसे कि टाइमर या जीपीएस जो सही निर्देशांक की प्रतीक्षा करता है) मैं IntentService का उपयोग करना चाहता था, क्योंकि कार्यक्षमता को चलाना पड़ता है और साथ ही अपने कार्यों को पूरा करना, भले ही एप्लिकेशन सक्रिय/छोटा न हो। इसके अलावा एक ही कार्य फिर से संभाला जा सकता है। (धागे का दोबारा उपयोग कर रहे हैं?) तो जब मैं इस प्रश्न में थ्रेडिंग या धागे की बात करता हूं, तो मेरा मतलब है इरादों का उपयोग करना।

मुझे आशा है कि मैं काफी स्पष्ट था। अब तक पढ़ने के लिए धन्यवाद।

(छद्म) कोडिंग उत्तरों की सराहना की जाती है, लेकिन मुझे सबसे अच्छी/सही संरचना (छवि या 'शब्दों में' जैसे) को प्राथमिकता दी जाएगी। फिर फिर, जैसा आप चाहें करते हैं।

0