ฉันได้เป็นโครงการที่สร้างขึ้นใน Android Eclipse ฉันต้องการแก้ไขชื่อแพ็กเกจและแอปพลิเคชันของโปรเจ็กต์ ฉันจะทำสิ่งนั้นใน Eclipse ได้อย่างไร?
คำตอบ:
ตามปกติโดยการกด F2
ที่ชื่อแพ็กเกจคุณสามารถเปลี่ยนชื่อหรือเปลี่ยนชื่อแพ็กเกจและคลิกขวาจากนั้นเลือกRename
ตัวเลือกคุณสามารถเปลี่ยนหรือเปลี่ยนชื่อแพ็กเกจได้
เมื่อคุณกด F2จะแสดงกล่องโต้ตอบเป็น:
ในกล่องโต้ตอบนี้อย่าลืมเลือกช่องทำเครื่องหมาย "อัปเดตการอ้างอิง" เนื่องจากการ "ทำเครื่องหมาย" ในกล่องกาเครื่องหมายนี้จะทำการเปลี่ยนแปลงการอ้างอิงทั้งหมดของแพ็กเกจซึ่งอ้างอิงโดยส่วนประกอบอื่น ๆ ของโครงการ
F2
ในชื่อแพ็คเกจใช้งานได้
Rename
คำสั่งภายใต้Refactor
หากไม่ได้อยู่ที่รูทของเมนูบริบท
นี่คือ ข้อผิดพลาดในเครื่องมือ Eclipse Android
วิธีแก้ไข: คลิกขวาที่โครงการไปที่เครื่องมือ Android -> เปลี่ยนชื่อแพ็คเกจแอปพลิเคชัน
และตรวจสอบAndroidManifest.xml
ด้วยว่าอัปเดตถูกต้องหรือไม่ ในกรณีของฉันมันไม่ได้และนั่นควรจะแก้ปัญหานี้ได้
สิ่งเหล่านี้ไม่ได้ผลสำหรับฉันพวกเขาทั้งหมดแนะนำข้อผิดพลาด
สิ่งต่อไปนี้ใช้ได้ผลสำหรับฉัน:
ประกาศที่สำคัญอย่างยิ่งประการหนึ่ง:
ไม่เคยใช้ชื่อแพ็กเกจโดยตรงเช่นเดียวกับการส่งผ่านค่าสตริงที่มีชื่อแพ็กเกจ ใช้เมธอด getPackageName () สิ่งนี้จะทำให้การเปลี่ยนชื่อเป็นแบบไดนามิก ทำทุกอย่างเพื่อเข้าถึงเมธอด getPackageName ()
ใน Eclipse Juno วิธีเปลี่ยนชื่อที่ถูกต้องคือ:
หากต้องการเปลี่ยนชื่อแอปเมื่ออยู่ใน Android ให้ไปที่res/values/strings.xml
และเปลี่ยนapp_name
เป็นสิ่งที่คุณต้องการ
เพียงคลิกขวาที่ชื่อโครงการและเลือกเครื่องมือ Androidแล้วคลิกเปลี่ยนชื่อชื่อแพ็คเกจแอปพลิเคชันและเปลี่ยนชื่อ ใช้สำหรับโครงการ Android เท่านั้น
กดF2แล้วเปลี่ยนชื่อ (หรือคลิกขวาที่โครงการแล้วเลือกRename
) จะเปลี่ยนแปลงทุกที่ที่มีการประกาศแพ็คเกจนั้นในโครงการของคุณ มันเปลี่ยนชื่อโดยอัตโนมัติทั้งหมด
ไปที่โฟลเดอร์Srcของโปรเจ็กต์ Android ของคุณแล้วเปิดไฟล์ Java
เปลี่ยนแพ็กเกจOldName.android.widget
เป็นnewName.android.widget
.
มันทำให้คุณมีข้อผิดพลาดเช่นนี้
แพ็กเกจที่ประกาศ "newName.android.widget" ไม่ตรงกับแพ็กเกจที่คาดไว้ "OLDName.android.widget
ในการแก้ไขปัญหานี้ให้เลือกย้ายชื่อไฟล์ Java ไปที่ Newname.android.widgetและลบโฟลเดอร์แพ็คเกจเก่า
ขั้นตอนถัดไป: ไปAndroidManifest.xml
และการเปลี่ยนแปลง
ไปpackage="OldName.android.widget"
package="newName.android.widget"
สิ่งนี้ทำงานได้อย่างสมบูรณ์แบบสำหรับฉัน (แทนที่ข้อความธรรมดา):
ไปที่ค้นหา -> ไฟล์
ข้อความที่มี: ชื่อเพจเก่า
รูปแบบชื่อไฟล์: *
ขอบเขต: พื้นที่ทำงาน
กดแทนที่
แทนที่: ชื่อแพ็คเกจใหม่
ตอนนี้โครงการของคุณเต็มไปด้วยข้อผิดพลาด
คลิกแพ็คเกจของคุณใน project explorer แล้วกดF2(เปลี่ยนชื่อ)
กรอกชื่อแพ็กเกจใหม่และเลือกเครื่องหมายถูกทั้งหมด
กดดูตัวอย่าง
คลิกตกลง
รอให้ Eclipse รีเฟรช หากยังคงมีข้อผิดพลาดให้ล้างโปรเจ็กต์ทั้งหมดในพื้นที่ทำงาน:
โครงการ -> ทำความสะอาด
สิ่งนี้ไม่ได้ผลสำหรับฉันจนกว่าฉันจะรวมสองคำตอบที่กล่าวถึงในโพสต์นี้
ขั้นตอนที่ 1: คลิกขวาที่โครงการ -> เลือกเครื่องมือ Android -> เปลี่ยนชื่อแพ็คเกจแอปพลิเคชัน (สิ่งนี้จะเปลี่ยนไฟล์ทั้งหมดในโฟลเดอร์ gen และใน AndroidManifest แต่จะไม่เปลี่ยนชื่อแพ็คเกจในโฟลเดอร์ src ดังนั้นฉันจึงทำตามขั้นตอนที่ 2)
ขั้นตอนที่ 2: ภายในโฟลเดอร์ src คลิกขวาที่ชื่อแพ็กเกจของคุณ -> Refactor -> เปลี่ยนชื่อ -> ป้อนชื่อใหม่ที่คุณป้อนในขั้นตอนที่ 1
เพียงเพื่อให้แน่ใจว่าตรวจสอบ AndroidManifest ว่ายังมีชื่อแพ็กเกจเก่าอยู่หรือไม่และแทนที่ด้วยชื่อใหม่ (ในกรณีของฉันอยู่ในแท็ก "ใช้สิทธิ์")
จากนั้นปิด Eclipse แล้วเปิดใหม่ ถอนการติดตั้งแอปออกจากอุปกรณ์ของคุณและติดตั้งอีกครั้งและทุกอย่างจะทำงานได้ดี
หวังว่านี่จะช่วยและประหยัดเวลาของคุณ
ตกลงนี่คือสิ่งที่ฉันต้องทำ:
ปัญหา: ฉันมีโปรเจ็กต์พื้นฐานที่ฉันต้องการใช้เป็นจุดเริ่มต้นสำหรับโปรเจ็กต์อื่น ๆ ที่จะอยู่ในพื้นที่ทำงานเดียวกันกับโปรเจ็กต์พื้นฐาน โครงการพื้นฐานอยู่ภายใต้การควบคุมของ GiT แล้วใน repo ในพื้นที่ของฉันเอง ถึงเวลาแล้วที่จะทำซ้ำโครงการพื้นฐาน "MyBaseApp" เพื่อเป็นจุดเริ่มต้นสำหรับ "MyKillerApp"
วิธีการแก้:
ดังนั้นฉันจึงมีโปรเจ็กต์ใหม่ที่ได้มาจากโปรเจ็กต์ฐานที่ไม่มีระบบการตั้งชื่อเหลืออยู่จากโปรเจ็กต์ฐานและมันอยู่ในที่เก็บ GiT ในพื้นที่ของตัวเอง
ต่อไปนี้ทำงานให้ฉันในคราส:
ไปที่ AndroidManifest ค้นหาและแทนที่ชื่อแพ็กเกจเก่าด้วยชื่อใหม่และอัปเดตทุกอย่างเมื่อทำการบันทึก ไปที่แพ็กเกจโปรเจ็กต์รูทของคุณจากนั้นกด F2 เขียนชื่อใหม่และเลือกกล่องกาเครื่องหมายอัพเดตการอ้างอิงและเปลี่ยนชื่อแพ็กเกจย่อย หลังจากนี้ทุกอย่างก็เป็นสีแดงในโปรเจ็กต์ (บ่นเกี่ยวกับการนำเข้า R สำหรับไฟล์ java ทุกไฟล์) เนื่องจากไม่ได้เปลี่ยนแท็กปิดของมุมมองที่กำหนดเองของฉันใน xmls เลย์เอาต์ หลังจากที่ฉันเปลี่ยนสิ่งเหล่านี้ด้วยตนเองทุกอย่างก็กลับมาเป็นปกติ อย่างนั้นแหละ.
การเปลี่ยนชื่อแอปพลิเคชัน - คู่มือฉบับสมบูรณ์
**A) for changing Just the application name
(App name which is displayed below icon)
in the Manifest.xml file, in <application tag,
android:label="YourAppName"
then do the same in All the <activity Tags
B) For changing EVERYTHING
(folder names, Package names, Refrences,app name, etc.)
*1) Renaming package names in gen folder and manifest.xml
Right Click on Your project
Android tools- Rename Application Package
*2) Renaming package names in src folder
Expand src folder, Click on package (Single click)
Press Alt+Shift+R
Check Update references and Rename subpackages
3) Renaming the app's main Folder (Optional)
click on the application's folder (Single click)
then Press Alt+Shift+R
4) Renaming application name- Refer "A)"**
เพียงรับFar Managerและค้นหาชื่อเก่า จากนั้นด้วยตนเอง (ใน Far Manager) แทนที่ทุกที่ น่าเศร้าที่นี่เป็นวิธีเดียวที่ใช้ได้ผล 100% ในกรณีที่เป็นไปได้
ฉันมีปัญหาใหญ่กับเรื่องนี้เช่นกัน
ฉันเปลี่ยนชื่อโปรเจ็กต์และแพ็กเกจผ่านการปรับโครงสร้างใหม่ แต่ทำให้แอปไม่มีประโยชน์ ฉันเปลี่ยนชื่อกลับเป็นแบบดั้งเดิมและใช้เครื่องมือ Android เพื่อเปลี่ยนชื่อแพ็คเกจและใช้งานได้ แต่โฟลเดอร์แพ็คเกจและคลาสของฉันมีชื่อเก่า
จากนั้นฉันปรับโครงสร้างโฟลเดอร์แพ็คเกจใหม่ ตอนนี้แอปจะไม่ทำงาน รายการของฉันยุ่งเหยิง มันเพิ่มชื่อตัวเรียกใช้งานของฉันเป็นสองเท่าเช่นcom.ronguilmet.app/com.ronguilmet.com.class
. ฉันแก้ไขแล้วและฉันต้องแก้ไขกิจกรรมทั้งหมดด้วยตนเอง