My AI Smarteasy 사용자 정의 코파일럿 에이전트 – 일타 강사 저스틴 – WebView2Utilities

오늘은 여러분의 WebView2 앱 개발과 디버깅을 훨씬 더 쉽고 빠르게 만들어 줄 마법 같은 도구, ‘WebView2Utilities’에 대해 함께 파헤쳐 볼 거예요. 복잡해 보이는 개념도 저스틴이 옆에서 딱! 붙어 친절하게 설명해 드릴 테니, 걱정 말고 따라오세요! 우리의 목표는 이 강력한 도구를 자유자재로 활용해서 여러분의 개발 시간을 확 줄이는 겁니다! 🚀

개발자의 든든한 조력자, WebView2Utilities가 뭐예요? 🛠️

여러분, 자동차 정비소에 가면 정비사님이 차량에 진단기를 연결해서 엔진 상태나 문제점을 쫙 스캔하잖아요? 바로 이 ‘WebView2Utilities’가 여러분의 Microsoft Edge WebView2 앱을 위한 만능 진단기이자 든든한 정비 도구라고 생각하시면 돼요! 🚗💨

이 유틸리티는 여러분의 WebView2 앱을 개발하고 디버깅하는 데 필요한 모든 정보를 제공하고, 심지어 런타임 동작 방식까지 여러분 마음대로 조절할 수 있게 도와줍니다. 크게 세 가지 탭으로 구성되어 있는데, 각 탭마다 여러분의 앱을 “분석”, “관리”, 그리고 “튜닝”할 수 있는 강력한 기능들이 숨어있어요. 자, 여기 별표 세 개! 🌟🌟🌟 복잡한 오류와 씨름하던 지난날은 이제 안녕! 이 도구 하나로 고민을 시원하게 해결할 수 있답니다.

우리 앱의 상태를 한눈에! ‘호스트 앱’ 탭 파헤치기! 🕵️‍♀️

첫 번째 ‘호스트 앱’ 탭은 마치 자동차 대시보드와 같아요. 현재 실행 중인 WebView2를 사용하는 앱들이 어떤 상태인지 실시간으로 보여주거든요! 왼쪽 목록에서 앱을 선택하면 오른쪽에서 해당 앱의 상세 정보가 좌르륵 펼쳐집니다.

  • IL (Integrity Level): 앱이 관리자 권한으로 실행되는지, 아니면 앱 컨테이너 안에서 동작하는지 알려줘요.
  • SDK 버전: 앱이 로드한 WebView2 SDK DLL의 버전을 확인할 수 있죠.
  • UI 프레임워크 & API 종류: 앱이 어떤 UI 기술(WinForms, WPF, WinUI2, WinUI3)을 사용하고, 어떤 API(Win32, WinRT, .NET)를 쓰고 있는지 “추정”해 줍니다. 100%는 아니지만, DLL 정보 기반이라 꽤 정확한 편이에요.
  • 런타임 경로, 버전, 채널: 앱이 어떤 WebView2 런타임을 사용하고 있는지 알려줍니다. 만약 여기에 ‘Unknown’이라고 뜬다면, 아직 WebView2를 생성하지 않았다는 뜻일 수 있어요.
  • 사용자 데이터 폴더 & 브라우저 프로세스 PID: 앱이 사용하는 브라우저 프로세스의 고유 번호(PID)와 사용자 데이터 폴더 경로를 보여줍니다.

만약 처음에는 정보가 충분치 않다면, ‘Discover more Host Apps information (slower)’ 체크박스를 눌러보세요. 마치 정비사님이 엔진룸 구석구석을 꼼꼼하게 살피듯, 더 많은 프로세스를 검사해서 숨겨진 정보까지 찾아낼 수 있답니다! 🔍 그리고 문제가 발생했을 때는 ‘Create Report’ 버튼을 눌러보세요. 앱 정보와 로그 파일 등을 하나의 지퍼백(zip 파일)에 담아 문제 해결에 필요한 보고서를 만들어 줍니다. 이거, 시험에 나와요! 📝

어떤 엔진을 쓰고 있니? ‘런타임’ 탭으로 확인! 🚗 엔진룸 공개!

두 번째 ‘런타임’ 탭은 자동차 회사에서 생산하는 다양한 엔진 모델 목록을 보여주는 것과 같아요. 여러분의 시스템에 설치된 WebView2 런타임과 비-안정(non-stable) 버전의 Microsoft Edge 브라우저 설치 경로를 한눈에 볼 수 있습니다.

