블로그 이미지
Every unexpected event is a path to learning for you. blueasa

카테고리

분류 전체보기 (2803)
Unity3D (859)
Programming (479)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (234)
협업 (61)
3DS Max (3)
Game (12)
Utility (140)
Etc (98)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (55)
Android (16)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (3)
Memories (20)
Interest (38)
Thinking (38)
한글 (30)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (18)
Exercise (3)
나만의 맛집 (3)
냥이 (10)
육아 (16)
Total
Today
Yesterday

Unity 2021.3.16f1

Xcode 14.2

Firebase 10.4.0

----

 

[빌드 에러]

pod install output:



Analyzing dependencies

[!] CocoaPods could not find compatible versions for pod "GTMSessionFetcher/Core":

  In Podfile:

    Firebase/Auth (= 10.6.0) was resolved to 10.6.0, which depends on

      FirebaseAuth (~> 10.6.0) was resolved to 10.6.0, which depends on

        GTMSessionFetcher/Core (< 4.0, >= 2.1)



    GoogleSignIn (= 6.0.2) was resolved to 6.0.2, which depends on

      GTMAppAuth (~> 1.0) was resolved to 1.3.1, which depends on

        GTMSessionFetcher/Core (< 3.0, >= 1.5)



    GoogleSignIn (= 6.0.2) was resolved to 6.0.2, which depends on

      GTMSessionFetcher/Core (~> 1.1)

 

Firebase 10.6.0이 업데이트 돼서 다시 한 번 iOS 빌드를 시도해 봤는데 여전히 에러가 난다.

