Google Play'de bir Android uygulamasının paket adını değiştirmek mümkün müdür?


119

Google Play'de bulunan bir Android uygulamasının gerçek paket adını değiştirmenin teknik olarak mümkün olup olmadığını, kolay olup olmadığını bilmek istiyorum. Paket adı ile kastettiğim, URL'de görünecek addır. Lütfen, biri bana bunun neden mümkün olduğunu / olmadığını söyleyebilir mi? Teşekkürler!


URL’de görünecek ad .. bu nedir? ane örneği ver
stinepike

Yanıtlar:


126

Dianne Hackborn'dan:

Değişemeyen Şeyler:

Bunlardan en açık ve görünür olanı, AndroidManifest.xml dosyasında uygulamanıza verdiğiniz benzersiz ad olan "bildirim paket adı" dır. Ad, İnternet etki alanı sahipliğinin ad çakışmalarını önlemeye yardımcı olduğu Java dili stilinde bir adlandırma kuralı kullanır. Örneğin, Google "google.com" etki alanına sahip olduğundan, tüm uygulamalarımızın manifest paket adları "com.google" ile başlamalıdır. Geliştiricilerin, diğer geliştiricilerle çatışmalardan kaçınmak için bu kurala uyması önemlidir.

Uygulamanızı manifest paket adı altında yayınladığınızda, bu, uygulamanın sonsuza kadar benzersiz kimliğidir. Farklı bir isme geçiş, tamamen yeni bir uygulama ile sonuçlanır, mevcut uygulamaya bir güncelleme olarak yüklenemeyen bir uygulama.

Burada değiştiremeyeceğiniz şeyler hakkında daha fazla bilgi

Google Play'deki URL'deki sorunuzla ilgili olarak, orada tanımlanan paket, AndroidManifest.xml dosyanızdaki uygulamanın tam nitelikli paketine bağlıdır . Google Play'in bağlantı biçimleriyle ilgili daha fazla bilgiyi burada bulabilirsiniz .


7
Bahsetmeye değer, etrafa baktığımdan beri - gerçek paketin paket adını java'da ve temelde manifestin dışında her yerde değiştirebilirsiniz. manifestteki biri, diğer her yerdeki olandan aşağı yukarı bağımsızdır.
lahwran

3
@lahwran Android Studio oluşturmayla ilgili düzgün bir şekilde eşleşmediklerinde sorunlarla karşılaştım - sorunlar eşleştiklerinde ortadan kalktı.
elBradford

İlginç, bunun değişip değişmediğini merak ediyorum. Onları farklı kılmak için bir kez çalıştıysa da asla desteklenmediyse şaşırmam.
lahwran

1
@Voicu, ilk derlemeyi beta modunda yüklediysek ve yayın modunda paketi değiştirmek istemezsek paket adını değiştirmek mümkün mü
Tejas Pandya

Öyleyse, aynı paket adına sahip ücretsiz bir sürümle birlikte ücretli bir sürümüm varsa ne olur? her ikisi de farklı uygulamalar olarak oyun mağazasında
Femn Dharamshi

71

Hayır, sadece değiştiremezsiniz, yeni bir paketi yeni bir uygulama olarak yüklemeniz gerekir. Google'ın uygulamasına bir göz atın, Talkadı olarak değiştirildi Hangouts, ancak paket adı hala com.google.android.talk. Çünkü yapılamaz :) Şerefe.



Play Store'da bulunan andorid uygulama paket adında tek harfi büyük harften küçük harfe dönüştürmek mümkün mü?
Nilesh Panchal

23

Söyleyebileceğim kadarıyla, önceki uygulamanızı "kullanımdan kaldırmak" ve tüm kullanıcıları yeni uygulamanıza yönlendirmek. Bu prosedür Google tarafından desteklenmemektedir (tsk ... tsk ...), ancak dört adımda uygulanabilir:

  1. Kullanıcılara yükseltme hakkında bir mesaj göstermek için mevcut uygulamayı değiştirin ve onları yeni uygulama listesine yönlendirin. Muhtemelen tam ekran bir mesaj, bazı dostane metinlerle işe yarar. Bu mesaj ideal olarak uzaktan tetiklenebilir, ancak bir son tarih de kullanılabilir. (Ama o zaman bu sizin için zor bir son tarih olacak, bu yüzden dikkatli olun ...;))

  2. Değiştirilmiş eski uygulamayı, kullanıcılara "anlaşmayı tatlandırmak" için, belki bazı özellik yükseltmeleri / hata düzeltmeleriyle birlikte, bir yükseltme olarak yayınlayın. Yine de tüm kullanıcıların yükseltme yapacağına dair bir garanti yoktur, ancak muhtemelen çoğunluk yapacaktır.

  3. Yeni uygulamanızı güncellenmiş paket adıyla hazırlayın ve mağazaya yükleyin, ardından eski uygulamada mesajı tetikleyin (veya seçiminiz buysa, süresinin dolmasını bekleyin).

  4. Yeni yüklemelerden kaçınmak için eski uygulamayı Play Store'da yayından kaldırın. Bir uygulamanın yayından kaldırılması, onu zaten yüklemiş olan kullanıcıların artık ona erişemeyeceği anlamına gelmez, ancak en azından potansiyel yeni kullanıcılar onu piyasada bulamayacaktır.

