반응형

아래 내용은 안드로이드를 기준으로 테스트하였습니다.

react-native-rename : 

 

1. react-native-rename library를 설치한다.

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

 

2. 작업중인 코드에서 새로운 branch를 생성한다. (실패할 경우를 대비)

git checkout -b rename-app

 

3. 아래 명령어로 rename한다 <newName>에 원하는 name 입력

react-native-rename <newName>

 

4. 아래 파일들이 변경됩니다.

react-native-rename testRename
\android\app\src\main\res\values\strings.xml MODIFIED
\index.js MODIFIED
\package.json MODIFIED
\app.json MODIFIED
\android\settings.gradle MODIFIED
\ios\Podfile MODIFIED
\app.json MODIFIED
\android\app\build.gradle MODIFIED
\android\app\src\main\AndroidManifest.xml MODIFIED

Done removing previous bundle directory.
Done removing builds.
APP SUCCESSFULLY RENAMED TO "testRename"!
Podfile has been modified, please run "pod install" inside ios directory.
Please make sure to run "watchman watch-del-all" and "npm start --reset-cache" before running the app.

5. 추가로 아래 작업을 더 진행해야 합니다. (자동으로 바뀌지 않는 부분을 직접 수정)

5-1. 아래 파일들을 새로 생긴 [새로운Rename] 폴더 하위에 이동시켜줍니다.

\android\app\src\main\java\com\[이전Name]\MainActivity.java

\android\app\src\main\java\com\[이전Name]\MainApplication.java



\android\app\src\main\java\com\[새로운Name]\MainActivity.java

\android\app\src\main\java\com\[새로운Name]\MainApplication.java

 

5-2. 그리고 [이전Name]인 빈 폴더는 삭제합니다.

5-3. MainActivity.java, MainApplication.java 파일 안의 package 경로를 변경시켜줍니다.

package com.[이전Name];

package com.[새로운Name];

5-4. MainActivity.java 안에 값을 변경시켜줍니다.

@Override
  protected String getMainComponentName() {
    return "[이전Name]";
  }
@Override
  protected String getMainComponentName() {
    return "[새로운Name]";
  }

5-5. Androidmanifest.xml 파일에서 아래 내용을 변경합니다.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="[이전Name]">
  ...
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
  package="[새로운Name]">
  ...

 

 

[Trouble Shooting]

1. 위의 작업 후 실행 시 에러가 발생한다면 android 경로로 진입하여 아래 명령어 실행 후 다시 실행해보시기 바랍니다.

cd android
gradlew clean
cd ..
npm run android

2. 그래도 에러가 발생한다면 이전 APP을 디바이스에서 삭제 후 다시 실행시켜보시기 바랍니다.

반응형

+ Recent posts