2012-07-30 12 views
7

मेरे पास एक कस्टम लोगो, कुछ कस्टम जेसन सेवा एंडपॉइंट्स, कभी-कभी कस्टम टेक्स्ट, और संभवतः एक कस्टम रंग योजना वाला एक एंड्रॉइड ऐप है।एंड्रॉइड - विभिन्न अनुप्रयोगों के बीच साझाकरण गतिविधियां/कोड

मेरे क्लाइंट के लिए इस विशेष ऐप को 5-10 गुना अधिक पूरी तरह से अलग ऐप के रूप में पुन: ब्रांडेड और वितरित करने की आवश्यकता होगी। तो मैं सबसे अधिक मात्रा में कोड का पुन: उपयोग करने के लिए रास्ता तलाश रहा हूं - मैंने जो कस्टम चीजों का उल्लेख किया है, उसके अलावा गतिविधियां और सेवाएं समान होंगी।

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

क्या एंड्रॉइड लेआउट/स्ट्रिंग संसाधन फ़ाइलों में गुणों से खींचने की क्षमता है? क्या गतिविधियों को एक जार के अंदर बंडल किया जा सकता है और अन्य परियोजनाओं के साथ साझा किया जा सकता है?

उत्तर

5

आप सामान्य कोड साझा करने के लिए एंड्रॉइड लाइब्रेरी प्रोजेक्ट का उपयोग कर सकते हैं। this लेख

+0

धन्यवाद यह सही दिखता है – user842800

0

पढ़ने से शुरू करें आपके पास विभिन्न जावा नामस्थान नहीं हैं, वे सभी परियोजनाओं के लिए आम हो सकते हैं। आपको केवल संसाधनों को प्रतिस्थापित करना और प्रत्येक एप्लिकेशन के लिए अलग-अलग नामस्थान रखने के लिए मैनिफेस्ट को संशोधित करना है। कक्षाओं के समान नाम वाले कई अनुप्रयोगों में कोई समस्या नहीं है। जब तक आप इसे पुन: ब्रैंड नहीं करना चाहते हैं, वैसे भी उपयोगकर्ता इसे नहीं ढूंढ सका, वास्तव में यह वही कोड है।

+0

इस दृष्टिकोण के साथ समस्या यह है कि मेरी गतिविधि 'com compp.app1.R' कथन के साथ शुरू होती है; यह ** आर। जावा ** एंड्रॉइड स्टूडियो या एडीटी द्वारा फ्लाई पर बनाया गया है, और इसका पैकेज ऐप पैकेज द्वारा निर्धारित किया गया है जैसा कि ** AndroidManifest.xml ** में परिभाषित किया गया है। इस प्रकार, 'com.company.app2' के साथ साझा करना आसान नहीं हो सकता है। –

 संबंधित मुद्दे

  • कोई संबंधित समस्या नहीं^_^