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

카테고리

분류 전체보기 (2737)
Unity3D (817)
Programming (474)
Server (33)
Unreal (4)
Gamebryo (56)
Tip & Tech (228)
협업 (58)
3DS Max (3)
Game (12)
Utility (136)
Etc (96)
Link (32)
Portfolio (19)
Subject (90)
iOS,OSX (53)
Android (14)
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
04-25 09:56

[아래 링크의 방법 시도하기 전에 일단 시도해봐야 될 것]

1. 'Player Setting -> Android -> Pubilshing Settings -> Use R8'로 이동

2. 'Use R8'이 체크 안돼 있는지 확인(Non Checked)

3. 'Use R8'이 체크 안돼 있는데도 에러가 난다면, 한 번 체크 했다가 다시 체크 해제

4. 빌드 테스트

 

[에러 수정 후기]

이번에 프로젝트를 Unity2018에서 Unity 2021로 올렸는데 제목과 같은 에러가 났다.

아래 링크의 방법 해보려하다가 Unity2020에서 생성해서 만들어진 gradle을 살펴봤지만 옵션에 문제가 없어보여서 이상하다 싶어서 위에 있는 'Use R8'을 체크 한 번 했다가 다시 체크 해제를 하니 정상적으로 빌드가 된다.

예상으로는 기존에 Unity2018에서 없던 옵션인 'Use R8'이 Unity2021(2020에도 있던데 어디서부터 생긴진 봐야될듯..)에서 새로 추가되면서 기존에는 없던 옵션이 생기면서 원하지 않거나 이상한 값이 저장돼 있는게 아닐까..하고 예상해 봄.

 

[Use R8 옵션 참조]

[Unity 2018] Use R8 옵션이 없다

 

[Unity 2021] Use R8 옵션이 있다.

 

[결론]

Use R8이 꺼져있는데도 위와같은 에러를 낸다면 Use R8 체크했다가, 다시 체크해제 해보자.

안되면 아래 방법으로..

 

-------------------------------------------------------------------------------------------------

 

[참조] https://kooksdev.tistory.com/8

 

[Error] Unity WARNING: The option setting 'android.enableR8=false' is deprecated

Gradle 관련 에러 두가지 방법으로 해결할 수 있다 Try 1 Custom Gradle Properties Template를 만들어서 android.enableR8=false를 적기 Try 2 Custom Base Gradle Template를 만들어 Gradle 버전 세팅 나는 두..

kooksdev.tistory.com

 

반응형
Posted by blueasa
, |

[링크] https://ajh322.tistory.com/298

 

유니티 빌드 에러 - mainTemplate.gradle file is using the old aaptOptions noCompress property definition which does not in

증상 유니티 버전을 2019대에서 2020대로 올리고 안드로이드 빌드를 하면 mainTemplate.gradle file is using the old aaptOptions noCompress property definition which does not include types defined by unit..

ajh322.tistory.com

 

[링크2] https://codetime.tistory.com/279

 

[Error] mainTemplate.gradle file is using the old aaptOptions 처리

UnityException: Error mainTemplate.gradle file is using the old aaptOptions noCompress property definition which does not include types defined by unityStreamingAssets constant. ※ mainTemplate.grad..

codetime.tistory.com

 

반응형
Posted by blueasa
, |

 

[링크] https://geukggom.tistory.com/197

 

[Firebase] 이슈 : Could not find a working python interpreter.

유니티에 파이어베이스 SDK를 추가해줬더니 다음과 같은 이슈가 발생했습니다. Could not find a working python interpreter. Please make sure one of the following is in your PATH: python..

geukggom.tistory.com

 

반응형
Posted by blueasa
, |

pod 를 업그레이드 후에 pod install 시에 다음과 같은 경고 문구를 만날 수 있다.

[!] Your project does not explicitly specify the CocoaPods master specs repo. Since CDN is now used as the default, you may safely remove it from your repos directory via `pod repo remove master`. To suppress this warning please add `warn_for_unused_master_specs_repo => false` to your Podfile.

 

이 이슈와 연관이 있다. git 기반의 MasterSource 대신 CDN 기반의 TrunkSource 로 변경되었기 때문. 하지만 BLM 과 관련 있는 듯.

