कंपनी डोमेन सहित पूरी तरह से पैकेज नाम बदलें


82

मान लीजिए कि यह पैकेज का नाम है package com.company.name:। मैं कैसे बदलूँ company?

पीएस मैंने देखा कि कैसे बदलना है nameलेकिन नहीं company। मैं एंड्रॉइड स्टूडियो का उपयोग कर रहा हूं।


मैंने एक प्रोजेक्ट बनाना शुरू किया, और मुझे companyदूसरे के साथ शब्द बदलने की जरूरत है , क्योंकि यह प्रोजेक्ट एक कंपनी के लिए है। और डिलीट की का उपयोग क्यों करें ?? कहाँ पे?
फिलीप लुचिएनेंको


बस एक नया पैकेज बनाएं, फिर उन कक्षाओं का चयन करें जिन्हें आप स्थानांतरित करना चाहते हैं और फिर इसे नए बनाए गए पैकेज में खींचें, फिर
रिफ्लेक्टर

जवाबों:


48

तुम यह केर सकते हो:

मैनिफ़ेस्ट फ़ाइल में मैन्युअल रूप से पैकेज का नाम बदलें। अपने R.java वर्ग और F6 (Refactor-> Move ...) पर क्लिक करें। यह आपको कक्षा को अन्य पैकेज में स्थानांतरित करने की अनुमति देगा, और उस वर्ग के सभी संदर्भ अपडेट किए जाएंगे।

संदर्भ: मैं एंड्रॉइड पैकेज का नाम कैसे बदलूं?


50

वर्तमान पैकेज: com.company.name

नया पैकेज: com.mycomapny.name

चरण 1) मान लीजिए कि आप इस स्क्रीन पर हैं जो नीचे दिखाया गया है।

यहाँ छवि विवरण दर्ज करें

2) प्रोजेक्ट पेन खोलें और सेटिंग आइकन पर क्लिक करें।

3) कॉम्पैक्ट खाली मध्य पैकेज का चयन रद्द करें।

4) फिर आपका पैकेज अब अलग-अलग हिस्सों में टूट गया है जैसा कि नीचे दिखाया गया है।

5) "कंपनी" पर राइट क्लिक करें चयनकर्ता -> नाम बदलें -> नाम बदलें निर्देशिका का चयन करें।

यहाँ छवि विवरण दर्ज करें

6) अब आपकी "कंपनी" को नए "mycomapny" में बदल दिया गया है और परिवर्तन नीचे दिए गए चित्र में दिखाए गए हैं।

यहाँ छवि विवरण दर्ज करें

7) अब AndroidManifest.xml फ़ाइल में पैकेज का नाम बदलें।

यहाँ छवि विवरण दर्ज करें

8) ओपन ऐप लेवल build.gradle और पैकेज नाम बदलें।

यहाँ छवि विवरण दर्ज करें

9) आपको त्रुटियाँ मिलेंगी क्योंकि प्रतीक "R" को हल नहीं कर सकता है।

10) लाइन को हटा दें जो यह त्रुटि देता है और स्टूडियो स्वचालित रूप से नई आर फ़ाइल आयात करेगा।

11) यदि आपके पास कई फाइलें हैं तो "Cntrl + Shift + R" दबाकर विकल्प खोजें और बदलें

या "संपादित करें चुनें-> खोजें-> पथ में बदलें .."

यहाँ छवि विवरण दर्ज करें

12) सभी को बदलें का चयन करें।


31

इसने मेरे लिए, https://stackoverflow.com/a/18637004/127434 से काम किया

एक और अच्छी विधि है: पहले जावा फ़ोल्डर पर राइट क्लिक करके वांछित नाम के साथ एक नया पैकेज बनाएं -> नया -> पैकेज।

फिर, अपनी सभी कक्षाओं को नए पैकेज में चुनें और खींचें। AndroidStudio हर जगह पैकेज के नाम को रिफलेक्टर करेगा।

अंत में, पुराने पैकेज को हटा दें।


यह मेरे लिए आंशिक रूप से काम करता है, लेकिन यह "आयात com.company.foo" बयानों को ठीक नहीं करता है। मैं src / निर्देशिका में वैश्विक प्रतिस्थापन के साथ उत्तरार्द्ध करने में सक्षम था।
लार्स

9

Android Studio में, आप ऐसा कर सकते हैं:

