ฉันต้องการทราบว่าในทางเทคนิคเป็นไปได้หรือไม่ที่จะเปลี่ยนชื่อแพ็กเกจจริงของแอป Android ที่อยู่ใน Google Play เป็นไปได้หรือไม่ ความหมายของชื่อแพ็กเกจคือชื่อที่จะปรากฏใน URL ได้โปรดใครช่วยบอกฉันทีว่าทำไมถึงเป็น / ไม่ได้? ขอบคุณ!
ฉันต้องการทราบว่าในทางเทคนิคเป็นไปได้หรือไม่ที่จะเปลี่ยนชื่อแพ็กเกจจริงของแอป Android ที่อยู่ใน Google Play เป็นไปได้หรือไม่ ความหมายของชื่อแพ็กเกจคือชื่อที่จะปรากฏใน URL ได้โปรดใครช่วยบอกฉันทีว่าทำไมถึงเป็น / ไม่ได้? ขอบคุณ!
คำตอบ:
จาก Dianne Hackborn:
สิ่งที่ไม่สามารถเปลี่ยนแปลงได้:
สิ่งที่เห็นได้ชัดเจนที่สุดคือ "ชื่อแพ็กเกจ manifest" ซึ่งเป็นชื่อเฉพาะที่คุณตั้งให้กับแอปพลิเคชันของคุณใน AndroidManifest.xml ชื่อนี้ใช้หลักการตั้งชื่อแบบภาษา Java โดยการเป็นเจ้าของโดเมนอินเทอร์เน็ตจะช่วยหลีกเลี่ยงการชนกันของชื่อ ตัวอย่างเช่นเนื่องจาก Google เป็นเจ้าของโดเมน“ google.com” ชื่อแพ็กเกจ manifest ของแอปพลิเคชันทั้งหมดของเราควรขึ้นต้นด้วย“ com.google” สิ่งสำคัญสำหรับนักพัฒนาที่จะต้องปฏิบัติตามแบบแผนนี้เพื่อหลีกเลี่ยงความขัดแย้งกับนักพัฒนารายอื่น
เมื่อคุณเผยแพร่แอปพลิเคชันของคุณภายใต้ชื่อแพ็กเกจรายการนี่คือเอกลักษณ์เฉพาะของแอปพลิเคชันตลอดไป การเปลี่ยนไปใช้ชื่ออื่นส่งผลให้เกิดแอปพลิเคชันใหม่ทั้งหมดซึ่งไม่สามารถติดตั้งเป็นการอัปเดตแอปพลิเคชันที่มีอยู่ได้
ข้อมูลเพิ่มเติมเกี่ยวกับสิ่งที่คุณไม่สามารถเปลี่ยนแปลงได้ที่นี่
เกี่ยวกับคำถามของคุณเกี่ยวกับ URL จาก Google Play แพคเกจที่กำหนดไว้นั้นเชื่อมโยงกับแพ็คเกจที่มีคุณสมบัติครบถ้วนของแอปที่คุณมีในไฟล์AndroidManifest.xml เพิ่มเติมเกี่ยวกับของ Google Play รูปแบบการเชื่อมโยงที่นี่
ไม่คุณไม่สามารถเปลี่ยนแปลงได้คุณจะต้องอัปโหลดแพ็คเกจใหม่เป็นแอปใหม่ ดูแอปของ Google Talk
เปลี่ยนชื่อเป็นHangouts
แต่ชื่อแพ็คเกจยังcom.google.android.talk
อยู่ เพราะมันไม่สามารถทำได้ :) ไชโย
เท่าที่ฉันสามารถบอกได้ว่าคุณสามารถทำอะไรได้ก็คือ "เลิกใช้" แอปเดิมของคุณและเปลี่ยนเส้นทางผู้ใช้ทั้งหมดไปยังแอปใหม่ของคุณ Google ไม่รองรับขั้นตอนนี้ (tsk ... tsk ... ) แต่สามารถดำเนินการได้ในสี่ขั้นตอน:
เปลี่ยนแอปพลิเคชันปัจจุบันเพื่อแสดงข้อความถึงผู้ใช้เกี่ยวกับการอัปเกรดและเปลี่ยนเส้นทางไปยังรายชื่อแอปใหม่ อาจเป็นข้อความแบบเต็มหน้าจอที่ใช้กับข้อความที่เป็นมิตร ข้อความนี้สามารถเรียกใช้จากระยะไกลได้ตามต้องการ แต่สามารถใช้วันที่ตัดออกได้เช่นกัน (แต่นั่นจะเป็นเส้นตายที่ยากสำหรับคุณดังนั้นโปรดระวัง ... ;))
ปล่อยแอปเก่าที่ได้รับการแก้ไขเป็นการอัปเกรดอาจมีการอัปเกรดคุณสมบัติ / แก้ไขข้อบกพร่องบางอย่างด้วยเพื่อ "มอบข้อเสนอที่ดี" ให้กับผู้ใช้ ยังไม่มีการรับประกันว่าผู้ใช้ทั้งหมดจะอัปเกรด แต่ส่วนใหญ่อาจจะทำ
เตรียมแอปใหม่ของคุณด้วยชื่อแพ็กเกจที่อัปเดตแล้วอัปโหลดไปยังร้านค้าจากนั้นเรียกใช้ข้อความในแอปเก่า (หรือรอจนกว่าจะหมดอายุหากเป็นทางเลือกของคุณ)
ยกเลิกการเผยแพร่แอปเก่าใน Play Store เพื่อหลีกเลี่ยงการติดตั้งใหม่ การยกเลิกการเผยแพร่แอปไม่ได้หมายความว่าผู้ใช้ที่ติดตั้งแล้วจะไม่สามารถเข้าถึงแอปได้อีกต่อไป แต่อย่างน้อยผู้ใช้ใหม่ที่มีศักยภาพจะไม่พบแอปนี้ในตลาด
ไม่เหมาะและอาจสร้างความรำคาญให้กับผู้ใช้บางครั้งก็ไม่สามารถใช้งานได้เนื่องจากสถานะ / ความเป็นไปได้ของแอป แต่เนื่องจาก Google ไม่เหลือทางเลือกให้เรานี่เป็นวิธีเดียวที่จะย้ายผู้ใช้แอปเก่าไปยังแอป "ใหม่" (แม้ว่าจะไม่ใช่เรื่องใหม่ก็ตาม) ไม่ต้องพูดถึงว่าหากคุณไม่สามารถเข้าถึงแหล่งที่มาและรายละเอียดการลงนามรหัสสำหรับแอปเก่าสิ่งที่คุณทำได้คือหวังว่าผู้ใช้จะสังเกตเห็นแอปใหม่ ...
หากมีใครคิดหาวิธีที่ดีกว่านี้ได้โปรดบอก
ไม่คุณไม่สามารถเปลี่ยนชื่อแพ็กเกจได้เว้นแต่คุณจะยินยอมให้เผยแพร่เป็นแอปใหม่ใน Play Store:
เมื่อคุณเผยแพร่แอปพลิเคชันของคุณภายใต้ชื่อแพ็กเกจรายการนี่คือเอกลักษณ์เฉพาะของแอปพลิเคชันตลอดไป การเปลี่ยนไปใช้ชื่ออื่นส่งผลให้เกิดแอปพลิเคชันใหม่ทั้งหมดซึ่งไม่สามารถติดตั้งเป็นการอัปเดตแอปพลิเคชันที่มีอยู่ได้ คู่มือ Android ยืนยันเช่นกันที่นี่:
ข้อควรระวัง: เมื่อคุณเผยแพร่แอปพลิเคชันของคุณคุณจะไม่สามารถเปลี่ยนชื่อแพ็กเกจได้ ชื่อแพ็กเกจกำหนดข้อมูลประจำตัวของแอปพลิเคชันของคุณดังนั้นหากคุณเปลี่ยนชื่อแพ็กเกจจะถือว่าเป็นแอปพลิเคชันอื่นและผู้ใช้เวอร์ชันก่อนหน้าจะไม่สามารถอัปเดตเป็นเวอร์ชันใหม่ได้ หากคุณไม่พอใจที่จะเผยแพร่แอปเวอร์ชันใหม่เป็นเอนทิตีใหม่ทั้งหมดคุณทำได้แน่นอนเพียงแค่ลบแอปเก่าออกจาก Play Store (หากคุณต้องการ) และเผยแพร่แอปใหม่โดยใช้ชื่อแพ็กเกจอื่น
หากคุณกำลังอ้างถึง com.example.app ไม่ฉันเข้าใจว่าคุณไม่สามารถพิจารณาได้ว่าเป็นแอปใหม่
ไม่เลยคุณไม่สามารถทำได้เนื่องจากชื่อแพ็กเกจเป็นตัวระบุชื่อเฉพาะสำหรับแอปของคุณ .....
คู่มือฉบับสมบูรณ์: https://developer.android.com/studio/build/application-id.html
ตามบล็อกอย่างเป็นทางการของ Android: https://android-developers.googleblog.com/2011/06/things-that-cannot-change.html
เราสามารถพูดได้ว่า:
หากชื่อแพ็กเกจ manifest มีการเปลี่ยนแปลงแอปพลิเคชันใหม่จะถูกติดตั้งควบคู่ไปกับแอปพลิเคชันเก่าดังนั้นทั้งสองจึงอยู่ร่วมกันบนอุปกรณ์ของผู้ใช้ในเวลาเดียวกัน
หากใบรับรองการลงนามเปลี่ยนแปลงการพยายามติดตั้งแอปพลิเคชันใหม่บนอุปกรณ์จะล้มเหลวจนกว่าจะถอนการติดตั้งเวอร์ชันเก่า
ตามรายการตรวจสอบการอัปเดต Google App: https://support.google.com/googleplay/android-developer/answer/113476?hl=th
อัปเดตแอปของคุณ
เตรียม APK ของคุณ
เมื่อคุณพร้อมที่จะเปลี่ยนแปลง APK ของคุณอย่าลืมอัปเดตรหัสเวอร์ชันของแอปด้วยเพื่อให้ผู้ใช้ปัจจุบันได้รับการอัปเดตของคุณ
ใช้รายการตรวจสอบต่อไปนี้เพื่อให้แน่ใจว่า APK ใหม่ของคุณพร้อมที่จะอัปเดตผู้ใช้ปัจจุบันของคุณ:
ในการตรวจสอบว่า APK ของคุณใช้การรับรองเดียวกันกับเวอร์ชันก่อนหน้าคุณสามารถเรียกใช้คำสั่งต่อไปนี้ใน APK ทั้งสองและเปรียบเทียบผลลัพธ์:
$ jarsigner -verify -verbose -certs my_application.apk
หากผลลัพธ์เหมือนกันแสดงว่าคุณกำลังใช้คีย์เดียวกันและพร้อมที่จะดำเนินการต่อ หากผลลัพธ์แตกต่างกันคุณจะต้องลงนาม APK อีกครั้งด้วยคีย์ที่ถูกต้อง
เรียนรู้เพิ่มเติมเกี่ยวกับการลงนามแอปพลิเคชันของคุณ
อัปโหลด APK ของคุณ เมื่อAPKของคุณพร้อมแล้วคุณสามารถสร้างรุ่นใหม่ได้