Xcode 사용 하 여 Xamarin.iOS 앱 디버깅Debugging Xamarin.iOS apps with Xcode

Xcode를 사용 하 여 Xamarin.iOS 응용 프로그램의 일부 부분을 디버깅 하려는 시나리오가 있을 수 있습니다.There might be scenarios where you want to use Xcode to debug some parts of your Xamarin.iOS application. .NET 코드를 디버깅할 수 없습니다, 하는 동안 네이티브 코드를 디버깅 하 고 Xcode에서 네이티브 시각화 도우미 중 일부를 사용 하는 일을 할 수 계속 합니다.While you will not be able to debug the .NET code in it, you will still be able to debug native code and use some of the native visualizers in Xcode.

연습Walkthrough

Mac 용 Visual Studio에서 Xcode를 디버깅 하는 것에 대 한 기본 제공 지원이 있지만 이렇게 하려면 다음 단계를 사용할 수 있습니다.While there is no built-in support for Xcode debugging in Visual Studio for Mac, you can use the following steps to achieve this:

  1. Xamarin 앱에 있는 것과 동일한 번들 ID를 사용 하 여 Xcode iOS 앱을 만듭니다.Create an Xcode iOS app with the same bundle ID as the one in your Xamarin app.

    • 열어 Xamarin.iOS 프로젝트의 번들 식별자를 찾을 수 있습니다 합니다 Info.plist 파일:You can find your Xamarin.iOS project's bundle identifier by opening the Info.plist file:

      Info.plist를 편집Editing Info.plist

    • Xcode 프로젝트를 만들 때 또는 프로젝트의 대상을 선택 하 여 번들 식별자를 설정 합니다.In Xcode, you set the bundle identifier when creating your project or by selecting your target in the project:

      Xcode에서 번들 식별자를 설정Setting the Bundle Identifier in Xcode

  2. 앱을 자동으로 시작 하는 대신 시작 될 때까지 기다리는 Xcode 프로젝트를 변경 합니다.Change the Xcode project to wait for launch instead of launching the app automatically:

    • 열기는 구성표 편집 패널 선택 하 여 제품 > 체계 > 구성표 편집 또는 사용 하 여는 cmd⌘ + < 바로 가기 키입니다.Open the Edit Scheme Panel by selecting Product > Scheme > Edit Scheme or using the cmd⌘ + < keyboard shortcut.

    • 선택 된 실행 구성표 및 하면 오른쪽 패널 표시 됩니다 시작 옵션입니다.Select the Run scheme, and in the right panel you should see Launch options. 선택 실행 파일이 시작 될 때까지 기다리는 누릅니다 닫기합니다.Select Wait for executable to be launched and click Close.

      실행 파일이 시작 될 때까지 기다리는Wait for executable to be launched

  3. Xcode 프로젝트를 실행 합니다.Run the Xcode project.

    이 장치에서 더미 Xcode 앱을 설치할 하지만 시작 하지 않습니다.This will install the dummy Xcode app on your device, but will not launch it.

  4. Xamarin 앱을 실행 합니다.Run the Xamarin app.

    Xcode는 시작할 때 Xamarin 앱에 연결 해야 합니다.Xcode should attach to the Xamarin app when it launches.

주의 사항Caveats

Xamarin.iOS 앱에 약간 변경 될 때마다 시작 해야 합니다.You might have to make a small change to the Xamarin.iOS app every time you launch. 그렇지 않으면 앱을 빌드할 필요가 없습니다 Mac 용 Visual Studio는 검색 가 이미 설치 하 고 Xcode 더미 응용 프로그램을 통해 설치 되지 않습니다.Otherwise, Visual Studio for Mac will detect that the app doesn't need to be built and is already installed, and it won't reinstall it over the Xcode dummy app.

대안-lldb를 사용 하 여Alternative - using lldb

사용에 익숙한 경우 lldb 명령줄에서은 훨씬 간단한 솔루션입니다.If you are comfortable with using lldb from the command line, there's a much simpler solution.

셸에서 다음 명령을 입력 합니다.On the shell, type the following command:

touch ~/.mtouch-launch-with-lldb

지침을 얻게 됩니다 합니다 응용 프로그램 출력 사용할 수 있는 창에서 수행할 작업, 하지만 기본적으로, 응용 프로그램을 실행할 때 lldb 응용 프로그램을 디버깅 하려면 명령줄에서.You will get instructions in the Application Output window on what to do, but basically, when you run your application, you will be able to use lldb from the command line to debug your application.