(참조 : https://blueasa.tistory.com/2706)

 

[XCode] [!] Cocoapods could not find compatible versions for pod "GTMSessionFetcher/Core"

Unity 2021.3.16f1 Xcode 14.2 Firebase 10.4.0 ---- [빌드에러] pod install output: Analyzing dependencies [!] CocoaPods could not find compatible versions for pod "GTMSessionFetcher/Core": In Podfile: Firebase/Auth (= 10.4.0) was resolved to 10.4.0, whic

blueasa.tistory.com

 

그래도 다시 이리저리 검색해보다보니 해결했다는 글이 아래와 같이 있다.

UnayOzan commented on Feb 5
Fixed this error with changing the version in "GoogleSignIn.podspec.json" file.

Firebase/Auth (= 10.4.0) was resolved to 10.4.0, which depends on
FirebaseAuth (~> 10.4.0) was resolved to 10.4.0, which depends on
GTMSessionFetcher/Core (< 4.0, >= 2.1)

GoogleSignIn (~> **5.0.2**) was resolved to **5.0.2**, which depends on
  GTMSessionFetcher/Core (~> **1.1**)
I found the file in {user}.cocoapods/repos/cocoapods/Specs and then just search for "GoogleSignIn.podspec.json".
Find the folder with the same version with the error, in my case 5.0.2.
And then change its dependencies with the version 7.0.0 or something that works with the other packages.
In my project the solution was this;

 "dependencies": {
    "AppAuth": [
      "~> 1.5"
    ],
    "GTMAppAuth": [
      ">= 1.3",
      "< 3.0"
    ],
    "GTMSessionFetcher/Core": [
      ">= 1.1",
      "< 4.0"
    ]
After that I exited Xcode, deintagrated pods, cleaned cache and installed it again.
Everything works fine now.

[링크] https://github.com/firebase/firebase-unity-sdk/issues/621

 

[Bug] FirebaseAuth and GoogleSignIn iOS Build failure · Issue #621 · firebase/firebase-unity-sdk

[REQUIRED] Please fill in the following fields: Unity editor version: 2021.3.17f1 Firebase Unity SDK version: 10.4.0 Source you installed the SDK: .unitypackage Problematic Firebase Component: Auth...

github.com

 

글을 보면 아래와 같은 내용이 있다.

And then change its dependencies with the version 7.0.0 or something that works with the other packages.
In my project the solution was this;

에러도 나와 거의 같아서 확인해보니 GoogleSignIn 버전이 현재 6.0.2여서 GTMSessionFetcher/Core (~> 1.1)를 지원하는데,

설치한 FirebaseAuth 10.6.0은 GTMSessionFetcher/Core (< 4.0, >= 2.1)을 사용하고 있어서

GTMSessionFetcher/Core 버전이 서로 호환이 안되는 것 같다.

 

위 링크의 내용대로

GoogleSignIn 버전을 7.0.0(2023-03-27 기준 최신) 버전으로 변경하고 빌드를 다시해보니 깔끔하게 빌드가 잘 된다.

 

[추가]

빌드는 잘 되는데 회사 플랫폼에서 사용하는 GoogleSignIn이 6.0.2여서 7.0.0으로 올리면서 API 호환이 안돼서 로그인 시도할 때 Crash가 나면서 앱이 강제종료 된다.

6.2.4
  2.x 버전을 허용하도록 GTMSessionFetcher 종속 항목을 업데이트했습니다. (#207)

GoogleSignIn에서 해당 빌드 오류 이슈를 해결한 버전은 6.2.4여서 6.2.4로 버전을 내렸다.

나처럼 다른 이슈로 7.0.0으로 못올리는 사람은 6.2.4로 한 번 시도해 보면 좋을 것 같다.

 

[GoogleSignIn 버전 참조] https://developers.google.com/identity/sign-in/ios/release?hl=ko

 

Google 로그인 iOS 및 macOS SDK 출시 노트  |  Authentication  |  Google Developers

이 페이지는 Cloud Translation API를 통해 번역되었습니다. Switch to English 의견 보내기 Google 로그인 iOS 및 macOS SDK 출시 노트 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분

developers.google.com

 

반응형
Posted by blueasa
, |

[링크] https://wergia.tistory.com/353

 

[Unity] 유니티 공식 지원 오브젝트 풀링

개발단에 가입하여 베르의 게임 개발 유튜브를 후원해주세요! 베르의 게임 개발 유튜브 안녕하세요! 여러분들과 함께 게임 개발을 공부하는 베르입니다! 게임 개발에 도움이 되는 강좌들을 올

wergia.tistory.com

 

반응형
Posted by blueasa
, |

[링크] https://ijemin.com/blog/%EC%9C%A0%EB%8B%88%ED%8B%B0-2d-%EA%B2%8C%EC%9E%84-%EB%B9%8C%EB%93%9C-%EC%B5%9C%EC%A0%81%ED%99%94-%ED%8C%81/

 

유니티 (Unity) 2D 모바일 게임 최적화 팁 & 체크리스트 – I_Jemin

업데이트 2018/02/10 가독성 개선 2017/12/13 가독성 개선 2017/6/26 레퍼런스 추가 로깅/ GC, 필수 작업/ 퀄리티 세팅 추가 2017/5/26 유니티 5.6에 맞추어 갱신 레퍼런스 https://divillysausages.com/2016/01/21/performanc

ijemin.com

 

반응형
Posted by blueasa
, |

Unity 2021.3.19f1

Firebase 9.6.0

Facebook Android Plugin 15.0.2

 

[Case 1]

 

Firebase로 Facebook 연동을 했는데,

Facebook Web에서는 로그인이 잘되는데

위 스크린샷처럼 Facebook App이 설치돼 있는상태에서 App으로 로그인 하려하면 Invalid key hash 에러가 발생했다.

 

Facebook Web Login이랑 Facebook App Login이랑 Hash Key가 다른것 같다.

 

에러 메시지에 뜨는 key hash를 페이스북 개발자 페이지에 추가해주니 정상적으로 Facebook App 로그인이 됐다.

 

----

[Case 2]

- 스토어에서 받은 앱은 Facebook App 로그인 진행하려니 Key hash는 안보이고 위와 같이 에러 메시지만 띄운다.

- 혹시나해서 LogCat으로  보니 Key hash가 보여서 등록하고 정상 로그인 확인 함.

 

 

[참조]

https://bozeury.tistory.com/entry/%ED%8E%98%EC%9D%B4%EC%8A%A4%EB%B6%81-%EC%97%B0%EB%8F%99%EC%8B%9C-invaild-key-hash%EB%9D%BC%EB%8A%94-%EC%97%90%EB%9F%AC%EA%B0%80-%EB%82%98%EC%98%AC%EB%95%8C

 

페이스북 연동시 invaild key hash라는 에러가 나올때

페이스북을 연동하고나서 적용했을때 이런 에러가 날때가 있다. facebook 개발자 페이지에 등록되어있는 해쉬키와 현재 내 앱의 해쉬키가 다르기 때문에 나는 에러이다. 어째서 이런 에러가 나는

bozeury.tistory.com

 

반응형
Posted by blueasa
, |

[링크] https://docs.unity3d.com/Packages/com.unity.toonshader@0.8/manual/index.html

 

Unity Toon Shader overview | Unity Toon Shader | 0.8.5-preview

Unity Toon Shader overview The Unity Toon Shader (UTS3) is a set of toon shaders designed to meet the needs of creators working on cel-shaded 3D-CG animations. The Unity Toon Shader is compatible with all the render pipelines, the Built-in Render Pipeline,

docs.unity3d.com

 

반응형
Posted by blueasa
, |

[링크] https://specialmylife.tistory.com/entry/NGUI-%EC%9C%A0%EC%9A%A9%ED%95%9C-%EB%A7%81%ED%81%AC

 

NGUI 유용한 링크

NGUI 유용한 링크Alpha-based hit detection Nicki's Depth Management system Improved Localization System How to make health bars Action Bar system Packed Font with Outline/Shadow Font using Alpha-tested magnification (Valve's approach) Atlas switching /

specialmylife.tistory.com

 

반응형
Posted by blueasa
, |

[링크] https://blog.naver.com/canny708/221557851696

 

버스트 컴파일러 (Burst Compiler)

ECS는 메모리 설계를 최적화하기 위한 기능이고, C# Job System은 멀티 스레딩을 더욱 극한으로 사용...

blog.naver.com

 

반응형
Posted by blueasa
, |

Unity 2021.3.16f1

Burst 1.6.6

----

 

유니티에서 필요한 에셋을 추가(Magica Cloth)하니 Package Manager에서 Burst도 추가를 요구한다.

추가하고 빌드하니 아래와 같은 폴더를 자동생성하고 있다.

 

[폴더명 예시] BuildName_BurstDebugInformation_DoNotShipDeleter

 

그래서 이전에 했던방식과 같이 OnPostprocessBuild에서 빌드 후 삭제하기로 함

 

using System.IO;
using UnityEditor;
using UnityEditor.Build;
using UnityEditor.Build.Reporting;

/// <summary>
/// Burst 관련 빌드 후 생성되는 백업 폴더 삭제
/// </summary>
public sealed class BurstDebugInformation_DoNotShipDeleter : IPostprocessBuildWithReport
{
    public int callbackOrder => 0;
    // 확정된 폴더명은 readonly 변수로 만듬
    private readonly string m_strBurstDebugInformation_DoNotShip = "BurstDebugInformation_DoNotShip";

    public void OnPostprocessBuild(BuildReport report)
    {
        var summary = report.summary;
        var platform = summary.platform;

        if (platform != BuildTarget.StandaloneWindows 
            && platform != BuildTarget.StandaloneWindows64
            && platform != BuildTarget.Android  // Android 플랫폼에서도 작동하도록 추가
            && platform != BuildTarget.iOS)     // iOS 플랫폼에서도 작동하도록 추가
        {
            return;
        }

        if (summary.options.HasFlag(BuildOptions.Development))
        {
            return;
        }

        var outputPath = summary.outputPath;
        var outputDirectoryPath = Path.GetDirectoryName(outputPath);

        // 빌드 폴더 이름이 FileName을 따라가서 FileName을 폴더명으로 쓰도록 수정
        var outputFileName = Path.GetFileNameWithoutExtension(outputPath);
        //var productName = PlayerSettings.productName;

        var backUpThisFolderPath = $"{outputDirectoryPath}/{outputFileName}_{m_strBurstDebugInformation_DoNotShip}";

        if (!Directory.Exists(backUpThisFolderPath))
        {
            return;
        }

        Directory.Delete(backUpThisFolderPath, true);
    }
}

 

[참조] https://forum.unity.com/threads/burstdebuginformation_donotship-in-builds.1172273/

 

BurstDebugInformation_DoNotShip in builds

After a fairly recent update to Burst, I'm not seeing a folder named this in my builds: Gravia_BurstDebugInformation_DoNotShip A couple of questions:...

forum.unity.com

 

반응형
Posted by blueasa
, |

Unity 2022.2.5f1

----

 

[빌드에러]

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':launcher:packageRelease'.
> A failure occurred while executing com.android.build.gradle.tasks.PackageAndroidArtifact$IncrementalSplitterRunnable
   > com.android.ide.common.signing.KeytoolException: Failed to read key anne from store 
      "C:\Test_Unity2022\Keystore\testapp.keystore": Cannot recover key

 

Unity 2022 포팅 테스트 해볼 겸 올려보다가 빌드 에러가 나서 보니 위와 같은 에러가 뜨고 있다.

 

[해결]

확인해보니 keystore 비밀번호를 잘못 입력한 것 같다.

비밀번호는 별표(*)로 나와서 안보이니 입력할 때 꼼꼼하게 잘 확인하자.

 

[참조] https://kwonyoonjae.tistory.com/112

 

유니티 a failure occurred while executing com.android.build.gradle.internal.tasks.workers$actionfacade 해결 방법

유튜브를 보면서 처음으로 유니티를 이용해 게임을 만들던 중 문제가 생겼습니다. 바로 "a failure occurred while executing com.android.build.gradle.internal.tasks.workers$actionfacade"에러가 나온 것인데요. 처음에

kwonyoonjae.tistory.com

[참조2] https://appletreeworkplace.tistory.com/6

 

[유니티] android gradle build failed 뜰 때 해결법

UnityPlayerActivity.java uses or overrides a deprecated API. 갑자기요..? 정상적인 유니티에서 안드로이드 플랫폼 성공 과정이라 하믄~ build gradle project에서 그 다음 Copying APK를 봐야 안심이 된다. 그러나 build gr

appletreeworkplace.tistory.com

 

반응형
Posted by blueasa
, |

[링크] http://yoonhada.com/?p=1398 

 

[Build]유니티 안드로이드 Gradle Version 관리 – yoonhada

Gradle 도구를 사용할 때 꼭 알아야 할 버전관리 이슈을 정리해보았다. 특히 유니티 엔진같은 경우 특수한 경우이기 때문에 더욱더 중요하다. (내용은 안드로이드 스튜디오에서도 동일하게 적용

yoonhada.com

 

[링크2] https://chc3484.tistory.com/74

 

[Android Build] 유니티 안드로이드 Gradle Version 관리

Gradle 도구를 사용할 때 꼭 알아야 할 버전관리 이슈을 정리해보았다. 특히 유니티 엔진같은 경우 특수한 경우이기 때문에 더욱더 중요하다. (내용은 안드로이드 스튜디오에서도 동일하게 적용

chc3484.tistory.com

 

반응형
Posted by blueasa
, |