İdeal değildir ve kullanıcılar için can sıkıcı olabilir, hatta bazen uygulamanın durumu / olanakları nedeniyle uygulanması imkansızdır. Ancak Google bize seçenek bırakmadığından, eski uygulamaların kullanıcılarını "yeni" bir uygulamaya taşımanın tek yolu budur (gerçekten yeni olmasa bile). Eski uygulamanın kaynaklarına ve kod imzalama ayrıntılarına erişiminiz yoksa, yapabileceğiniz tek şey, kullanıcıların yeni uygulamayı fark edeceklerini ummaktır.

Herhangi biri elbette daha iyi bir yol bulduysa: lütfen söyleyin.


5
Bu, yeni uygulamayı yüklemek için yapılabilecek en iyisi olsa da, eski uygulamanın cihazda kalmaya devam edeceği unutulmamalıdır - çünkü bu gerçekten bir yükseltme değil, yeni bir kurulumdur (kullanıcı öncekini manuel olarak kaldırmadıkça). Böylece, cihazda ve muhtemelen aynı başlatıcı simgeleriyle eski uygulamanızın yanı sıra yeni uygulamaya sahip olacaksınız - kullanıcının kafasını karıştıracak - eski ve yenisi.
Jasper

1
Haklısınız, maalesef eski uygulamayı yeni uygulamanın yükleme işleminin bir parçası olarak kaldırmak mümkün değil. Ancak, eski uygulamanın varlığını tespit etmek ve kullanıcıyı onu kaldırması için uyarmak mümkün olabilir. Bu, yeni uygulamanın başlangıcında veya yükleme sonrası olay işleyicisinde ( developer.android.com/reference/android/content/… ) yapılabilir.
racs

1
Ayrıca, eski uygulama yenisinin varlığını algılayabilir ve basitçe bir tost falan gösterebilir, ardından yenisini başlatabilir ve çıkabilir.
Moritz

6

Hayır, Play Store'da yeni bir uygulama olarak yayınlamaktan memnun değilseniz paket adını değiştiremezsiniz:

Uygulamanızı manifest paket adı altında yayınladığınızda, bu, uygulamanın sonsuza kadar benzersiz kimliğidir. Farklı bir isme geçiş, tamamen yeni bir uygulama ile sonuçlanır, mevcut uygulamaya bir güncelleme olarak yüklenemeyen bir uygulama. Android kılavuzu burada da onaylamaktadır:

Dikkat: Uygulamanızı yayınladıktan sonra paket adını değiştiremezsiniz. Paket adı, uygulamanızın kimliğini tanımlar, bu nedenle onu değiştirirseniz, farklı bir uygulama olarak kabul edilir ve önceki sürümün kullanıcıları yeni sürüme güncelleme yapamaz. Uygulamanızın yeni sürümünü tamamen yeni bir varlık olarak yayınlamakta sorun yoksa, elbette yapabilirsiniz - eski uygulamayı Play Store'dan kaldırın (isterseniz) ve farklı paket adıyla yeni bir tane yayınlayın.


2

Com.example.app'ye atıfta bulunuyorsanız, hayır, bunun yeni bir uygulama olarak kabul edileceğini anlamıyorum


2

Paket adı, uygulamanız için benzersiz ad Tanımlayıcısı olduğundan bunu asla yapamazsınız .....


1

Kılavuzun tamamı: https://developer.android.com/studio/build/application-id.html

Android resmi Bloglarına göre: https://android-developers.googleblog.com/2011/06/things-that-cannot-change.html

Şunu söyleyebiliriz:

  • Manifest paket adı değiştiyse, yeni uygulama eski uygulamanın yanına yüklenecek ve böylece ikisi de kullanıcının cihazında aynı anda var olacaktır.

  • İmza sertifikası değişirse, cihaza yeni uygulamanın yüklenmeye çalışılması, eski sürüm kaldırılana kadar başarısız olacaktır.

Google Uygulama Güncelleme kontrol listesine göre: https://support.google.com/googleplay/android-developer/answer/113476?hl=tr

Uygulamalarınızı güncelleyin

APK'nızı hazırlayın

APK'nızda değişiklik yapmaya hazır olduğunuzda, mevcut kullanıcıların güncellemenizi alması için uygulamanızın sürüm kodunu da güncellediğinizden emin olun.

Yeni APK'nızın mevcut kullanıcılarınızı güncellemeye hazır olduğundan emin olmak için aşağıdaki kontrol listesini kullanın:

  • Güncellenen APK'nın paket adı, mevcut sürümle aynı olmalıdır.
  • Sürüm kodunun mevcut sürümden daha büyük olması gerekir. Uygulamalarınızın sürümlerini belirleme hakkında daha fazla bilgi edinin.
  • Güncellenen APK, mevcut sürümle aynı imzayla imzalanmalıdır.

APK'nızın önceki sürümle aynı sertifikayı kullandığını doğrulamak için aşağıdaki komutu her iki APK'da çalıştırabilir ve sonuçları karşılaştırabilirsiniz:

$ jarsigner -verify -verbose -certs my_application.apk

Sonuçlar aynıysa, aynı anahtarı kullanıyorsunuz ve devam etmeye hazırsınız. Sonuçlar farklıysa, APK'yi doğru anahtarla yeniden imzalamanız gerekecektir.

Uygulamalarınızı imzalama hakkında daha fazla bilgi edinin

APK'nızı yükleyin APK'nız hazır olduğunda yeni bir sürüm oluşturabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.