2013-07-10 61 views
70

Tôi muốn biết liệu nó có thể về mặt kỹ thuật hay không, không phải là liệu nó có dễ dàng hay không, để thay đổi tên gói thực tế của một ứng dụng Android có trên google play. Ý nghĩa của tên gói là tên sẽ hiển thị trong URL. Xin vui lòng, bất cứ ai có thể cho tôi biết lý do tại sao điều này là/là không thể? Cảm ơn!Có thể thay đổi tên gói của ứng dụng Android trên Google Play không?

+0

tên sẽ hiển thị trong URL .. đó là gì ?? cung cấp ví dụ ane – stinepike

+3

https://play.google.com/store/apps/details?id=this.package.name – igordcard

Trả lời

81

Từ Dianne Hackborn:

Những điều đó không thể thay đổi:

Rõ ràng nhất và hiển thị trong số này là "tên gói kê khai", tên duy nhất bạn cung cấp cho ứng dụng của mình trong tệp AndroidManifest.xml. Tên sử dụng quy ước đặt tên kiểu ngôn ngữ Java, với quyền sở hữu tên miền Internet giúp tránh xung đột tên. Ví dụ: vì Google sở hữu miền “google.com”, tên gói kê khai của tất cả các ứng dụng của chúng tôi phải bắt đầu bằng “com.google.” Điều quan trọng đối với nhà phát triển là tuân thủ quy ước này để tránh xung đột với các nhà phát triển khác.

Khi bạn xuất bản ứng dụng của mình dưới tên gói kê khai, đây là danh tính duy nhất của ứng dụng mãi mãi hơn. Chuyển sang một tên khác sẽ dẫn đến một ứng dụng hoàn toàn mới, một ứng dụng không thể được cài đặt làm bản cập nhật cho ứng dụng hiện có.

Thông tin thêm về những điều bạn không thể thay đổi here

Về câu hỏi của bạn về địa chỉ URL từ Google Play, gói được xác định có sự liên quan đến gói đầy đủ của ứng dụng bạn có trong AndroidManifest.xml tập tin của bạn. Thông tin thêm về định dạng liên kết của Google Play here.

+4

đáng nhắc đến, vì tôi đã xem xét việc này - bạn có thể thay đổi tên gói * của gói thực tế trong java * và về cơ bản ở mọi nơi khác ngoài tệp kê khai. một trong các biểu hiện là nhiều hơn hoặc ít độc lập của một ở khắp mọi nơi khác. – lahwran

+1

@lahwran Tôi gặp sự cố với việc xây dựng Android Studio đúng cách khi chúng không khớp - các vấn đề đã biến mất khi chúng xảy ra. – elBradford

+0

Thú vị, tôi tự hỏi nếu điều này đã thay đổi. Tôi sẽ không ngạc nhiên nếu nó làm việc một lần để làm cho họ khác nhau nhưng không bao giờ được hỗ trợ. – lahwran

1

Nếu bạn đang đề cập đến là com.example.app thì không có tôi hiểu bạn không thể nó sẽ được coi là một ứng dụng mới

39

Không, bạn không thể thay đổi nó, bạn sẽ phải tải lên gói mới dưới dạng ứng dụng mới. Hãy xem ứng dụng của Google Talk, tên của nó đã được đổi thành Hangouts, nhưng tên gói vẫn là com.google.android.talk. Bởi vì nó không phải là doable :) Chúc mừng.

14

Theo như tôi có thể nói những gì bạn có thể làm là "nghỉ hưu" ứng dụng trước đó của bạn và chuyển hướng tất cả người dùng đến ứng dụng mới của bạn. Quy trình này không được Google hỗ trợ (tsk ... tsk ...) nhưng có thể được triển khai theo bốn bước:

  1. Thay đổi ứng dụng hiện tại để hiển thị thông báo cho người dùng về nâng cấp và chuyển hướng chúng vào danh sách ứng dụng mới. Có lẽ một thông báo toàn màn hình sẽ thực hiện với một số văn bản thân thiện. Thông báo này có thể được kích hoạt từ xa một cách lý tưởng, nhưng một ngày giới hạn cũng có thể được sử dụng. (Nhưng sau đó đó sẽ là một thời hạn khó khăn cho bạn, vì vậy hãy cẩn thận ...;))

  2. Phát hành ứng dụng cũ đã sửa đổi như một bản nâng cấp, có thể với một số nâng cấp tính năng/sửa lỗi, để "làm dịu thỏa thuận "cho người dùng. Vẫn không có đảm bảo rằng tất cả người dùng sẽ nâng cấp, nhưng có lẽ phần lớn sẽ làm.

  3. Chuẩn bị ứng dụng mới với tên gói đã cập nhật và tải lên cửa hàng, sau đó kích hoạt tin nhắn trong ứng dụng cũ (hoặc chỉ đợi cho đến khi hết hạn, nếu đó là lựa chọn của bạn).

  4. Hủy xuất bản ứng dụng cũ trong Cửa hàng Play để tránh mọi lượt cài đặt mới. Hủy xuất bản ứng dụng không có nghĩa là người dùng đã cài đặt ứng dụng sẽ không có quyền truy cập vào ứng dụng đó nữa, nhưng ít nhất người dùng mới tiềm năng sẽ không tìm thấy ứng dụng đó trên thị trường.

