[플러터] 앱 패키지 이름 변경하기

소요 시간: 5분

앱을 출시하려면 패키지를 반드시 변경해야 한다. Android와 iOS 두 플랫폼 각각 패키지 이름을 설정하는 방식이 다르다. 각각의 과정을 하나씩 진행했다.


앱 패키지가 하는 역할

패키지는 애플리케이션을 식별하는 고유한 요소다.

마치 주민번호와 같다. 각 사람들에게 단 하나의 주민번호가 있고 그 번호로 개인을 식별하듯이 앱스토어와 플레이 스토어는 패키지로 앱을 식별하고 관리한다.

몇 가지 주의해야 할 점이 있다. 패키지는 고유 식별자이기 때문에 단 하나의 고유한 값만 입력해야 한다. 다른 앱과 중복되면 앱을 배포할 수 없다.

또한 패키지를 변경하면 기존의 앱을 업데이트할 수 없다. 다른 앱으로 인식되기 때문이다.


Android 패키지 이름 변경

build.gradle 파일 수정

첫 번째로 수정한 파일은 Android의 build.gradle이다. android/app/build.gradle에서 namespace와 applicationId 값을 수정한다.

기본 값이 "com.example.app"이다. 이를 "com.newpackage.name"으로 변경한다.

코드:

android {
    namespace "com.newpackage.name"

    defaultConfig {
        applicationId "com.newpackage.name"
    }
}

변경한 후 문제 없이 반영되는지 확인하기 위해 꼼꼼하게 확인하자.

MainActivity.kt 파일 수정

다음은 MainActivity.kt 파일의 패키지 이름을 업데이트한다. 이 파일은 android/app/src/main/kotlin/com/example/app/MainActivity.kt에 있다. 상단에 있는 패키지 선언 부분을 새로운 패키지 이름으로 변경한다.

package com.newpackage.name

AndroidManifest.xml 파일 수정

마지막으로 수정한 파일은 AndroidManifest.xml이다. debug, main, profile 각 폴더의 매니페스트 파일에서 package 값을 찾아 "com.newpackage.name"으로 변경하면 된다.

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.newpackage.name">


iOS 패키지 이름 변경

iOS는 Xcode에서 설정을 변경해야 한다.

1. [project_folder]/ios/Runner.xcworkspace를 실행해 Xcode를 연다.

2. 프로젝트의 TARGETS에서 Runner를 선택한다.

3. General 탭에서 Bundle Identifier 항목을 보면 끝에 오른쪽 화살표가 작게 있다. 이 아이콘을 클릭한다.

4. Bundle Identifier를 수정하는 화면이 나타난다. 여기서 새 패키지 이름을 입력한다.


마무리 작업

패키지 이름을 변경한 후에는 문제가 발생할 수 있으니 꼭 테스트가 필요하다. Android와 iOS 각각에서 앱을 빌드하고 테스트했으며, 에뮬레이터와 실제 기기에서 정상적으로 동작하는지 체크해본다.

플러터 리스트