React Native projesini yeniden mi adlandırıyorsunuz?


84

Bir React Native projesini yeniden adlandırmak için nelerin değiştirilmesi gerektiğine dair talimatlar var mı? MyAppIOS satırlarında bir şey olarak adlandırılan bir uygulamam var ve onu basitçe MyApp olarak yeniden adlandırmak istiyorum (artık Android desteği yok)

Yanıtlar:


66

Bunu android için yapma şeklim (hacky, ama işe yarıyor) sadece uygulamadaki dize app_name alanını değiştirdi

android/app/src/main/res/values/strings.xml

Yüklü android uygulamanızın adını, değer olarak ne koyarsanız değiştirin.


1
Çoğu kişi bunu anlamalı, ancak bilginize bakın, bu yanıt YALNIZCA ANDROID içindir .
chapeljuice

84

Ad özniteliğini içinde değiştirebilir package.json, çalıştırabilir react-native upgradeve sadece android / ios dosyalarının üzerine yazmasına izin verebilirsiniz. Ancak kaydedilmemiş kod varsa dizin dosyalarınızın üzerine yazmayın.

Ardından Appregistry satırınızı

AppRegistry.registerComponent('MyAppIOS', () => MyAppIOS);

Kime:

AppRegistry.registerComponent('MyApp', () => MyApp);