이 정보는 나중에 ‘오버라이드’ 탭에서 특정 런타임 경로를 지정할 때 아주 유용하게 쓰일 거예요. 마치 특정 튜닝을 위해 어떤 엔진 모델이 가능한지 미리 확인하는 것과 같죠. 게다가, 탭 아래쪽에는 추가 런타임을 설치할 수 있는 링크도 제공되니, 필요한 버전이 있다면 언제든 쉽게 설치할 수 있습니다. 이해되시죠? 👍

내 앱, 내가 원하는 대로! ‘오버라이드’ 탭으로 튜닝하기! ⚙️

자, 이제 오늘의 핵심 하이라이트, ‘오버라이드’ 탭입니다! 여기서는 여러분의 WebView2 앱이 런타임을 어떻게 찾고, 어떤 옵션으로 동작할지 직접 설정하고 튜닝할 수 있어요. 이건 마치 내 차의 성능을 최고로 끌어올리기 위해 맞춤형 튜닝을 하는 과정과 똑같습니다! 🏎️💨

  • Host app exe: 특정 앱에만 설정을 적용하고 싶다면 앱의 실행 파일 이름을 선택하고, 모든 앱에 적용하고 싶다면 ‘* (All other apps)’를 선택하면 됩니다. 마치 특정 자동차 모델에만 부품을 바꾸거나, 모든 자동차에 공통 부품을 적용하는 것과 같아요.

  • Runtime (런타임 선택):

    • Evergreen: 기본 설정입니다. 문서에 설명된 대로, 최신 WebView2 런타임, 베타, 개발, 카나리 채널 순서로 찾아서 사용합니다. 자동차가 항상 최신 엔진으로 자동 교체되는 시스템이라고 보면 돼요.
    • Evergreen with preview build: 미리보기 채널을 먼저 찾습니다. 가장 안정적이지는 않지만 최신 기능을 먼저 써보고 싶은 분들께 적합하겠죠?
    • Fixed Version: 특정 WebView2 런타임 경로를 직접 지정하는 옵션입니다. ‘런타임’ 탭에서 확인했던 경로를 여기에 넣으면 돼요. 내가 원하는 특정 모델의 엔진을 지정해서 장착하는 것과 같답니다!
  • Browser arguments (브라우저 인수): WebView2가 생성될 때 브라우저 프로세스에 추가적인 명령줄 스위치를 전달할 수 있어요. 마치 자동차에 내비게이션이나 블랙박스 같은 추가 기능을 장착하는 것과 같습니다. 예를 들어…

    • Auto open DevTools: WebView2가 생성될 때 개발자 도구를 자동으로 열어줘요. 디버깅할 때 일일이 열 필요가 없으니 완전 편리하겠죠? 🤩
    • Logging: 사용자 데이터 폴더에 크롬 로그 파일을 남기도록 설정합니다. 문제 발생 시 어떤 일이 일어났는지 추적하는 데 아주 중요해요!
  • User data path (사용자 데이터 경로): 앱이 사용할 사용자 데이터 폴더를 지정할 수 있습니다.

  • Launch RegEdit: 이 버튼을 누르면 재정의 키가 저장된 레지스트리 경로로 바로 이동하는 레지스트리 편집기가 열립니다. 전문가 모드라고 생각하시면 돼요! 🧑‍💻

이해되시죠? 감 오시나요? ‘Add New’와 ‘Remove’ 버튼으로 설정을 추가하거나 제거하고, ‘Host app exe’와 ‘Fixed Version’ 드롭다운 메뉴로 실행 중인 앱이나 설치된 런타임을 쉽게 선택할 수 있으니, 여러분은 이제 앱 튜닝의 마스터가 되는 겁니다! 🏆

오늘의 정리 📚

자, 오늘 저스틴과 함께 ‘WebView2Utilities’를 탐험해 봤는데요, 머릿속에 쏙쏙 들어왔을 거라 믿습니다! ✨

  1. WebView2Utilities는 WebView2 앱 개발과 디버깅을 위한 만능 도구입니다.
  2. 호스트 앱 탭에서 실행 중인 앱의 상태를 파악하고 런타임 탭에서 설치된 런타임을 확인하세요.
  3. 오버라이드 탭에서 런타임 동작 방식과 추가 옵션을 자유롭게 튜닝하여 앱을 최적화할 수 있습니다.

오늘 배운 내용들을 바탕으로, 여러분의 WebView2 앱에 어떤 문제가 있는지 직접 진단해보고, 필요하다면 ‘오버라이드’ 탭에서 설정을 변경해보는 연습을 해보는 건 어떨까요? 작은 시도가 큰 변화를 가져올 겁니다!

About the Author
(주)뉴테크프라임 대표 김현남입니다. 저에 대해 좀 더 알기를 원하시는 분은 아래 링크를 참조하세요. http://www.umlcert.com/kimhn/

Leave a Reply

*