Bundle ID com.OOOOOOO.OOOO~~~ 을 추가하면

유효한 인증서 프로비저닝이 제대로 뜨는게 정상인데

안뜨는 경우가 있었습니다..

일단 제대로 된 걸 가지고 있으면 빌드, 패키징이 됬었기때문에 ( 언리얼엔진 4.11에서..)


저는 단순한 엔진 버그인줄 알았는데

4.13에서 프로비저닝 안맞다고 오류가 나와서.. 몇가지 해보다가 알게된 한가지 경우입니다


Bundle ID 수정 하면

언리얼 엔진 에디터가 맥에서 인증서, 프로비저닝을 찾습니다.

그러다가 저는 아래와 같은 출력 로그 가 나오는 걸 봤습니다.


[638]LogTemp:Display: IPP ERROR: Application exception: System.ArgumentOutOfRangeException: Cannot be negative.
[638]LogTemp:Display: Parameter name: length
[638]LogTemp:Display:   at System.String.Substring (Int32 startIndex, Int32 length) [0x00000] in <filename unknown>:0
[638]LogTemp:Display:   at iPhonePackager.CodeSignatureBuilder.FindCertificates () [0x00000] in <filename unknown>:0
[638]LogTemp:Display:   at iPhonePackager.Program.Main (System.String[] args) [0x00000] in <filename unknown>:0


코드를 보니

                    string header = "-----BEGIN CERTIFICATE-----\n";
                    string footer = "-----END CERTIFICATE-----";
                    int start = CertToolData.IndexOf(header);
                    while (start != -1)
                    {
                        start += header.Length;
                        int end = CertToolData.IndexOf(footer, start);
                        Program.Log (" ... END - START before CertToolData.Substring : " + (end - start));
                        string base64 = CertToolData.Substring(start, (end - start));

뭔가 인증서 parsing 중 잘못된 것 같습니다


현재 쓰고 있는 맥에서 보니 iphone develop/distribution 인증서 외에 다른 것도 있는데 (날짜도 지난 것)

이 것들을 지워주니 언리얼 엔진 에디터에서 인증서/프로비저닝 목록이 보이게 됬습니다