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

카테고리

분류 전체보기 (2342)N
Unity3D (577)
Programming (473)
Unreal (4)
Gamebryo (56)
Tip & Tech (187)N
협업 (34)
3DS Max (3)
Game (12)
Utility (116)
Etc (92)
Link (31)
Portfolio (19)
Subject (90)
iOS,OSX (38)
Android (13)
Linux (5)
잉여 프로젝트 (2)
게임이야기 (1)
Memories (20)
Interest (37)
Thinking (36)
한글 (26)
PaperCraft (5)
Animation (408)
Wallpaper (2)
재테크 (19)
Exercise (3)
나만의 맛집 (2)
냥이 (9)
육아 (13)
Total1,356,282
Today50
Yesterday269
Statistics Graph

달력

« » 2020.1
      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  

공지사항

태그목록

Windows7 64bit

Unity 2018.4.13f1

Firebase 6.9.0

 

Firebase 6.9.0 넣고 나온 또 다른 빌드 에러..


CommandInvokationFailure: Gradle build failed. 

...

stderr[

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':packageRelease'.
> 1 exception was raised by workers:
  java.io.UncheckedIOException: java.io.IOException: Failed to obtain compression information for entry

 


해결책은 아래와 같다.

Minify-Release/Debug가 기본 None인데, 업데이트 되면서 값을 넣어야 되나보다.

Proguard 이야기도 있긴한데, 우선 아래 보이는대로 Gradle (Experimental) 로 바꾸니 빌드가 잘 된다.

 


 

Someone in the thread from unity forum finally posted a working solution. I'm gonna share it here as well so hopefully everyone who lands on the question with this issue will not have to spend 30 hours blindfolded, resolving dex merging conflicts like I did.

Turns out that with new new version there is a few more options in the publish settings that needs to be set!

quoting RealPpTheBest s' answer

Go to player settings > Project Settings > Minify, in there, there will be an option of Release, set it to Gradle .

For some reason when choosing gradle build these two are not automatically toggled, and maybe in some cases they don't have to be. But setting minify to Grable (experimental) completely resolved all the build errors I was getting after updating unity.

EDIT: september-2019 - Solution above should still work, but:

I have lately been experimenting with choosing Proguard instead of the experimental Gradle minifier (can be selected in the dorpdown as well). When configured correctly proguard will also resolve your DEX limitation errors, and get rid of unused code and even compress your build size even more.

This post has a quite throughly detailed guide on how to enable and configure it. Keep in mind though, that the configuration will be unique to which dependencies you are using, so you will have to read up and do some custom configuration here most likely.

shareedit

edited Sep 26 '19 at 7:39

 

answered Jun 24 '19 at 15:46

Rasmus Puls

8996 silver badges19 bronze badges

 

[출처]

https://stackoverflow.com/questions/56623107/unity-gradle-build-error-while-merging-dex-archives/58012656#58012656

 

Unity gradle build - Error while merging dex archives

I'm trying to compile my project using "Build App Bundle (Google Play)" for the first time. However I am getting an error while merging dex archives. I believe it is due to some of my plugins are u...

stackoverflow.com

 

[참조]

https://forum.unity.com/threads/gradle-shenanagains.602599/

 

Gradle Shenanagains?

Honestly, I have no idea what's going wrong here. CommandInvokationFailure: Gradle build failed. C:\Program...

forum.unity.com

 

 
Posted by blueasa

댓글을 달아 주세요

OS : Windows7 64bit

Unity : 2018.4.13f1

Firebase : 6.9.0


Generation of the Firebase Android resource file google-services.xml from Assets/Firebase/google-services.json failed.
If you have not included a valid Firebase Android resources in your app it will fail to initialize.
"C:\Project\git\ProjectName\Assets\Firebase\Editor\generate_xml_from_google_services_json.exe" -i "Assets/Firebase/google-services.json" -l

Traceback (most recent call last):
  File "", line 446, in 
  File "", line 289, in main
  File "", line 228, in argv_as_unicode_win32
AttributeError: 'module' object has no attribute 'wintypes'
generate_xml_from_google_services_json returned -1


Firebase 6.9.0을 유니티에 Import하고 위와 같은 에러를 보게 됐다.

결론적으로 wintypes attribute가 없다는 말인데 저게 뭔지 몰라서 한참 찾아 헤메다가

아래 링크에서 답을 찾았다.

 

[해결방법] 원본 (https://github.com/firebase/quickstart-unity/issues/540)

[해결방법] Detail (https://github.com/firebase/quickstart-unity/issues/540)

 

결론적으로 Firebase 6.9.0이 Windows7을 제대로 지원하지 않는 것 같다.

그래서 generate_xml_from_google_services_json.exe 파일을 다시 컴파일하는 작업을 위해서 설명하고 있다.

Python 2.7이 필요한데, Python 2.7.9 이상을 설치해야 pip가 Python에 기본적으로 들어 있다.

나는 아래 링크의 2.7.17을 깔았다.

 

[Python 2.7.17 다운로드] https://www.python.org/downloads/release/python-2717/

 

해결방법 Detail 설명대로 다하고나니 이제 에러가 뜨지 않는다.

 

 

P.s. Windows7 지원 종료가 되면서 여기저기 다른 곳에서도 지원을 종료하면서 개발에 피해가 오고 있는 걸 체감하고 있다.

    현재 피해 당하고 있는 건 SourceTree와 Firebase..-_-

 

 
Posted by blueasa

댓글을 달아 주세요

최근에 안드로이드 프로젝트 컴파일 시 오류가 발생했습니다.

구글링으로 이것 저것 같아 보았는데, compileSdkVersion 와 com.android.support:appcompat-v7을 28로 올리면 해결된다는 글이 많았습니다. 

그래서 원인을 찾아보고 해결 방법을 찾았습니다.

 

[오류]

error: resource android:attr/fontVariationSettings not found.

Message{kind=ERROR, text=error: resource android:attr/fontVariationSettings not found., 

sources=[C:\*****\*****\.gradle\caches\transforms-1\files-1.1\appcompat-v7-26.1.0.aar\4fbc79d932923de1fd1d9a6e9b479d50\res\values\values.xml:246:5-69], original message=, tool name=Optional.of(AAPT)}

 

error: resource android:attr/ttcIndex not found.

Message{kind=ERROR, text=error: resource android:attr/ttcIndex not found., 

sources=[C:\*****\*****\.gradle\caches\transforms-1\files-1.1\appcompat-v7-26.1.0.aar\4fbc79d932923de1fd1d9a6e9b479d50\res\values\values.xml:246:5-69], original message=, tool name=Optional.of(AAPT)} 

 

[원인]

 애드몹의 SDK 최신 버전이 18로 이번주에 배포 되어 있는데, 이 SDK의 경우 Android API 28(안드로이드 9) 에서 최적화 된듯 합니다.

gradle의 dependencies에서 최신의 애드몹 SDK를 참조하고 있고, Andorid API가 27 이하인 경우에 발생합니다.

 

[해결]

 모듈 gradle에서 참조하고 있는 애드몹의 SDK의 버전을 17로 설정하면 컴파일 오류가 해결됩니다.

 

(변경전) 

implementation 'com.google.android.gms:play-services-ads:+'

(변경후)

implementation 'com.google.android.gms:play-services-ads:17+'

 



출처: https://docko.tistory.com/entry/안드로이드-오류-error-resource-androidattrfontVariationSettings-ttcIndex-not-found [장똘]

 

안드로이드 오류 - error: resource android:attr/fontVariationSettings & ttcIndex not found.

최근에 안드로이드 프로젝트 컴파일 시 오류가 발생했습니다. 구글링으로 이것 저것 같아 보았는데, compileSdkVersion 와 com.android.support:appcompat-v7을 28로 올리면 해결된다는 글이 많았습니다. 그래서..

docko.tistory.com

 

Posted by blueasa

댓글을 달아 주세요

Unity에서 Firebase Cloud Messaging(FCM) 서비스 적용 후 빌드 시, 애플로부터 Missing Push Notification Entitlement 메시지를 받을 때가 있는데 어느 순간 부터 XCode에서 Capabilities-Push Notifications를 수동으로 ON 시켜줘야 된단다.

 

 

[참조]

7단계: 사용자 알림 프레임워크 추가

  1. Xcode 프로젝트를 클릭한 후 Editor area(편집 영역)에서 General(일반) 탭을 클릭합니다.

  2. Linked Frameworks and Libraries(연결된 프레임워크 및 라이브러리)까지 아래로 스크롤한 다음 + 버튼을 클릭하여 프레임워크를 추가합니다.

  3. 나타나는 창에서 UserNotifications.framework까지 스크롤하여 해당 항목을 클릭한 다음 Add(추가)를 클릭합니다.

8단계: 푸시 알림 사용 설정

  1. Xcode 프로젝트를 클릭한 후 Editor area(편집 영역)에서 Capabilities(기능) 탭을 클릭합니다.

  2. Push Notifications(푸시 알림)를 On(켜기)으로 전환합니다.

  3. Background Modes(백그라운드 모드)까지 아래로 스크롤하고 On(켜기)으로 전환합니다.

  4. Background Modes(백그라운드 모드)아래의 Remote notifications(원격 알림) 체크박스를 선택합니다.

 

[출처] https://firebase.google.com/docs/cloud-messaging/unity/client?hl=ko

 

Unity로 Firebase 클라우드 메시징 클라이언트 앱 설정  |  Firebase

Unity로 교차 플랫폼 Firebase 클라우드 메시징 클라이언트 앱을 작성하려면 Firebase 클라우드 메시징 API를 사용하세요. Unity SDK는 Android 및 iOS에서 모두 작동하며 플랫폼에 따라 몇 가지 추가 설정이 필요합니다. 시작하기 전에 1단계: 환경 설정 Unity 5.3 이상을 설치합니다. (iOS만 해당) 다음에 대한 액세스 권한이 있어야 합니다. Xcode 9.4.1 이상 CocoaPods 1.4.0 이상 Unity 프로젝

firebase.google.com

 

Posted by blueasa

댓글을 달아 주세요

[My Case]

[Error] java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/HttpHost

[수정] Unity Android Target API Level을 26으로 낮춰서 해결

 

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

 

Do any of the following:

1- Update the play-services-maps library to the latest version:

com.google.android.gms:play-services-maps:16.1.0

 

2- Or include the following declaration within the <application> element of AndroidManifest.xml.

<uses-library android:name="org.apache.http.legacy" android:required="false" />

 

 

[출처]

https://stackoverflow.com/questions/50461881/java-lang-noclassdeffounderrorfailed-resolution-of-lorg-apache-http-protocolve

 

java.lang.NoClassDefFoundError:failed resolution of :Lorg/apache/http/ProtocolVersion

I 've met such error when I use Android studio 3.1 to build an Android P 's app, the apk can be made ,but when I use it on Android P emulator , it will crash and throw below info, more details see ...

stackoverflow.com

 

Posted by blueasa

댓글을 달아 주세요


[링크1]

https://m.blog.naver.com/PostView.nhn?blogId=syowoo&logNo=220518896040&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F


[링크2]

http://freecandoall.blogspot.com/2015/10/xcode.html

Posted by blueasa

댓글을 달아 주세요

  1. 2019.01.13 23:31 존제작자  댓글주소  수정/삭제  댓글쓰기

    우어어어 브루삭형이다

  2. 2019.01.14 14:27 존제작자  댓글주소  수정/삭제  댓글쓰기

    마계지문 들어가봣는데 자반이 판친다~~ 멀티랑~

  3. 2019.01.16 17:52 존제작자  댓글주소  수정/삭제  댓글쓰기

    내가 좀 신경좀 쓰지 머 ㅋㅋㅋㅋ 요즘 예저보다 많이 안바쁘니 블랙아사 로 하나 만들어줘봐 ㅋㅋ

    아니다 초기화 한번 하자 ㅋㅋ

  4. 2019.01.18 12:24 존제작자  댓글주소  수정/삭제  댓글쓰기

    마계 먹통 댔다 ㅡ.ㅡ

  5. 2019.01.18 19:13  댓글주소  수정/삭제  댓글쓰기

    비밀댓글입니다


[링크] http://prosto.tistory.com/255


[참조] http://blueasa.tistory.com/2082

Posted by blueasa

댓글을 달아 주세요

유니티에서 안드로이드 빌드 할려고 할 때

Error building Player: CommandInvokationFailure: Unable to merge android manifests. See the Console for more details

이런 에러가 뜨면서 안되는 경우 안에 내용을 살펴 보면

Main manifest has <uses-sdk android:targetSdkVersion='21'>but library uses targetSdkVersion='23' 이런 내용이 있다

무슨 뜻 이냐면 자신의 컴에 깔린 안드로이드 sdk 최신 버전은 21인데 프로젝트안에 어떤 플로그인에서 안드로이드 타겟버전을 23을 셋팅 되어서 빌드를 못한다는 뜻임.

 

그냥 안드로이드sdk버전업만 시키면 빌드가 다시 잘된다.!!



출처: http://jaehogame.tistory.com/entry/유니티-Error-building-Player-CommandInvokationFailure-Unable-to-merge-android-manifests-See-the-Console-for-more-details [재호와 함께하는 게임프로그래밍~~ㅋㅋ]

Posted by blueasa

댓글을 달아 주세요

"A script behaviour (script unknown or not yet loaded) has a different serialization layout when loading.(Read 48 bytes but expected 88 bytes) 
Did you #ifdef UNITY_EDITOR a section of your serialized properties in any of your scripts?"


위와 같은 에러가 나서 찾아 보니 여러가지 이유로 뜨는 문제라 수정하기 힘들었는데,

내 경우는 


Resources.LoadAsync(string path); 의 path에 string.Empty(or null) 값을 넣었더니 위와 같은 에러가 났다.


path가 string.Empty(or null)면 예외처리 함.



[참조] https://issuetracker.unity3d.com/issues/serialized-scriptable-object-works-in-the-editor-but-not-in-the-build

[참조] https://docs.unity3d.com/ScriptReference/Resources.LoadAsync.html

Posted by blueasa

댓글을 달아 주세요

XCode 최신 버전으로 업데이트 하고나서 빌드 하려니 GA 관련 Link 에러가 나서 찾아봤더니 아래 프레임워크가 필요하다고 한다.


리스트를 살펴보니 CoreData.framework가 빠져 있어서 수동 추가 후 정상 빌드 확인..




The Google Analytics SDK uses the CoreData and SystemConfiguration frameworks, so you will need to add the following to your application target's linked libraries:

  • libGoogleAnalyticsServices.a
  • AdSupport.framework
  • CoreData.framework
  • SystemConfiguration.framework
  • libz.dylib



[출처] https://stackoverflow.com/questions/22008892/google-analytics-doesnt-work-on-new-ios-project

Posted by blueasa

댓글을 달아 주세요