[Delphi] 델파이 10.4 Sydney iOS 개발 환경 만들기

    728x90

    안녕하세요

    로로봉입니다 : )

    이번 포스팅에서는 델파이를 이용한 iOS 앱 개발 환경을 만들어 보겠습니다.

    제가 구글링 하기로는 iOS 개발에 대한 자료는 그렇게 많지 않은 것 같더라구요.

    델파이 - iOS 관련해서 궁금하신 점은 댓글 남겨주시면 제가 아는 선에서 성심성의껏 답변 달아드리도록 하겠습니다. ^^

     

    델파이 정보를 알려드리자면 델파이 10.4.1 최신 버전에서도 iOS SDK 버전은 13.7 버전까지만 지원하고 있다고 합니다.

    애플에서 계속해서 최신 SDK가 나오다보니 엠바카데로에서 업데이트 속도를 못따라가고 있는 것 같아 보이네요.

    결국 엠바카데로에서 현재 iOS SDK 버전인 14.3 버전을 사용하도록 패치를 하는 시점에는 애플에서 이미 더 높은 iOS 버전을 업데이트해서 최신 버전 SDK를 델파이에서 사용하기란 쉽지 않아 보입니다.

    이제 제가 어떤 식으로 iOS 13.7 SDK를 사용해서 델파이 개발을 할 수 있었는지 포스팅 해보겠습니다.

    큰 흐름은 아래와 같은 순서로 처리하였습니다.

    1) Xcode 11.7 버전으로 설치 (11.7 버전이 SDK 13.7 버전입니다.)
    
    2) 델파이 GetIt Package Manager에서 Apple Platforms Patch for RAD Studio 10.4.1 1.0 설치
    
    3) 맥북에 PAServer 설치
    
    4) iOS SDK 13.7 버전 델파이 설정
    
    5) Xcode 최신 버전 다운로드
    
    6) 애플 인증서 등록 (애플 개발자 계정 로그인)
    
    7) Xcode에서 테스트 앱 빌드 테스트
    
    8) 델파이에서 프로파일 연결하여 빌드 테스트

    1) Xcode 11.7 버전으로 설치하기

    AppStore에서는 항상 최신 버전의 Xcode를 다운받을 수 있습니다.

    하지만 저희는 델파이에서 지원되는 SDK를 다운받아야 되기 때문에 하위 버전의 Xcode를 설치해주어야 합니다.

    Apple사의 개발 사이트에 접속해 줍니다. 다운로드 받기위해서 애플 계정으로 로그인이 필요합니다.

    http://developer.apple.com/download/more

     

    로그인 - Apple

     

    idmsa.apple.com

    [ 그림 1-1 : Xcode Donwload 주소 입력 ]

    로그인 하시면 More Download 페이지가 표시되는 것을 볼 수 있습니다.

    좌측 검색창에서 Xcode를 입력하고 Xcode 11.7 버전을 다운받아 줍니다.

    [ 그림 1-2 : Xcode 11.7 검색 완료 ]

    기존에 Xcode가 설치되어 있다면 지우시고 11.7 버전을 다운받은 후에 설치해주시면 됩니다.


     


    2) 델파이 GetIt Package Manager에서 Apple Platforms Patch for RAD Studio 10.4.1 1.0 설치

    다음으로는 엠바카데로에서 Apple Platform에 대한 패치가 나왔기에 패치를 설치해주어야 합니다.

    GetIt Package는 델파이를 실행후에 상단 메뉴바의 Tools - GetIt Package Manager를 선택하여 진입이 가능합니다.

    상단 검색창에 apple만 검색해보아도 Apple과 관련된 패치가 검색되는 것을 볼 수 있습니다.

    [ 그림 2-1 : 델파이 GetIt Package Manager ]

    저는 첫번째 있는 패치를 다운받고 진행하였는데, 오늘에서야 보니 12월 16일에 또 다른 패치가 올라와 있네요.

    두가지 모두 패치해주어도 좋을 것 같습니다.

    패치를 하시면 엠바카데로에서 배포한 PAServer.pkg 파일이 패치되었다고 보시면 됩니다.


     


    3) 맥북에 PAServer 설치

    PAServer 패키지 파일은 델파이 기본 설치 경로인 C:\Program Files(x86)\Embarcadero\Studio\21.0\PAServer 폴더에 있습니다.

    GetIt Package를 이용해 패치된 PAServer21.0.pkg 파일을 USB를 이용해 맥PC로 옮겨 설치해줍니다.

    설치과정은 아래와 같이 다음을 눌러 진행하시면 쉽게 설치가 가능합니다.

    [ 그림 3-1 : PAServer 설치 1 ]
    [ 그림 3-2 : PAServer 설치 2 ]
    [ 그림 3-3 : PAServer 설치 3 ]


     

     

    [ 그림 3-4 : PAServer 설치 4 ]
    [ 그림 3-5 : PAServer 설치 5 ]
    [ 그림 3-6 : PAServer 설치 6 ]
    [ 그림 3-7 : PAServer 설치 7 ]
    [ 그림 3-8 : PAServer 설치 완료 ]

    설치가 완료되면 런치 화면에 PAServer가 생성된 것을 볼 수 있습니다.

    이미 기존에 PAServer가 설치되어있다고 건너띄지 마시고, 패치된 PAServer 패키지로 다시 설치해야 됩니다.


     


    4) iOS SDK 13.7 버전 델파이 설정

    이제 PAServer를 실행하면 아래와 같은 화면을 볼 수 있습니다.

    [ 그림 4-1 : PAServer 실행 ]

    Password 입력 없이 엔터키를 입력해주어 PAServer를 실행해줍니다.

    i 를 입력하시면 현재 가동되고 있는 PAServer의 IP 주소가 표시됩니다.

    IP를 확인하셨다면 델파이에서 iOS SDK를 설정하여 다운받아주면 됩니다.

    델파이 메뉴 상단에서 Tools - Options를 선택합니다. 좌측의 Deployment - Connection Profile Manager를 선택합니다.

    [ 그림 4-2 : PAServer 연결 ]

    저 같은 경우에는 하나의 맥을 이미 연결하였기 때문에 위와 같이 등록된 화면이 보이지만 신규로는 좌측 하단에 Add 버튼을 눌러주면 등록이 가능합니다.

    [ 그림 4-3 : Connection 추가 ]

    Next를 눌러줍니다.

    [ 그림 4-4 : Connection IP 등록 화면 ]

    PAServer에서 Password를 입력하지 않았기 때문에 IP만 입력하고 Test Connection 버튼을 눌러 연결이 원활한지 확인이 가능합니다.

    [ 그림 4-5 : Test Connection 성공 화면 ]

    Finish를 눌러 등록을 완료합니다.  PAServer와 연결만 됐을 뿐 아직 iOS SDK를 다운받지는 못한 상태입니다.

    좌측의 Deployment - SDK Manager를 선택합니다.

    [ 그림 4-6 : SDK Manager 화면 ]

    안드로이드를 개발해본 개발자라면 Android SDK가 추가되어 있을 겁니다.

    하단의 Add 버튼을 눌러 iOS SDK도 추가해줍니다.


     

    [ 그림 4-7 : SDK Add 화면 ]

    platform을 iOS Device 64bit로 선택하고 profile to connect는 방금전에 등록한 Connection을 선택하면 자동으로 SDK가 조회되어 표시됩니다. OK 버튼을 눌러 SDK를 받아주면 됩니다.

    [ 그림 4-8 : SDK 다운로드 ]
    [ 그림 4-9 : SDK 다운 완료 ]

    기다리시면 iOS 13.7 SDK가 모두 다운되는 것을 볼 수 있습니다.

    참고하셔야될 사항은 13.7 SDK를 받고 나서 이 시점에 필요한 프레임워크를 추가하여 업데이트 하시는게 중요합니다.

    앱 개발을 할 때 디버깅을 위해 최신 iOS 버전이 설치된 아이폰으로 테스트할 것이기 때문에 이후에 XCode를 최신 버전으로 올리게 됩니다.

    최신 XCode를 올리고 나면 다시 13.7 SDK를 받을 수가 없으며 다시 받기 위해선 최신 XCODE를 지우고 위의 했던 작업을 다시해 주어야 합니다. XCode는 용량이 커서 오랜 작업이기 때문에 SDK를 받을때 추가 프레임워크를 같이 받는걸 권장해드립니다.

    [ 그림 4-10 : Framework 추가 완료 화면 ]

    등록을 완료한 SDK를 선택하고 우측 상단의 노란색 추가 버튼을 누르면 Framework 명칭을 추가할 수 있습니다.

    [ 그림 4-11 : Framework 등록 ]

    OK를 누르면 추가되는 것을 볼 수 있으며 하단의 Update Local File Cache버튼을 눌러 업데이트를 해주시면 됩니다.

    자세히 어디에 사용되고 있는 SDK인지는 모르지만 왠만한 기능은 다 되도록 하기 위해 아래의 Framework를 추가하여 업데이트 하였습니다.

    1) ImageIO
    2) IOSurface
    3) AudioToolbox
    4) AVKit
    5) CoreAudio
    6) CoreMIDI
    7) MediaToolbox
    8) AdSupport
    9) SystemConfiguration
    10) UserNotifications

     


     

     

     

     

     

     


    5) Xcode 최신 버전 다운로드

    여기까지 SDK 13.7 버전에 대한 설정이 완료되었기 때문에 이제 최신 아이폰으로 테스트하기 위해서 Xcode를 최신 버전으로 설치해줍니다.

    기존 위에서 설치한 XCode는 삭제하시고 진행하셔도 됩니다.

    AppStore에 들어가서 XCode를 검색 후 설치해주시면 됩니다. 용량이 크므로 상당히 시간이 오래걸립니다.

    [ 그림 5-1 : AppStore Xcode 검색 결과 ]
    [ 그림 5-2 : Xcode 설치 완료 ]


    6) 애플 인증서 등록 (애플 개발자 계정 로그인)

    애플 인증서 등록은 수동으로 하는 방법이 있고, 자동으로 로그인하여 추가해주는 방법이 있습니다.

    개발자 인증서가 올바르게 설정되지 않아서 맞지 않는 경우 프로젝트에서 인증서를 찾지 못하거나 델파이에서도 프로파일을 제대로 찾을 수가 없습니다.

    가장 쉽게 인증서를 등록하는 방법은 Xcode의 기능을 사용하는 방법입니다.

    Xcode를 실행하고 상단의 메뉴 바에서 Xcode - Preferences... 를 선택해 줍니다.

    [ 그림 6-1 : Xcode 메뉴 선택 ]

    상단의 Accounts 를 선택하고 좌측 하단에 + 기호를 눌러줍니다.

    [ 그림 6-2 : Accounts 화면 ]

    Apple ID를 선택하고 Continue를 눌러줍니다.

    [ 그림 6-3 : Apple ID 선택 ]

    Apple ID 개발자 계정으로 로그인 해줍니다.

    [ 그림 6-4 : Apple 개발자 계정 로그인 ]

    Apple에 등록한 개발자 계정으로 로그인 한 경우 User와 Agent가 표시되는 것을 볼 수 있습니다.

     

     

    [ 그림 6-5 : 로그인 완료 ]

    Agent를 선택하고 하단의 Manage Certificates... 버튼을 눌러줍니다.

    표시되는 창에서 좌측 하단의 + 기호를 누르고 Apple Development를 선택하면 개발 인증서가 생성되는 것을 볼 수 있습니다.

    [ 그림 6-6 : 개발 인증서 생성 완료 ]

    그리고 배포용 인증서는 동일한 방법으로 +를 눌러주고 Apple Destribution 을 선택해주면 배포용 인증서가 생성되는 것을 볼 수 있습니다.

    [ 그림 6-7 : 배포용 인증서 생성 완료 ]

    이제 Apple 개발자 사이트인 http://developer.apple.com 에 접속하여 인증서가 잘 생성 됐는지 확인해 볼수 있습니다.

     

    Apple Developer

    There’s never been a better time to develop for Apple platforms.

    developer.apple.com

    사이트에 들어가서 우측 Account를 눌러줍니다.

    [ 그림 6-8 : Apple 개발자 사이트 ]

    계발자 계정으로 로그인 하고 좌측의 Certificates, IDs & Profiles를 눌러줍니다.

    [ 그림 6-9 : 개발자 계정 로그인 완료 ]

    좌측의 Certificaties 를 선택하면 Xcode에서 생성한 인증서가 표시되는 것을 볼 수 있습니다.

    [ 그림 6-10 : 개발 인증서 확인 완료 ]

     

     

     

     

     

     


    7) Xcode에서 테스트 앱 빌드 테스트

    인증서 생성을 마치고 Xcode에서 프로젝트가 인증서로 잘 실행 되는지 확인을 해주어야 합니다.

    Xcode를 실행하고 상단의 File - New - Project... 를 선택합니다.

    [ 그림 7-1 : Xcode Project 선택 ]

    기본으로 프로젝트를 생성하여 만들 것이기 때문에 Single View App 선택을 확인 후에 Next를 눌러줍니다.

    [ 그림 7-2 : 앱 방식 선택 ]

    프로젝트 명칭을 입력하고 Organization Identifier를 정해서 입력해줍니다.

    해당 Identifier는 앱의 아이디와 같은 역할을 하기 때문에 잘 원하는 구조로 입력을 해줍니다.

    보편적으로 com.(원하는 명칭)을 사용하여 만들어지는 프로젝트가 com.(원하는 명칭).(프로젝트 명) 이렇게 생성되게 됩니다.

    [ 그림 7-3 : 앱 정보 입력 ]

    빌드가 되는지만 확인할 용도이기 때문에 언어나 인터페이스는 크게 중요하진 않습니다. Next를 눌러 프로젝트를 저장해줍니다.

    [ 그림 7-4 : 프로젝트 저장 경로 지정 ]

    좌측의 생성된 프로젝트를 선택하고 두번째 탭인 Signing & Capabilities를 선택하면 아래와 같은 화면을 볼 수 있습니다.

    [ 그림 7-5 : 프로젝트 생성 완료 및 인증서 확인 ]

    이때 오류없이 Signing Certificate 가 Apple Development로 설정되어 있어야 인증서가 올바르게 인식된다고 볼 수 있습니다.

    좌측 상단의 타겟을 지정하고 빌드하면 아래와 같이 빈 화면으로 앱이 실행되는 것을 볼 수 있습니다.

    [ 그림 7-6 : 테스트 앱 실행 화면 ]

     

     

     

     

     

     


    8) 델파이에서 프로파일 연결하여 빌드 테스트

    이제 델파이를 실행하여 멀티 디바이스 FMX 프로젝트를 만들어 줍니다.

    [ 그림 8-1 : 멀티 디바이스 프로젝트 선택 ]

    선택되어 있는 빈 화면 그대로 OK를 눌러 프로젝트를 만들어 줍니다.

    [ 그림 8-2 : 빈화면 선택 후 프로젝트 생성 ]

    위에서 SDK를 다운받기위해 PAServer를 실행해둔 상태라면 프로젝트 타겟 플렛폼에서 iOS Device 64-bit를 선택합니다.

    맥북에 아이폰을 연결하고 Target 을 선택 후 우측 마우스를 눌러 Refresh를 누르면 연결되어 있는 아이폰이 표시되는 것을 볼 수 있습니다.

    [ 그림 8-3 : 아이폰 연결 ]

    ※ PAServer가 Connect되어 잘 연결되어 있는 상태에서 타겟 Refresh 및 컴파일이 가능합니다.

    이제 프로젝트의 옵션을 설정하고 빌드 테스트를 해보겠습니다.

    델파이 상단 메뉴에서 Project - Options 를 선택합니다.

    좌측 메뉴에서 Building - Delphi Compiler - Linking 을 선택하고 LD Linker 부분에 -ObjC를 추가해줍니다.

    이 설정은 컴파일 시에 오브젝트C를 연결해주어 컴파일 시키기 위함입니다.

    [ 그림 8-4 : LD Linker 설정 ]

    그리고 좌측 메뉴의 Application - Version Info 를 선택합니다.

    CFBundleIdentifier 부분에 Xcode와 같이 원하시는 패키지 명을 입력해주어야 합니다.

    com.(원하는 명칭).$(ModuleName) 이렇게 넣으시면 맨 뒤의 $(ModuleName)은 자동으로 프로젝트 명칭으로 들어가게 됩니다.

    [ 그림 8-5 : 프로젝트 Identifier 설정 ]

    이제 마지막으로 좌측 메뉴의 Deployment - Provisioning 을 선택해 줍니다.

    Provision Profile을 iOS Team Provisioning Profile: *로 선택하면 Developer Certificate에 개발 인증서가 표시됩니다.

    선택하시면 하단에 프로파일 및 인증서에 대한 내용이 표시되고 실제 Identifier가 어떻게 표시되는지 표시되는 것을 볼 수 있습니다.

     

     

    [ 그림 8-6 : Provisioning 설정 확인 ]

    이렇게 프로파일이 Xcode에서 봤던 것과 동일하게 잘 표시된다면 Save를 눌러 설정 값들을 저장해 줍니다.

    폼에 Text 컴포넌트를 올려서 잘 실행 되는지 보도록 하겠습니다.

    [ 그림 8-7 : 텍스트 컴포넌트 추가 ]

    텍스트 컴폰넌트를 올리고 "테스트 입니다!!!"를 입력했습니다. 이제 F9키를 눌러 디버깅 모드로 컴파일 해보겠습니다.

    [ 그림 8-8 : 컴파일 처리 중 ]

    컴파일이 완료되면 아래와 같이 델파이에서는 디버깅 모드가 전환 되며, 아이폰에는 앱이 실행되는 것을 볼 수 있습니다.

    [ 그림 8-9 : 앱 실행 화면 ]
    [ 그림 8-10 : 디버깅 모드 작동 중 ]

    iOS 앱을 개발하면서 데이터가 어디서 어떻게 전달되는지 디버깅 할 일이 많이 있습니다.

    그래서 꼭 이렇게 디버깅 모드로 컴파일 잘 되는지 확인해봐야합니다.

     

    델파이에서 iOS 앱을 개발하기 위해선 상당히 많은 작업이 필요하고, 또 알아야 될 사항도 많이 있지만 하다보면 인증서가 어떤식으로 구성되고 프로파일이 어떻게 인식되는지 천천히 알게 되는 것 같습니다.

    이것으로 델파이 iOS 개발 환경 구축을 마치겠습니다.

    다음 포스팅은 델파이로 개발한 iOS 앱을 AppStore에 배포하는 방법으로 찾아뵙겠습니다.

     

    좋아요♥ + 구독 부탁드립니다 : )

    728x90
    반응형

    댓글