태그 보관물: android

Unreal 안드로이드 배포판 패키지 이름 등록

개요

구글 플레이에 앱을 올릴 때 제한이 없던 이전과 달리 패키지 이름을 먼저 등록해야 합니다. 기존 앱들은 자동으로 추가되었지만 신규 앱은 따로 등록해야 합니다. Unreal 에서 안드로이드 배포판을 등록할 때 패키지 이름을 등록하는 과정을 알아보겠습니다.

패키지 이름 결정 및 Unreal 에서 APK 파일 생성

먼저 패키지 이름을 결정합니다. com.yourcompany.yourapp 을 예로 진행해 보도록 하겠습니다. jks 파일을 Android Studio 를 이용하거나 다른 방법으로 생성합니다. Unreal 에서 다음과 같이 설정 합니다.

Project Settings > Packaging > Project

Build Configuration > Shipping, For Distribution 항목 선택

Project Settings > Packaging > Project 항목 설정
Project Settings > Packaging > Project 항목 설정

Project Settings > Platforms > Android

Package game data inside .apk? 항목을 선택해야 APK 파일이 생성됩니다.

Project Settings > Platforms > Android 항목 설정
Project Settings > Platforms > Android 항목 설정

Key Store 항목에 생성한 jks 파일명을 지정하고 비밀번호를 입력합니다.

위와 같이 설정 후 APK파일을 생성합니다. 반드시 배포용으로 생성해야 합니다. 그렇지 않으면 SHA-256 digest 키가 일치하지 않아 패키지 이름 등록이 불가능 합니다.

키 정보 확인

생성된 APK파일을 대상으로 다음과 같이 명령어를 입력하면 키 정보를 확인할 수 있습니다.

apksigner verify –print-certs yourapp.apk

키 정보
키 정보

SHA-256 digest 키 정보를 복사해 놓습니다.

Android 개발자 인증에 등록

이제 구글 플레이 개발자 콘솔에 접속해서 Android 개발자 인증 버튼을 클릭합니다. 패키지 이름 등록 버튼을 클릭하면 다음과 같이 나타납니다.

패키지 이름 등록
패키지 이름 등록

여기에 패키지 이름을 입력합니다(ex:com.yourcompany.yourapp)

임시 상태로 등록 되는데 링크를 클릭해 보면 다음과 같이 키 추가 화면이 나타납니다.

키 추가 화면
키 추가 화면

키 추가 버튼을 클릭하면 다음 화면이 나타납니다. 이전에 복사해 두었던 SHA-256 digest 항목을 그대로 입력합니다.

SHA-256 digest 키 추가
SHA-256 digest 키 추가

키를 추가하면 다음과 같은 화면이 나타납니다.

등록된 지문 정보
등록된 지문 정보

우측의 확인 링크를 클릭하면 APK 파일을 안내와 같이 생성해서 올리라고 나타납니다.

APK 서명 및 업로드 안내 화면
APK 서명 및 업로드 안내 화면

패키지 이름 확인 용 APK 파일 생성

Android Studio 를 실행해서 아무 것도 없는 프로젝트를 생성합니다. Unreal에서 지정한 패키지 이름과 동일하게 생성해야 합니다. 패키지 이름이 동일하게 생성되었다면 app/src/main/assets/adi-registration.properties 파일을 생성하고 1 번에서 노출된 코드를 그대로 입력합니다. /assets/adi-registration.properties 경로는 임의로 변경하면 안됩니다. 경로가 잘못된 경우 APK 파일을 업로드 하면 The uploaded APK does not have the required token file. 오류가 발생합니다.

SHA-256 digest 키 정보가 일치하지 않으면 APK 파일을 업로드 하면 The uploaded APK has a different signature. 오류가 발생합니다.

문제가 없는 경우 하단의 제출 버튼이 활성화 되고 클릭하면 완료 됩니다. 잠시 기다리면 등록이 된 것을 확인할 수 있습니다.

패키지 이름이 등록된 것을 확인한 후 구글 플레이 콘솔에 앱 등록을 진행하면 됩니다.

안드로이드 스마트 워치 페이스 업로드 시 주의 사항

개요

이전에 소개 했던 스마트 워치용 괘종시계 페이스의 정보를 일부 수정하는 과정에서 이해할 수 없는 이유로 업데이트가 거부되었습니다. 이것에 관해서 알아보겠습니다.

업데이트 거부

초기 버전을 올리고 안내 사항이 있어서 기본 정보 문구를 추가했습니다. 그런데 다음과 같이 업데이트가 거부되었다는 메일이 왔습니다. 원래 있던 내용에서 단순히 문구만 추가했는데 거부되는 것은 납득이 되지 않았습니다.

업데이트 거부 안내 메일 일부 내용
업데이트 거부 안내 메일 일부 내용

거부 사유

세 가지 거부 사유가 있었는데 다음과 같습니다.

  • Wear 스크린샷
    Wear OS 스크린샷이 하나만 등록되어 있어 발생한 것 같았습니다. 최초 업로드 시에 점검해서 막아줄 수 있을 것 같은데 추후 업데이트 과정에서 거부 사유로 나타나는 것은 맞지 않는 것 같았습니다. 스크린샷을 더 등록해서 해결 했습니다.
  • Play 등록정보 설명
    이 사유의 상세 내용 중 이런 내용이 있었습니다. “Play 등록정보 설명에 Wear OS가 언급되어 있지 않습니다.” 앱의 분류가 이미 Wear OS 전용인데 설명에 Wear OS 문구가 없다고 거부 사유가 되는 것이 이상했습니다. 앱 설명에 Wear OS 문구를 넣어서 해결 했습니다. 이것도 최초 등록 시 검사해서 입력되도록 하는 것이 맞다는 생각이 들었습니다.
  • 시계 화면 항상 켜져 있는 화면에서 너무 많은 픽셀이 불이 들어옴
    이 사유는 뭔가 영문으로 된 것을 한글로 기계 번역 했다는 생각이 들었습니다. 아마도 Always On Display 관련한 문제라는 생각이 들었습니다. 시계 배경이 AOD 모드에서도 전부 나타나게 해서 문제가 된 것 같았습니다. AOD 모드일 때 배경이 나타나지 않도록 수정해서 해결 했습니다.

또 다른 거부 사유

문제를 모두 해결했다고 생각하고 다시 업데이트 요청을 했는데 또 거부 되었습니다. [발견된 문제: Wear 스크린샷] 이 거부 사유였고 상세 내용은 “앱의 Wear 스크린샷에 투명한 배경이나 마스킹이 포함되어서는 안 됩니다.” 이었습니다. 배경이 투명한 PNG 파일을 스크린샷으로 올렸는데 이것이 문제가 되었습니다. 투명한 배경을 제거하고 올려서 해결 했습니다. 이것도 스크린샷을 올릴 때 검사해서 미리 알려주는 것이 맞을 것 같은데 납득이 되지 않았습니다.

워치 페이스 관련한 작업을 진행하다 보니 기존 앱 관리 부분과 다르게 혼동이 될 여지가 많은 것 같았습니다. 처음이라 그런 부분도 있을 수 있겠지만 좀 더 명확한 화면 구성이 필요할 것 같았습니다. 개발자가 쓸데없이 시간을 버리지 않도록 미리 검사할 수 있는 부분은 업데이트 요청 전 확인을 할 수 있도록 하면 좋겠다는 생각이 들었습니다.

워치 페이스 관련해서 어려움을 겪으신 분들께 참고가 되었으면 합니다.