उदाहरण के लिए, यदि आप com.example.app को iu.awesome.game में बदलना चाहते हैं, तो:

  1. अपने प्रोजेक्ट फलक में, छोटे गियर आइकन पर क्लिक करें ( यहाँ छवि विवरण दर्ज करें)
  2. अनचेक / डी-कॉम्पेक्ट कॉम्पैक्ट खाली मध्य पैकेज विकल्प चुनें यहाँ छवि विवरण दर्ज करें
  3. आपकी पैकेज निर्देशिका अब अलग-अलग निर्देशिकाओं में टूट जाएगी
  4. व्यक्तिगत रूप से उस प्रत्येक निर्देशिका का चयन करें जिसे आप नाम बदलना चाहते हैं, और:

    • इसे राइट-क्लिक करें
    • रिफ्लेक्टर का चयन करें

    • नाम बदलें पर क्लिक करें

    • पॉप-अप डायलॉग में, Rename Directory के बजाय Rename Package पर क्लिक करें

    • नया नाम दर्ज करें और Refactor को हिट करें

    • नीचे में Do Refactor पर क्लिक करें

    • एंड्रॉइड स्टूडियो को सभी परिवर्तनों को अपडेट करने के लिए एक मिनट की अनुमति दें

    • नोट: एंड्रॉइड स्टूडियो में कॉम का नाम बदलने पर, यह चेतावनी दे सकता है। ऐसे मामले में, सभी का नाम बदलेंयहाँ छवि विवरण दर्ज करें

      1. अब अपनी ग्रैड बिल्ड फाइल (build.gradle - आमतौर पर ऐप या मोबाइल) खोलें। अपने नए पैकेज के नाम और सिंक ग्रैड में डिफॉल्टकॉन्फ़िग में एप्लिकेशन को अपडेट करें, अगर यह पहले से ही स्वचालित रूप से अपडेट नहीं किया गया है:यहाँ छवि विवरण दर्ज करें

      2. आपको अपने मेनिफेस्ट में पैकेज = विशेषता को बदलने की आवश्यकता हो सकती है।

      3. स्वच्छ और पुनर्निर्माण।

      4. किया हुआ! वैसे भी, एंड्रॉइड स्टूडियो को इस प्रक्रिया को थोड़ा सरल बनाने की आवश्यकता है।


8

यदि आप सिर्फ ऐप पैकेज का नाम बदलना चाहते हैं, तो @ ल्यूक फिलिप का समाधान अच्छी तरह से काम करता है। मेरे मामले में, मैं भी स्रोत पैकेज का नाम बदलना चाहता हूं, ताकि चीजों को भ्रमित न करें।

केवल 2 चरणों की आवश्यकता है:

  1. अपने स्रोत फ़ोल्डर पर क्लिक करें जैसे कि com.company.example> Shift + F6 (Refactor-> Rename ...)> नाम बदलें पैकेज > अपना इच्छित नाम दर्ज करें।

  2. अपने AndroidManifest.xml पर जाएं, अपने पैकेज नाम> Shift + F6 (Refactor-> Rename ...) पर क्लिक करें > ऊपर जैसा नाम दर्ज करें।

चरण 1 स्वचालित रूप से आपके R.java फ़ोल्डर का नाम बदल देगा, और आप सीधे निर्माण कर सकते हैं।


मुख्य स्रोत फ़ोल्डर के लिए "IOException: rename (...)" को छोड़कर, सभी अच्छे हैं। सरल परियोजना, बस खोला गया।
जुल

1
मैं एंड्रॉइड स्टूडियो 2.1.1 का उपयोग करता हूं। मेरा विशिष्ट उदाहरण, सबसे पहले, मेरे पास है info.apachehive.cardview, मेरे पास है net.vyhn.cardviewचरण 1. ट्री व्यू सोर्स कोड चुनें। चरण 2. क्लिक करें apachehive, Shift + F6 Refactor \ Rename to दबाएँ vyhnचरण 3.info फ़ोल्डर पर क्लिक करें , Shift + F6 Refactor \ Rename to दबाएँ net। फ़ाइल AndroidManifest.xmlस्वचालित रूप से बदल जाती है। फिर मैं डिबग चलाता हूं, मेरा एप्लिकेशन अच्छा काम करता है।
न्हु

5

चार चरण नीचे दिए गए हैं:

  1. नीचे एप्लिकेशन फ़ोल्डर पर क्लिक करें:

यहाँ छवि विवरण दर्ज करें

com.new25.impro। पैकेज का नाम बदलने के लिए Shift + F6 {Refactor-> Rename ...} दबाएं refactor

  1. उसके बाद, Android मॉनिटर देखें। उस पैकजेनमे हर जगह बदलाव दिखा। क्लिक करें refactor

  2. app:changeआप के लिए आवेदन आईडी मॉड्यूल की तरह जाओ कि नाम डाल दिया। और क्लिक करें sync now

  3. अब आप पैकेज का नाम बदल सकते हैं जो आपको पसंद है।


2