1
Ayrıca ana sınıfı da buna göre yeniden adlandırmak zorunda kaldım: class MyApp genişliyor Bileşeni {.... vb.
Per Quested Aronsson

4
bu eski MyAppIOS dosyalarını silmez, bu nedenle şunları da yapmak isteyeceksiniz: $ rm -rf android/app/src/main/java/com/myappios && rm -rf ios/MyAppIOS*
Neil Sarkar

6
Bunun react-native upgradesizin react-native'nizi de yükselteceğini düşünüyorum, dikkatli olun çünkü bu, bağımlılıklarınızla ilgili bir şeyi bozabilir.
Herlon Aguiar

Web'e dağılmış bir dizi ek adım bulduk - tam bir liste yayınladık (ve çekme isteklerini kabul ediyoruz
Freewalker

42

Benim için birkaç kez işe yarayan şey aşağıda anlatılmıştır;

  • İlk olarak, adı değiştirilecek uygulamanızın bulunduğu dizini kopyalayın. Ve yeni klonlanmış dizininize gidin.
  • index.ios/android.jsParametre olarak verilen dosyadaki adı olarak değiştirin AppRegistry.
  • Adı ve sürümü uygun şekilde değiştirin package.json
  • Eski uygulamanızdan kalan klasörleri /iosve varsa dosyayı silin ./androidapp.json
  • yeniden $react-native upgradeoluşturmak /iosve /androidklasörleri çalıştırmak için çalıştırın .
  • $react-native linkherhangi bir harici bağımlılık için çalıştırın .
  • sonunda koş $react-native run-iosya da istediğin herhangi bir şey.

1
React native'in daha yeni sürümleri, doğru hatırlıyorsam app.json'daki değerleri de değiştirirsiniz.
Christopher Bradshaw

4
Evet, 0.41 react-native teklifinden sonra yerel klasörleri yeniden oluşturmanın resmi bir yolu /iosve /android. Daha fazlası için kontrol edebilirsinizreact-native eject
milkersarac


27

İOS için, xcodeproj ayarlarını değiştirmenin yolu da mevcuttur.

<Uygulamanızın adı> -> Info.plist'i gösterin ve Bundle görünen adını ekleyin .

iOS uygulama adını değiştirmek:

görüntü açıklamasını buraya girin



8
  1. App.json'daki displayName'i yeni adla güncelleyin
  2. Kök projede ios / ve android / dizinleri silin
  3. Çalıştır komut satırında:

    react-native eject
    react-native link 
    

7

Ayrıca npm paketine de göz atmak isteyebilirsiniz ( react-native-rename ):

Kullanım:

react-native-rename <newName>

Projem için iyi çalışıyor.


Uygulamamda, bu komut java dosyalarımı android / app / src / main / java / com / appname altında siler!
Johncy

UYARI: Bu kitaplığı kullanmayın. projenizi mahvedecek. Bunu asla kullanmayın.
MRSafari

6

react-native-renameNpm paketini kullanabilirsiniz .

npm install react-native-rename
react-native-rename [newName]

https://www.npmjs.com/package/react-native-rename


1
Bir çözüme bağlantı memnuniyetle karşılanır, ancak lütfen cevabınızın o olmadan yararlı olduğundan emin olun: Bağlantının etrafına bağlam ekleyin, böylece diğer kullanıcılarınız bunun ne olduğu ve neden orada olduğu konusunda fikir sahibi olurlar, ardından sayfanın en alakalı bölümünü alıntılayın ' hedef sayfanın mevcut olmaması durumunda yeniden bağlanma. Bir bağlantıdan biraz daha fazla olan cevaplar silinebilir.
Filnor

Ayrıca, bu yalnızca İngilizce bir site olduğu için yanıtlarınızı yalnızca İngilizce yazmalısınız. Portekizce için lütfen pt.stackoverflow.com
Filnor

3
UYARI: Bu kitaplığı kullanmayın. projenizi mahvedecek. Bunu asla kullanmayın.
MRSafari

@MRSafari -1, Çıkarılmış (expo dışı) bir projede benim için iyi çalıştı
Chris Sherriff

@MRSafari Bu yüzden git var?
iRohitBhatia


5
  1. IOS uygulaması için xcodeproj ayarlarında değişiklik de mevcuttur.

Info.plistProje directory/ios/{appname}dizininizden dosyayı açın ve Bundle görünen adını değiştirin.

<key>CFBundleDisplayName</key>
<string>NEW APP NAME</string>
  1. Android uygulaması için proje dizininizin android klasörünü değiştirebilirsiniz.

    cd android/app/src/main/res/values/

strings.xmldosyayı açın ve uygulamanızın adını değiştirin

 <string name="app_name">NEW APP NAME</string>

4

Burada belirtildiği gibi ( https://github.com/facebook/react-native/issues/4227 ), Bundle display name@janus_wel'in dediği gibi bir anahtar eklemenize gerek yoktur.

Sadece güncelleyebilirsiniz Bundle namegelen $(PRODUCT_NAME)etmek My App.


Benim için işe yarayan tek çözüm bu. Sonra basitçe güncellenmiş CUSTOM_DISPLAY_NAME (debug ve serbest bırakılması için farklı uygulama adları desteklemek için) olarak adlandırılan bir yapı ayarı eklenmiş Bundle nameolması$(CUSTOM_DISPLAY_NAME)
Kevin Cooper

1
  • Her şeyden önce, adını değiştirmek istediğiniz uygulamanızın bulunduğu adresi kopyalayın. Ve yeni klonlanmış dizininize gidin.

  • AppRegistry'e parametre olarak verilen index.ios / android.js dosyasındaki adı değiştirin.

  • eski uygulamanızdan ve eski uygulamanızdan kalan package.json remove / ios ve / android klasörlerinde adı ve sürümü uygun şekilde güncelleyin.

  • / ios ve / android klasörlerini yeniden oluşturmak için $ react-native yükseltmeyi çalıştırın. ve herhangi bir harici bağımlılık için $ react-native bağlantısını çalıştırın.

  • son olarak, $ react-native run-ios veya başka bir şey çalıştırın.


1

Durumda Çözümlerden hiçbiri sizin için işe yaramadı veya bir şeyi denemek uygulamanızı bozdu. Bu temellere gidiyor.

  1. Uygulamanızı değiştirmek istediğiniz adla yeni bir react-native proje başlatın.
  2. Bağımlılık listesini önceki projenizden yenisinin package.json'a kopyalayın
  3. Eski proje dosyalarını kopyalayın, aynı yapıyı koruduğunuzdan emin olun.
  4. Çalıştırmak npm install
  5. Çalıştırmak react-native run-android

Bu seni tekrar yoluna sokmalı


0

Benim için işe yarayan çözüm, önce react-native projenizin klasörünün adını değiştirip ardından

npm install react-native-rename

react-native-rename newName

Benim için çalışıyor


0

React-native uygulamasını tek bir komutla react-native-rename ile yeniden adlandırın

Kurulum

yarn global add react-native-rename veya npm install react-native-rename -g

Kullanım, proje dizininde aşağıdaki komutu çalıştırın.

react-native-rename <newName>

Misal:

react-native-rename "Travel App"


0

React Native 1'de Proje / uygulama yeniden adlandırılırken aşağıdaki adımlar izlenmelidir. Yeni bir klasör testi oluşturun

  1. Demodaki tüm dosyaları test klasörüne kopyalayıp yapıştırın

  2. Package.json dosyasındaki adı değiştirin

  3. Package-lock.json dosyasındaki adı değiştirin

  4. App.json dosyasındaki adı değiştirin

  5. / İos ve / android klasörlerini silin

  6. Yeniden / ios ve / android klasörleri oluşturmak için react-native eject komutunu çalıştırın

  7. herhangi bir harici bağımlılık için react-native bağlantısını çalıştırın.

  8. son olarak react-native run-android komutunu kullanarak uygulamanızı çalıştırın.

Daha fazla bilgi formu https://youtu.be/_lgH9LXf818 adresini ziyaret edin

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.