이것도 Master 라는 용어를 사용하지 않기 위함?? github 에서 메인 소스 브랜치 이름이 master 에서 main 으로 변경된 것과 비슷한 이유인듯. 추정..

github.com/CocoaPods/CocoaPods/pull/8923

 

pod repo list 를 해보면 기존 git master ,  CDN trunk 두개가 존재하는 것을 볼 수 있다.

master
- Type: git (master)

- URL:  github.com/CocoaPods/Specs.git

- Path: /Users/thewavelet/.cocoapods/repos/master

trunk
- Type: CDN

- URL:  cdn.cocoapods.org/

- Path: /Users/thewavelet/.cocoapods/repos/trunk

 

경고 문구 대로

pod repo remove master

를 해서 master 는 지워주자.

 

 

[출처] https://thewavelet.tistory.com/49

 

cocoapods 업데이트 repo 변경사항. Git MasterSource 에서 CDN TrunkSource 로

pod 를 업그레이드 후에 pod install 시에 다음과 같은 경고 문구를 만날 수 있다. [!] Your project does not explicitly specify the CocoaPods master specs repo. Since CDN is now used as..

thewavelet.tistory.com

 

반응형
Posted by blueasa
, |

1. pod 삭제

pod deintegrate

2. pod 클린

pod cache clean --all

3. pod 설치

pod install

 

 

[출처] https://eloquence-developers.tistory.com/149

 

[React Native] iOS pod 삭제, 클린, 설치 명령어

1. pod 삭제 pod deintegrate 2. pod 클린 pod cache clean --all 3. pod 설치 pod install

eloquence-developers.tistory.com

 

반응형
Posted by blueasa
, |

[에러 내용]

  • 기기에서 앱을 실행하면 'dyld: Library not loaded: @rpath/FBAudienceNetwork.framework' 오류와 함께 바로 중단됩니다. 이 오류는 앱에 Audience Network SDK를 포함하지 않았다는 것을 의미합니다. 타겟 설정으로 이동하고 '일반' 탭에서 'FBAudienceNetwork.xcframework'에 '포함 및 서명'을 선택하세요.

 

[해결방법]

출처 링크의 내용에서는 Xcode에서 처리하는 방법을 써놨는데, 유니티 사용하는 상황에서 추가 작업을 Xcode에서 하면 귀찮아져서 Xcode PostProcessor에서 아래 소스 추가함.

[추가한 소스코드] pbxProject.AddFrameworkToProject(targetGuid, "FBAudienceNetwork.framework", true);

 

 

[출처] https://developers.facebook.com/docs/audience-network/setting-up/platform-setup/ios/add-sdk?locale=ko_KR

 

SDK 추가 - Audience Network - 문서 - Facebook for Developers

SDK 버전 6.9.0 이상에 대한 문제 해결 6.9.0부터는 iOS Audience Network SDK에서 Swift를 지원합니다. SDK 설치 및 Swift 상호운용성과 관련하여 가장 일반적으로 발생하는 문제를 해결하려면 아래의 내용을

developers.facebook.com

 

반응형
Posted by blueasa
, |

Firebase(or Google Analytics)에서 성별/연령이 나오다가 어느 시점에 안나오도록(수집 안되도록) 기본설정을 바꾼 것 같다.

 

예전에 셋팅을 해서 켰었는데 포스팅을 안하고 지나가서 가물가물 했는데 새로운 프로젝트 셋팅하면서 찾아서 활성화 시켜본다.

(이걸로 기억하는데 아닐수도 있음..;;)

 

 

Google Analytics - 관리(좌측하단) - 속성 - 데이터 설정 - 데이터 수집

 

설정할 곳은 Firebase가 아닌 Google Analytics쪽이다.

 

Google Analytics - 관리(좌측하단) - 속성 - 데이터 설정 - 데이터 수집 으로 가서 

Google 신호 데이터 수집, 사용자 데이터 수집 확인을 활성화 한다.

 

기본 설정이 비활성 상태기 때문에 활성화한 이후부터 데이터가 수집 되는 것 같다.

필요하다 생각되면 프로젝트 오픈전에 미리 활성화 해두자.