Không lý tưởng và có thể gây phiền toái cho người dùng, đôi khi thậm chí không thể thực hiện do trạng thái/khả năng của ứng dụng. Nhưng kể từ khi Google để lại cho chúng tôi không có sự lựa chọn này là cách duy nhất để di chuyển người dùng của các ứng dụng cũ sang một ứng dụng mới "" (ngay cả khi nó không thực sự mới). Chưa kể rằng nếu bạn không có quyền truy cập vào các nguồn và chi tiết ký mã cho ứng dụng cũ thì tất cả những gì bạn có thể làm là hy vọng rằng người dùng sẽ nhận thấy ứng dụng mới ...

Nếu có ai tìm ra cách tốt hơn bằng mọi cách: xin hãy nói.

+4

Trong khi đây là cách tốt nhất để cài đặt ứng dụng mới, bạn phải nhớ rằng ứng dụng cũ sẽ vẫn nằm trên thiết bị - vì đây không phải là bản nâng cấp nhưng cài đặt mới (trừ khi người dùng gỡ cài đặt thủ công trước đó). Vì vậy, bạn sẽ có ứng dụng cũ cũng như ứng dụng mới trên thiết bị và có thể có cùng biểu tượng trình khởi chạy - gây nhầm lẫn cho người dùng về - cũ và mới. – Jasper

+0

Bạn nói đúng, rất tiếc là không thể xóa ứng dụng cũ như một phần của quá trình cài đặt ứng dụng mới. Tuy nhiên, có thể phát hiện sự hiện diện của ứng dụng cũ và cảnh báo người dùng xóa nó. Điều này có thể được thực hiện khi khởi động ứng dụng mới hoặc trong trình xử lý sự kiện cài đặt bài đăng (http://developer.android.com/reference/android/content/Intent.html#ACTION_PACKAGE_ADDED). – racs

+0

Ngoài ra, ứng dụng cũ có thể phát hiện sự hiện diện của ứng dụng mới và chỉ cần hiển thị bánh mì nướng hoặc như vậy, sau đó khởi động ứng dụng mới và thoát. –

3

Không, bạn không thể thay đổi tên gói trừ khi bạn đang okay với bố nó như là một ứng dụng mới trong Cửa hàng Play:

Sau khi xuất bản ứng dụng của bạn dưới tên gói manifest của nó, đây là bản sắc độc đáo của ứng dụng mãi mãi hơn. Chuyển sang một tên khác sẽ dẫn đến một ứng dụng hoàn toàn mới, một ứng dụng không thể được cài đặt làm bản cập nhật cho ứng dụng hiện có. Hướng dẫn sử dụng Android cũng xác nhận nó ở đây:

Thận trọng: Khi bạn xuất bản ứng dụng của mình, bạn không thể thay đổi tên gói. Tên gói xác định danh tính của ứng dụng của bạn, vì vậy nếu bạn thay đổi nó, thì nó được coi là một ứng dụng khác và người dùng phiên bản trước không thể cập nhật lên phiên bản mới. Nếu bạn đồng ý với việc xuất bản phiên bản mới của ứng dụng là một thực thể hoàn toàn mới, bạn có thể làm điều đó - chỉ cần xóa ứng dụng cũ khỏi Cửa hàng Play (nếu bạn muốn) và xuất bản ứng dụng mới với tên gói khác.

1

Không bao giờ, bạn không thể làm điều đó vì tên gói là tên định danh duy nhất cho ứng dụng của bạn .....

0

Toàn bộ hướng dẫn: https://developer.android.com/studio/build/application-id.html

Theo Blogs chính thức Android: https://android-developers.googleblog.com/2011/06/things-that-cannot-change.html

Chúng tôi có thể nói rằng:

  • Nếu tên gói kê khai đã thay đổi, ứng dụng mới sẽ được cài đặt cùng với ứng dụng cũ, do đó cả hai cùng tồn tại trên thiết bị của người dùng cùng một lúc.

  • Nếu những thay đổi giấy chứng nhận ký kết, cố gắng để cài đặt ứng dụng mới vào thiết bị sẽ thất bại cho đến khi phiên bản cũ là gỡ cài đặt.

Theo Google App danh sách kiểm tra cập nhật: https://support.google.com/googleplay/android-developer/answer/113476?hl=en

Cập nhật ứng dụng của bạn

Chuẩn bị APK của bạn

Khi bạn đã sẵn sàng để thay đổi của bạn APK, hãy đảm bảo cập nhật mã phiên bản của ứng dụng để người dùng hiện tại sẽ nhận được bản cập nhật của bạn .

Sử dụng danh sách kiểm tra sau đây để đảm bảo APK mới của bạn đã sẵn sàng để cập nhật người dùng hiện tại của bạn:

  • Tên gói của gói ứng dụng được cập nhật cần được giống như phiên bản hiện tại.
  • Mã phiên bản cần phải lớn hơn phiên bản hiện tại. Tìm hiểu thêm về cách phiên bản ứng dụng của bạn.
  • APK được cập nhật cần được ký bằng chữ ký giống với phiên bản hiện tại.

Để xác minh rằng APK bạn đang sử dụng chứng nhận tương tự như các phiên bản trước, bạn có thể chạy lệnh sau trên cả hai gói ứng dụng và so sánh kết quả:

$ jarsigner -verify -verbose -certs my_application.apk 

Nếu kết quả là giống hệt nhau, bạn' đang sử dụng cùng một khóa và sẵn sàng tiếp tục. Nếu kết quả khác nhau, bạn sẽ cần phải ký lại APK bằng khóa chính xác.

Tìm hiểu thêm về cách đăng các ứng dụng của bạn

Tải APK của bạn Sau khi APK của bạn đã sẵn sàng, bạn có thể tạo ra một phiên bản mới.

Các vấn đề liên quan