1) एंड्रॉइड स्टूडियो में प्रोजेक्ट फ़ोल्डर खोलें।
2) ऐप फोल्डर चुनें -> राइट क्लिक करें, और रीफैक्टर चुनें ।
3) चाल पर क्लिक करें। यह जो पैकेज का नाम प्रकार आप पूर्ण पैकेज का नाम ही करने के लिए कहेगा और यह एक नए पैकेज हाँ नया अपने आप उसके लिए पूछना बनाने बनाने के लिए पूछना होगा gradleकरने के लिए sync


हो सकता है कि आप कुछ स्क्रीनशॉट जोड़ सकते हैं।
असीम केटी

2

एंड्रॉइड स्टूडियो में पैकेज का नाम बदलने के लिए, प्रोजेक्ट अनुभाग में सेटिंग आइकन पर क्लिक करें और कॉम्पैक्ट खाली मध्य पैकेज को अनचेक करें, इसके बाद पैकेज कई फ़ोल्डर नामों में विभाजित हो जाएगा, फिर उस फ़ोल्डर पर राइट क्लिक करें जिसे आपको नाम बदलने की आवश्यकता है, Refactor पर क्लिक करें-> नाम बदलें-> वह नाम टाइप करें जिसे आप बदलना चाहते हैं -> Refactor -> Refactor Directory, फिर पूरे प्रोजेक्ट में R.java फ़ाइल आयात करें। मेरे लिए काम कर रहा है।


2

मैंने लगभग सभी उत्तर पढ़े हैं। लेकिन मुझे लगता है कि एक गायब है। कभी-कभी मैं गलत हो सकता हूं। मैंने नीचे दिए गए तरीके का इस्तेमाल किया है और यह काम कर रहा है।

एंड्रॉइड स्टूडियो में पैकेज का नाम बदलने के 3 तरीके

  1. अपना पैकेज चुनें और राइट-क्लिक करें , रिफैक्टर -> ले जाएं
  2. ले जाएँ पैकेज से चुनें "अपने पैकेज" के लिए दूसरे पैकेज में और ओके पर क्लिक करें।
  3. एक नया संवाद प्रकट होता है, कहते हैं कि कई निर्देशिकाएं "आपका पैकेज" पैकेज करती हैं और क्लिक करती हैं हां पर
  4. अंतिम स्तर या अंतिम नाम को छोड़कर नया पैकेज नाम दर्ज करें। यदि आप पैकेज का नाम "info.xyz.yourapplication" में बदलना चाहते हैं। फिर नीचे "info.xyz" टाइप करें "yourapplication" छोड़ दें।
  5. रिफ्लेक्टर पर क्लिक करें
  6. एक नया संवाद, पैकेज info.xyz मौजूद नहीं है। क्या आप इसे बनाना चाहते हैं? Yes पर क्लिक करें
  7. रिफ्लेक्टर पर क्लिक करें
  8. अंतिम नाम बदलने के लिए नए पैकेज पर राइट-क्लिक करें। रिफैक्टर-> नाम बदलें
  9. पैकेज का नाम बदलें
  10. नया नाम टाइप करें और Do Refactor पर क्लिक करें
  11. सभी पुराने पैकेज निर्देशिकाओं को हटा दें।
  12. ApplicationId को build.gradle फ़ाइल में बदलें और अब सिंक पर क्लिक करें

1
मेरे लिए, यह सबसे अच्छा जवाब है। धन्यवाद।
हसन अल-हेफनावी

1

यदि आपकी कंपनी का डोमेन / पैकेज नाम बहुत लंबा है, तो यह अधिक मुश्किल है।

यह मेरे लिए मिसिंग लिंक था। आपको प्रोजेक्ट फ़ाइलों का चयन करने की आवश्यकता है -> सेटिंग्स -> फिर 'खाली खाली मध्य वर्गों को अनचेक करें।


0

ऐसा करने का सबसे सरल तरीका रूट ऐप फ़ोल्डर com.example.MyAppको com.newcompanyname.MyNewAppNameफिर से नाम देना होगा और फिर पुराने रास्ते की सभी घटनाओं को नए रास्ते में नए आईडीई में बदल दें जो आप उपयोग कर रहे हैं।


0

मुझे पूरे प्रोजेक्ट में पैकेज का नाम बदलने के लिए एक और समाधान मिला:

पैकेज में एक फ़ाइल खोलें। IntelliJ फ़ाइल के ब्रेडक्रंब को प्रदर्शित फ़ाइल के ऊपर प्रदर्शित करता है। उस पैकेज पर जिसे आप नाम दिया जाना चाहते हैं: राइट क्लिक> रिफैक्टर> नाम बदलें। यह पूरे प्रोजेक्ट में पैकेज / निर्देशिका का नाम बदल देता है।


0