반응형
Posted by blueasa
, |

Unity 2018.4.36f1

Xcode 13.4.1

 

[Error Message]

[Attribution] updatePostbackConversionValue returned error: 작업을 완료할 수 없습니다.(SKANErrorDomain 오류 10.).

 

 

iOS 빌드하고 실행에 별다른 문제는 없지만 위와 같은 에러가 떠서 뭔가하고 찾아봤는데,

Apple 측 답변으로는 에러메시지는 뜨지만 정상 동작하고 있다는 것 같다.

무시..

 

[참조]

Got an answer from Apple:

There has been an issue identified starting iOS 15.3, where the view through APIs may return an "unknown error", in cases when no error has actually occurred. In 15.3 that error is ASDErrorDomain:500. In 15.4 that error is now defined in the public SDK as SKANErrorDomain:SKANErrorUnknown (value 10). However, in those cases no functional error has actually occurred. The impression was recorded by the system.

We recommend that you ignore all errors of type ASDErrorDomain:500 / SKANErrorDomain:SKANErrorUnknown (value 10), as they are not real errors. The impression is recorded on the device regardless of those errors.

 

[출처] https://developer.apple.com/forums/thread/699442

 

SKAdImpression unknown 500 error | Apple Developer Forums

In iOS 15.3 method SKAdNetwork.startImpression() returns an error in completionHandler: MyTestApp(StoreKit)[560] : SKAdNetwork: Error in remote proxy while starting view-through impression: Error Domain=ASDErrorDomain Code=500 "SKAdNetwork: Unknown error"

developer.apple.com

 

반응형
Posted by blueasa
, |

- ParticleSystem, Spine, TMP 등 Renderer를 가진 오브젝트들을 NGUI 위에 올리고 Depth를 맞추기 위한 소스

  (NGUI Widget의 Depth 제어 부분을 Renderer를 가진 오브젝트에서도 셋팅되도록 함)

- 출처에서는 ParticleSystem용으로 이름을 지어놨는데 어차피 Renderer를 가지고 있는 것들은 다 되는거라 이름 변경함

 

NGUIRendererWidget.cs
0.00MB

 

using System;
using System.Collections;
using System.Collections.Generic;
using UnityEngine;


[AddComponentMenu("NGUI/UI/NGUI Renderer Widget")]
public class NGUIRendererWidget : UIWidget
{
    protected Renderer m_Renderer;
    protected Material m_Mat;

    public override Material material
    {
        get
        {
            return m_Mat;
        }

        set
        {
            if (m_Mat != value)
            {
                RemoveFromPanel();
                m_Mat = value;
                MarkAsChanged();
            }
        }
    }

    protected override void OnEnable()
    {
        Init();
        base.OnEnable();
    }

    protected void Init()
    {
        if (null == m_Renderer)
        {
            m_Renderer = GetComponent<Renderer>();
        }

        if (null == m_Renderer)
        {
            return;
        }

        if (null == material)
        {
            if (false == Application.isPlaying)
            {
                material = m_Renderer.sharedMaterial;
                m_Renderer.sharedMaterial = material;
            }
            else
            {
                material = m_Renderer.material;
                m_Renderer.material = material;
            }
        }
    }

    private void OnWillRenderObject()
    {
        if (null != drawCall && drawCall.finalRenderQueue != material.renderQueue)
        {
            material.renderQueue = drawCall.finalRenderQueue;
        }

        if (Application.isPlaying == true && m_Renderer.material != material)
        {
            m_Renderer.material = material;
        }
    }

    public override void OnFill(List<Vector3> verts, List<Vector2> uvs, List<Color> cols)
    {
        for (int i = 0; i < 4; i++)
        {
            verts.Add(Vector3.zero);
            uvs.Add(Vector2.zero);
            cols.Add(color);
        }
    }
}

 

[출처] https://tenlie10.tistory.com/169

 

[Unity | 유니티] NGUI와 ParticleSystem간 Depth 조정

ParticleSystem에 해당 스크립트를 추가하고 타 NGUI 컴포넌트처럼 Depth값을 조정하면 된다. UIParticleWidget.cs 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33..

tenlie10.tistory.com

 

반응형
Posted by blueasa
, |