지난 10월 구글 플레이에 올려둔 게임 데모 버전의 버그 수정 및 기능 업데이트를 위해 새 버전을 업로드 하게 되었다.

근데 웬걸, 현재 빌드에는 구글플레이 결제 라이브러리 3버전이 설치되어있고, 4버전 이상을 설치해야 업로드가 가능하도록 변경되었다.

https://github.com/google/play-unity-plugins

 

GitHub - google/play-unity-plugins: The Google Play Plugins for Unity provide C# APIs for accessing various Play services

The Google Play Plugins for Unity provide C# APIs for accessing various Play services - GitHub - google/play-unity-plugins: The Google Play Plugins for Unity provide C# APIs for accessing various P...

github.com

기존에는 위 링크의 플러그인을 사용해 aab빌드를 진행해 왔는데, 해당 플러그인의 메뉴얼을 잘 읽어보니 구글플레이 결제 라이브러리 3버전 상위 버전은 지원하지 않는다고 적혀있다.

 그래서 PAD를 지원하는 다른 빌드 방법을 찾다보니, 유니티 Package Manager의 In App Purchasing을 이용하면 되더라.

4버전 이상을 다운받아야 한다.

여기서 주의할 점은, 유니티의 In App Purchasing 패키지를 사용할 경우, 기존에 사용하던 play-unity-plugins는 반드시 삭제해주어야한다. (삭제하지 않으면 빌드할떄 중복 파일 충돌난다. 필자는 바보같이 이걸 몰라서 몇시간을 날렸다.) 

그리고, Project Settings/Publishing Settings/Minify/Split Application Binary 항목을 체크 한 후, Build App Bundle 체크 후 빌드하면 이전과 같이 구글플레이에 업로드 할 수 있게 된다.

https://docs.unity3d.com/Manual/play-asset-delivery.html

 

Unity - Manual: Play Asset Delivery

Play Asset Delivery Play Asset Delivery (PAD) is the asset splitting solution for the Android App Bundle (AAB) publishing format. PAD uses asset packs to store additional assets such as textures, sounds, and meshes. Google hosts and serves asset packs on G

docs.unity3d.com

위 메뉴얼에 해당 기능을 지원하는 유니티 버전을 확인할 수 있다.

 

'Unity > 작업&삽질노트' 카테고리의 다른 글

[개발중인 게임] Shambles  (0) 2022.04.13
2021-08-18 작업일지  (0) 2021.08.19
2021-08-17 작업일지  (0) 2021.08.17
2021-08-12 작업일지  (0) 2021.08.12
2021-08-09 작업일지  (0) 2021.08.09

기존에는 Mono로 빌드를 해서 테스트 하다가 구글 플레이스토어에 업로드 할 일이 생겼다.

구글 플레이스토어에 업로드 하기 위해서는 apk가 아닌 aab형식으로 빌드를 해야하고, 64비트를 지원해야했다.

빌드 세팅에서 스크립팅 백엔드를 Mono는 IL2CPP로 변경, 타겟 아키텍처는 ARMv7과 ARMx64를 모두 체크해서 빌드를 하자 안드로이드에서 실행시 바로 튕기는 현상이 발생했다.

구글링해본 결과 원인은 Library폴더의 IL2CPP관련 폴더에 있다고 해서 Library 폴더의 내용을 삭제하고 다시 빌드하니 정상적으로 작동했다.

 

'Unity' 카테고리의 다른 글

-Unity- 유니티 기초(UI 배치하기)  (0) 2019.04.14

https://youtu.be/jAsuvJ-bP1I

몇달 전부터 친구들과 함께 제작하던 게임의 트레일러 제작이 끝났다.(로그라이크 스토리텔링 카드 게임)

정신없이 작업 하다가 영상 결과물이 나오니까 기분이 아주 굿이다.

[2021-9-13 학교 수업중 필기 내용]

C#의 Vector3는 사실 클래스가 아닌 구조체 형식이다.

Vector3 pos = new Vector3(1.0f,2.0f,3.0f);에서 new는 사실 동적할당의 용도로 사용된것이 아니다.

C#에서 구조체는 reference type이 아닌 value type이다.

따라서 구조체는 heap공간이 아닌 stack 공간에 저장될 확률이 높다.

왜 C#에서 구조체는 value type인걸까?

value type의 경의 변수가 선언되었을 때, stack 공간에 저장된다.

메모리 관리 측면에서 heap공간은 stack공간에 비해 비용이 굉장히 높다(시간복잡도가 높다).

즉, stack 공간을 활용할수록, 성능 향상이 될 수 있다.

따라서 자주 쓰는 변수의 경우 클래스 대신 구조체로 구현시 성능 향상효과를 얻을 수 있다.

 

'Unity > C#' 카테고리의 다른 글

[Unity/C#] Update와 FixedUpdate  (0) 2019.06.17
[Unity/C#] Ray&Raycast  (0) 2019.06.11
-C#- Awake/Start/Update  (0) 2019.06.03
-C#- 대리자(delegate)  (0) 2019.05.28
C# - Vector3  (0) 2019.04.03

DB 구조 짜는 작업을 완료했다.

DB 테이블에 더미데이터를 넣는 작업까지 완료했다.

 

기존 db 구조를 수정하는 작업을 하고있다.

string데이터를 모두 외부 테이블로 빼서 관리하고, 서로 물고물던 테이블을 일부 정리했다.

아직 작업이 진행중이라 내일까지 이어질듯... 생각보다 머리가 아프다

'Unity > 작업&삽질노트' 카테고리의 다른 글

[개발중인 게임] Shambles  (0) 2022.04.13
2021-08-18 작업일지  (0) 2021.08.19
2021-08-12 작업일지  (0) 2021.08.12
2021-08-09 작업일지  (0) 2021.08.09
2021-08-04 작업일지  (0) 2021.08.04

+ Recent posts