728x90

분류 전체보기 334

[Unity] Java 또는 Kotlin 소스 파일을 플러그인으로 사용

Unity는 Android, iOS 둘다 지원하는 플랫폼이지만, SNS 로그인 같은 플랫폼 종속적인 개발을 위해 Android, iOS 등 Native 코드로 개발해야하는 부분이 있다. 이를 위해 이전에는 .java 또는 .kt 파일 파일들을 Android 라이브러리로 미리 컴파일해서 aar 파일을 Unity에 추가하는 방식을 사용했다. 이제는 Unity가 Java나 Kotlin으로 작성된 Android용 플러그인을 지원하여 Unity 프로젝트에 .java 또는 .kt 파일을 직접추가하고 Android 플레이어를 빌드할 때 컴파일할 수 있다. 아래 문서 참고. Java 또는 Kotlin 소스 파일을 플러그인으로 사용 - Unity 매뉴얼 이제 Unity가 Java나 Kotlin으로 작성된 Android용..

[Unity] Unity SpecialFolders

Unity가 특별한 목적을 위해 예약한 폴더 이름들이 있다. 이런 Special Folders를 임의로 바꿔서 사용하면 오류를 발생할 수 있다. 공부해두자 ~! Unity - Manual: Special folder names Batching with the AssetDatabase Special folder names You can usually choose any name you like for the folders you create to organise your Unity project. However, there are folder names that Unity reserves for special purposes. For example, you must place E docs.unity3d.com

[Git Error] fatal: Cannot setup tracking information; starting point 'branch' is not a branch.

에러: 로컬 브랜치 없이 원격 브랜치를 추적하려고 했다가 만난 에러. fatal: Cannot setup tracking information; starting point 'branch' is not a branch. 원인: 로컬 브랜치가 원격 브랜치를 추적하지 못해서 그런 것. 즉 원격 브랜치를 추적할 로컬 브랜치가 없음. 해결책: 원격 브랜치 연결을 끊었다가 다시 연결해주며 된다. #1. 연결되어 있는 원격 브랜치 확인 git remote -v #2. 연결되어 있는 원격 브랜치 끊기 git remote remove [원격 브랜치 이름] #3. 잘 끊겼는지 확인 git remote -v #4. 원격저장소 주소를 이용해 원격 브랜치 다시 연결. git remote add remote [원격저장소 주소] ..

[Xcode13 Archive Error] Build 중 framework 에러

에러) xcode Building for iOS, but the linked and embedded framework 'opencv2.framework' was built for iOS + iOS Simulator 원인) framework가 iOS 실물 기기와 시뮬레이터를 모두 포함하는 사전 빌드된 fat framework를 연결하기 때문에 작업 공간이 유효하지 않아서 생기는 오류라고 한다. 검증된 workspace 임을 수동으로 확인해주고 빌드하면 문제는 발생하지 않는다. 해결방법) Build Settings -> Build Options -> Validate Workspace 을 true로 변경해준다. Build Options에 안보이면 카테고리를 All로 바꾸고 다시 찾아보기~ 참고 Q&A) Bui..

[Jenkins iOS Build] Jenkins Command Line Tool 설정

altool로 터미널로 ipa 파일을 올리도록 설정하러면 Jenkins 설정에서 Command Line Tool 에 아래 구문 형태를 적어주어야 한다. xcrun altool --upload-app --type ios --file ipa파일 --username 아이디 --password 패스워드 ex) xcrun altool --upload-app --type ios --file "/Users/username/.jenkins/workspace/~~~.ipa" --username "~~~" --password "~~~" 앱스토어에 앱 업로드하기 XCode 11 부터는 Application Loader를 더이상 지원하지 않기 때문에, 이제 앱을 업로드하는 방법은 크게 두 가지로 볼 수 있습니다. medium..

[Xcode AppStore Upload Error] Signing, Profiles, Certificate Error

에러) 자동 서명을 사용하고 Organizer를 통해 AppStore에 업로드하려고 할 때, 기존에 잘 되던 계정에 에러가 나면서 진행되지 않았다. 원인 및 해결책) Xcode 13 버전 부터 빌드 시, 앱을 배포하려는 사용자에게 클라우드 서명 권한을 줘야 한다. 즉, AppStoreConnect의 '사용자 및 액세스' 메뉴에서 클라우드 서명 권한 체크 ! 참조) Automatic signing doesn't work wit… | Apple Developer Forums Alright thanks for the info, looks like the an Admin user-role has to enable the Cloud signing permission to the users that want to ..

[Xcode Build Error] bitcode bundle could not be generated.....

[에러] Xcode Build Error 시 bitcode 관련 에러가 났다. bitcode bundle could not be generated because '~.../Libraries/ADL-Plugins/Plugins/iOS/liblz4.a(lz4w.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build for architecture armv7 [원인] Xcode 에서 Bitcode란 Xcode에서 Bitcode를 포함한 iOS 앱을 AppStore에 전송하면, AppStore 에서 사용자의 디바이스에 따라 최적화된 ..

[Xcode Build Error&Solution] 'release' is unavailable: not available in automatic reference counting mode

Xcode Build 중 만난 에러~ 'release' is unavailable: not available in automatic reference counting mode ARC forbids explicit message send of 'release' release 구문이 안먹는 에러였는데, 원인은 ARC(Automatic Reference Counting) 모드가 on 된 상태로 컴파일되었기 때문이다. 즉, ARC가 아닌 MRC 모드로 바꿔주어야 한다. [해결책] MRC 모드로 바꾸는 방법은 Compile Flag로 파일별로 ARC 모드를 비활성화 하거나 Xcode 전체에서 비활성화 할 수 있다. 전자는 build 타겟 대상을 선택하고 Build Phases > Compile Sources를 활..

[iOS Build Error] xcode-select: error: tool 'xcodebuild' requires Xcode....

에러: xcode 를 jenkins로 build 하는 과정에서 만난 에러. xcode-select: error: tool 'xcodebuild' requires Xcode, but active developer directory '/Library/Developer/CommandLineTools' is a command line tools instance 원인: build 중, command line tool을 사용하지 못해서 생긴 에러이다. 해결책: command line tool 설치 후, command line tool 실행가능 상태로 셋팅한 뒤 다시 빌드를 시도한다. xcode-select --install # Install Command Line Tools if you haven't already..

[C++] 1차원, 2차원 배열 동적할당 및 해제

코딩을 할 때, 메모리를 효율적으로 사용하기 위해 동적할당을 사용하곤 합니다. 원하는 만큼 메모리를 할당하고 사용이 끝나면 메모리를 해제해서 메모리를 관리하는 것이지요. 참고로 정적변수들은 stack 메모리에 생성되고 동적변수들은 heap 메모리에 생성됩니다. stack영역은 컴파일 동안 메모리가 결정되고 CPU에 의해 관리되어 함수 호출이 완료되면 사라집니다. 선입선출구조로. heap영역은 런타임 동안 메모리가 결정되고 프로그래머가 요구한 만큼 OS가 빈공간을 찾아서 할당해줍니다. 선입선출 구조가 아니고 유동적으로 할당/해제되므로 꼭 해제가 필요합니다. (메모리가 조각조각 배분되어 메모리 누수가 발생할 수 있음) 1. 1차원 배열 동적할당 int* arr = new int[5]; //크기가 5인 일차원..

728x90