मैंने भी इसी समस्या का सामना किया और यहां बताया गया है कि मैंने कैसे हल किया: -

मैं पैकेज का नाम np.com.shivakrstha.userlog to np.edu.kheorusloglog बदलना चाहता हूं

मैंने शिवकथा का चयन किया और मैंने Shift + F6 का नाम बदलकर नाम बदलकर khec कर दिया ।

अंत में, AndroidManifest.xml में एक ही पैकेज के नाम का उपयोग करें , build.gradle में ApplicationId और अपने प्रोजेक्ट के पुनर्निर्माण के लिए मत भूलना ।

नोट: - मैंने np को jp में बदलने की कोशिश की , इसलिए मैंने np को चुना और मैंने Shift + F6 को Rename Refract के लिए दबाया और नाम बदलकर jp कर दिया , दूसरों को भी बदलना ठीक है।


0

यह आपकी मदद कर सकता है - 1) अपने पैकेज की एक फ़ाइल खोलें। 2) एंड्रॉइड स्टूडियो फ़ाइल के ब्रेडक्रंब को खुली हुई फ़ाइल के ऊपर प्रदर्शित करता है। उस पैकेज पर जिसे आप नाम दिया जाना चाहते हैं: राइट क्लिक> रिफैक्टर> नाम बदलें।

यहाँ छवि विवरण दर्ज करें


0

मैंने कोई पैकेज नाम नहीं बदला है। निम्नलिखित दो चरणों ने मेरे लिए काम किया। निम्नलिखित करने के बाद, एप्लिकेशन को एक नया के रूप में स्थापित किया गया था, आखिरकार एक ही पैकेज नाम के साथ दो आवेदन थे।

1) बिल्ड.ग्रेड में

applicationId "mynew.mynewpackage.com"

2) AndroidManifest.xml में Android: अधिकारियों = "mynew.mynewpackage.com.filepervider"


-2

नमस्ते मुझे ऐसा करने का सबसे आसान तरीका मिला।

  1. वांछित पैकेज नाम के साथ एक नई परियोजना बनाएं
  2. पुराने प्रोजेक्ट से सभी फाइलों को नए प्रोजेक्ट में कॉपी करें (old.bad.oldpackage => new.fine.newpackage, res => res में सभी फाइल)
  3. नए build.graddle के अंदर पुराने build.graddle कॉपी करें
  4. नए घोषणापत्र के अंदर पुराने मैनिफेस्ट की प्रतिलिपि बनाएँ
  5. बैकअप या बस पुरानी परियोजना को हटा दें

किया हुआ!


यह सबसे विश्वसनीय तरीका नहीं है, बस फिर से काम करना है, कल्पना करें कि किसी के पास अधिक जटिल परियोजना है, जिसमें स्टाइल, डिमेंस, ड्रॉबल्स, लाइब्रेरी हैं। इस विधि में बहुत समय लगता है।
अमीर डोरा।

1
यह विश्वसनीय है यदि आप कदम से मेरे तरीके का पालन करते हैं और यदि आप उनका अनुसरण करते हैं तो यह बहुत तेज़ है। बस किसी भी जटिलता के बारे में भूल जाते हैं और विचार करते हैं कि आप मौजूदा स्रोत से एक नई परियोजना बना रहे हैं, तो जैसा कि मैं देख सकता हूं कि आपको यह पता नहीं है कि कहां-कहां ड्रॉ करने योग्य पुस्तकालय हैं, मैं आपको समझाता हूं, फिर आपको मेरा जवाब देना होगा। 1- लाइब्रेरी आपके बिल्ड.ग्रेडल के बगल में होती हैं, इसलिए यदि आपने फ़ाइल का बैकअप लिया है तो आपको नए बिल्ड के अंदर की सामग्री को कॉपी करना होगा। ग्रेड 2- ड्राबल्स, डिमेन, स्टाइल सभी रेस फ़ोल्डर के अंदर हैं। इसलिए यदि आपके पास दोनों प्रोजेक्ट नए / पुराने (पैकेज) खुले हैं तो आपको बस ड्रैग / ड्रॉप करना होगा
मार्टिन जोवियल

कुछ समय के बाद आप जितना अधिक कल्पना कर सकते हैं उससे अधिक जटिल है, क्योंकि मैंने इसे सफलता के बिना आजमाया है, फिर मेरी पद्धति का उपयोग करते हुए हर चीज एक आकर्षण की तरह काम करती है
मार्टिन जोविल

हाँ मार्टिन, सहमत हूँ यह भी एक तरीका है और यह काम करता है। लेकिन यह सबसे तेज़ तरीका नहीं है। विस्तृत उत्तर के लिए धन्यवाद।
अमीर डोरा।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.