# 개요
안드로이드에서 APK파일은 패키지 이름을 보고 이 앱이 같은 앱인지 다른 앱인지 판단한다.
물리적으로 두 개의 프로젝트를 같은 패키지 이름으로 생성 또는 복사했다고 가정했을 때,
하나의 장치에 설치를 하게되면 패키지 이름이 같기 때문에 같은 앱으로 인식해서 한 개의 앱이 설치되고, 업데이트를 진행할 것이다.
만약 패키지 이름이 다르다면? 서로 다른 앱으로 인식해서 두 개의 앱이 설치되는 것이다.
이 방법은 Gradle
을 이용하면 쉽게 구현할 수 있다.
# 방법
먼저 테스트를 진행하기 위해 Android Studio에서 TestProject
라는 프로젝트를 하나 생성했다.
컴파일해서 에뮬레이터로 실행해보면, 앱이 설치된 것을 볼 수 있다.
이제 build.gradle(Module: app)
파일에서 프로젝트 이름을 변경하면된다.
아이디를 변경하게 되면 Sync Now
라는 메시지가 뜨는데
클릭을 해서 동기화한다.
이후에 아래쪽에 보면 Terminal
을 실행할 수 있는데,
혹시나 위 화면처럼 Terminal
이 보이지 않으면 다음 메뉴에서 실행할 수 있다.
View>Tool Windows>Terminal
다음의 명령어를 입력한다.
> gradlew assembleDebug
명령어에 대해서는 링크 참조
다음의 프로젝트 경로(TestProject > app > build > outputs > apk > debug
)로 이동해보면,
app-debug.apk
파일이 생성된 것을 볼 수 있다.
이 파일을 에뮬레이터에 다운로드 받고 실행해보면,
업데이트 처리가 되지 않고, 두 개의 APK파일이 생성된 것을 볼 수 있다.