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

카테고리

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

[펌] ERROR ITMS-4238

Unity3D/Tips / 2017. 11. 2. 19:43


ios도 모르고 하이브리드 앱 개발하기 [ 25  ERROR ITMS-4238  ]





Xcode로 앱을 등록하는 과정에서 다음과 같은 오류가 생겼다.

ERROR ITMS-4238: "Redundant Binary Upload. There already exists a binary upload with build version '1' for train '1.0'" at SoftwareAssets/PreReleaseSoftwareAsset



일단 오류가 나면 당황스럽다.


위 에러는 등록하려는 앱을 중복 업로드할 수 없다는 내용이다.


같은 Version 의 Build 값이 같은 앱은 아이튠즈 커넥트에 등록 할 수 없다.



앱을 다시 등록 할 경우에 

Project > General > Identity > Build 를 수정해 주어야 한다. 


당연히 재배포 시에는 Version 까지 수정해 주어야 한다.




출처: http://cofs.tistory.com/248 [CofS]

반응형
Posted by blueasa
, |

iOS 10에서 Privacy 설정

기존 앱을 XCode8로 다시 빌드하면 
iOS 10에서 카메라나 다른 기능을 사용시 아무런 경고도 없이 Crash가 발생하게 된다.

디버그 메시지는 다음과 같다.

This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app’s Info.plist must contain an NSCameraUsageDescription key with a string value explaining to the user how the app uses this data.

iOS 10에서 아래와 같은 기능을 사용하기 위해서는 사용자의 확인 메시지를 설정해줘야 한다.

사용 설명을 요구하는 API 항목들

Data ClassXCode KeyRaw Info.plist Key
Apple MusicPrivacy - Media Library Usage DescriptionNSAppleMusicUsageDescription
BluetoothPrivacy - Bluetooth Peripheral Usage DescriptionNSBluetoothPeripheralUsageDescription
CalendarPrivacy - Calendars Usage DescriptionNSCalendarsUsageDescription
CameraPrivacy - Camera Usage DescriptionNSCameraUsageDescription
ContactsPrivacy - Contacts Usage DescriptionNSContactsUsageDescription
HealthPrivacy - Health Share Usage Description Privacy - Health Update Usage DescriptionNSHealthShareUsageDescription NSHealthUpdateUsageDescription
HomePrivacy - HomeKit Usage DescriptionNSHomeKitUsageDescription
LocationPrivacy - Location Always Usage Description Privacy - Location When In Use Usage DescriptionNSLocationAlwaysUsageDescription NSLocationWhenInUseUsageDescription
MicrophonePrivacy - Microphone Usage DescriptionNSMicrophoneUsageDescription
MotionPrivacy - Motion Usage DescriptionNSMotionUsageDescription
PhotosPrivacy - Photo Library Usage DescriptionNSPhotoLibraryUsageDescription
RemindersPrivacy - Reminders Usage DescriptionNSRemindersUsageDescription
SiriPrivacy - Siri Usage DescriptionNSSiriUsageDescription
Speech RecognitionPrivacy - Speech Recognition Usage DescriptionNSSpeechRecognitionUsageDescription
TV Provider AccountPrivacy - TV Provider Usage DescriptionNSVideoSubscriberAccountUsageDescription

Info.plist에서 Privacy 설정을 추가해주면 된다.


다음은 사진 라이브러리와 카메라 접근시 사용 예제입니다.

Privacy - Camera Usage Description
Privacy - Photo Library Usage Description

[추가] Decription String을 필수로 넣어야 함. - blueasa

[Privacy - Camera Usage Description] Everyplay requires access to the Camera library

[Privacy - Photo Library Usage Description] Everyplay requires access to the photo library

[Privacy - Calenders Library Usage Description] Some ad content may access calendar


앱에서 사진 라이브러리 접근시 다음과 같은 메시지를 보게 된다.



출처: http://kka7.tistory.com/40 [까칠하게 살자]


[참조1] https://dev.tapjoy.com/ko/submitting-ios-results-warning-nscalendarsusagedescription/


[참조2] http://docs.telerik.com/platform/knowledge-base/troubleshooting/troubleshooting-app-rejected-from-app-store-missing-info-plist-key



반응형
Posted by blueasa
, |


[Windows Path] Users\<user>\AppData\LocalLow\Unity\WebPlayer\Cache\<project_name>\


[Mac Path] ~/Library/Caches/Unity/



[출처] http://answers.unity3d.com/questions/956259/where-is-the-cache-folder-for-wwwloadfromcacheordo.html

반응형
Posted by blueasa
, |

[Link] unity-webview

Unity3D/Plugins / 2017. 10. 23. 19:11


[Link] https://github.com/gree/unity-webview

반응형
Posted by blueasa
, |


[링크] http://blog.naver.com/rapkuma/220150432332



반응형
Posted by blueasa
, |

GUI 최적화의 핵심은 정적인 UI 들과 동적인 UI 들을 나누는 것이다. 나누는 기준은 패널이다. 예를 들어 다음과 같은 하이어라키를 생각해볼 수 있다.




Panel1

정적인 UI들


Panel2

동적인 UI들




이렇게 하는 이유는 UI 가 갱신될 때마다 UI 가 속한 패널의 지오매트리가 재구성되기 때문이다. 재구성 작업에 많은 양의 가비지가 발생한다. 여기서 주의해야할 점은 위치 이동같은 기본 변환은 '갱신' 에 포함되지 않는다는 것이다. 지오매트리가 변해야 하는 작업들, 예를 들어 SetActive, UILabel 의 text 변경 등이 갱신에 포함된다.




패널의 UI 들중 하나라도 갱신이 되면 패널의 모든 UI 들에 대한 지오매트리 재구성 작업이 수행된다. 따라서 제일 최악의 시나리오는 패널을 루트에 단 하나 만들어두는 것이다. 이러면 UI 의 변경은 곧 씬의 모든 UI 들의 갱신이라는 결과로 작용한다.




동적인 UI 들 역시 하나의 패널로 몰아넣는건 같은 이유로 피해야 한다. 그렇다고 해서 패널의 개수를 너무 많이 늘려서는 안되는데, 패널 단위로 드로우콜이 분리되기 때문에 렌더링 성능은 낮아진다. 따라서 성능 측정을 결과로 패널의 개수를 조절할 필요가 있다.




출처: http://cacodemon.tistory.com/entry/NGUI-최적화의-핵심 [카코데몬의 잡동사니]

반응형
Posted by blueasa
, |

ARKit(Animoji 관련)

Unity3D/Tips / 2017. 9. 26. 12:01

[Unity ARKit Plugin]

https://www.assetstore.unity3d.com/kr/#!/content/92515



[Animoji]

https://forums.developer.apple.com/thread/86937

https://developer.apple.com/videos/play/fall2017/601/

https://developer.apple.com/documentation/arkit

반응형
Posted by blueasa
, |


[링크] http://macnews.tistory.com/4533

반응형
Posted by blueasa
, |


UnityException: Unable to install APK!

Installation failed. See the Console for details.

 

 별다른 로그 없이 위와같은 내용만 표출하고 빌드가 안되는 않는 현상이 발생하여 찾아보니,


 현재 폰에 설치 되어있는 같은 패키지 어플을 삭제하고 다시 시도하니 정상동작하였습니다.


  출처 : http://answers.unity3d.com/questions/815011/unable-to-install-apk.html



출처: http://mbseo.wo.tc/163 [생존본능의 개발이야기]

반응형
Posted by blueasa
, |


[링크] http://travelerstory.tistory.com/128

반응형
Posted by blueasa
, |