Version: 2021.1
언어: 한국어
Android에서 크래시 버그 리포트
Windows

Chrome OS

이 섹션에는 Chrome OS 플랫폼 개발에 대한 정보가 포함되어 있습니다. 일반적으로는 Unity 사용자 매뉴얼의 모든 Android 문서는 Chrome OS에 적용되지만 이 섹션에는 고려해야 할 몇 가지 차이점과 새로운 사항이 있습니다.

Chrome OS 기기 설정

개발 환경에 있는 Google 개발자 문서를 따라야 합니다. 기기에 연결하려면 Android 디버그 브리지(adb)를 WiFi나 이더넷에 사용해야 합니다. 이렇게 하면 Unity가 더 쉽게 기기를 발견하고 연결할 수 있습니다.

Chrome OS를 위한 빌드

빌드 설정에는 두 가지 특정 Chrome OS 타겟인 x86x86–64가 있습니다. Chrome OS 기기의 전체 스펙트럼을 기본적으로 지원하려면 x86, x86–64 둘 다와 기존의 ARM 옵션을 선택합니다.

대신에 Android 애플리케이션을 실행할 수 있는 기기를 제한하려는 경우 Player 설정의 Target Devices를 사용합니다. 애플리케이션이 휴대폰, 태플릿, TV 기기에서만 실행되도록 제한하려면 Phones, Tablets, and TV Devices Only로 설정합니다. Chrome OS에서만 실행되고 다른 모든 Android 기기에서는 실행되지 않도록 하려면 Chrome OS Devices Only로 선택합니다.

Chrome OS 기기에서 빌드된 APK를 실행하려면 adb와 연결해야 합니다.

플레이어 설정(Player Settings)

기존 Android 플레이어 설정 외에도 다음과 같이 몇몇 Chrome OS 전용 플레이어 설정이 있습니다.

플레이어 설정 설명
Target Architectures 지원하려는 타겟 아키텍처를 선택합니다. 모든 Chrome OS 기기를 지원하려면 두 옵션을 모두 빌드 타겟으로 선택해야 합니다.
x86 (Chrome OS) 이 옵션은 Chrome OS, 32비트 x86에서만 지원됩니다.
x86–64 (Chrome OS) 이 옵션은 Chrome OS, 64비트 x86–64에서만 지원됩니다.
TargetDevices 이 설정을 사용하여 애플리케이션을 실행할 수 있는 기기를 제한합니다.
All Devices*|제약이 없습니다.| ||Phones, Tablets, and TV Devices Only| 스마트폰, 태블릿, TV 기기에서만 애플리케이션이 실행되도록 제한합니다.| ||Chrome OS Devices Only** 모든 스마트폰과 태블릿을 제외하고 애플리케이션을 Chrome OS 기기에서만 실행되도록 할 수 있습니다.
Chrome OS 입력 에뮬레이션 이 설정은 모든 마우스와 터치패드 이벤트를 터치스크린 이벤트로 전환합니다. 이 설정은 기본적으로 활성화되어 있습니다.

이 설정은 Android용으로 애플리케이션을 개발하여 추가 개발 없이 Chrome OS에서 작동하도록 하려는 경우에 유용합니다. 애플리케이션이 모든 마우스와 터치패드 이벤트를 완전히 수신하고 Chrome OS에서 해당 입력 기기를 완벽히 지원하게 하려면 이 설정을 비활성화해야 합니다.

기본적으로 Chrome OS에서 애플리케이션은 마우스 위치 업데이트(버튼을 누르지 않은 경우)와 마우스 또는 터치패드 스크롤 이벤트 및 버튼 누름을 모두 놓칩니다.

Unity 프로파일러 및 관리형 디버거 사용

관리형 디버거와 Unity 프로파일러용 Unity 애플리케이션의 자동 발견은 Chrome OS의 네트워킹 제한으로 인해 지원되지 않습니다. 둘 다 작동하지만 기기의 IP 주소를 통해 반드시 수동으로 연결해야 합니다. 자세한 내용은 애플리케이션 프로파일링 문서를 참조하십시오.

전체 화면 및 창

Chrome OS에는 데스크톱 윈도잉 사용자 인터페이스가 있으므로 Android 창 관련 플레이어 설정이 중요합니다. 이 설정을 사용하여 애플리케이션이 전체 화면 또는 창에서 시작하도록 허용하고 창의 시작 및 최소 크기, 크기 조정 가능 여부를 결정할 수 있습니다. 윈도잉 동작은 자동 회전을 통해 허용되는 방향에 의해서도 영향을 받습니다.

최적의 성능을 위해 세로 방향 또는 가로 방향을 허용해야 하지만 두 방향 모두 허용할 수는 없습니다. 또한 창 애플리케이션이 전체 화면이 아닌 경우 크기를 조정할 수 있도록 허용해야 합니다. 이는 회전과 윈도잉에 관련된 몇 가지 알려진 문제 때문이며 현재 이러한 모드에서 애플리케이션의 동작을 제한합니다.

마우스 및 터치패드 입력

Chrome OS 기기에는 노트북과 태블릿 형태를 포함한 다양한 폼 팩터가 있습니다. 일부 기기는 두 가지 모드를 모두 지원합니다. 많은 Chrome OS 기기가 노트북이거나 노트북 모드가 있기 때문에 터치스크린 기반인 표준 Android 앱에서보다 마우스, 터치패드, 키보드 입력이 더 중요합니다.

기본적으로 Chrome OS는 최종 사용자가 마우스나 터치패드를 사용하고 있더라도 터치스크린 입력을 에뮬레이트합니다. 즉 휴대폰과 태블릿을 염두에 두고 개발된 Android 앱은 기본적으로 Chrome OS 기기에서 사용할 수 있습니다. 이러한 새로운 입력 기기를 최대로 활용하려면 플레이어 설정의 Chrome OS Input Emulation을 비활성화해야 합니다. 그러면 이 옵션은 마우스와 터치패드 입력이 변경되지 않고 앱에 전달되도록 허용합니다. 즉 마우스 입력과 터치패드 입력을 처리하려면 Unity 입력 코드를 작성해야 합니다. 그러나 이렇게 할 경우 커서 포지션을 읽고 버튼 누름과 터치패드 클릭을 처리하며, 스크롤 이벤트를 읽을 수 있어야 합니다.

Android와 Chrome OS는 커스텀 커서를 지원합니다. 이는 다른 플랫폼에서와 마찬가지로 작동합니다.

UI 및 터치스크린 키보드

Unity에서는 몇 가지 UI 시스템을 사용할 수 있습니다. 일반적으로 Android에서는 입력 필드나 텍스트 필드가 선택될 때마다 사용자가 텍스트를 입력할 수 있도록 항상 가상의 온스크린 키보드가 나옵니다. Chrome OS에서는 사용 가능한 하드웨어 키보드가 있으면 온스크린 키보드는 나타나지 않거나 필요하지 않습니다. 하드웨어 키보드를 사용할 수 없는 경우 온스크린 키보드는 Android에서 평소와 같이 사용됩니다. 참고: 앱이 TouchScreenKeyboard를 열도록 특별히 요청하는 경우 Chrome OS에서와 동일하게 작동합니다.

여러 UI 위젯은 사용자의 마우스 커서가 위젯 위로 올라오면 강조 표시됩니다. Chrome OS에서는 마우스 포지션이 확실히 보고되는 경우에만 작동하며 이는 Chrome OS Input Emulation 플레이어 설정이 비활성화되어 있는지에 따라 달라집니다.

지원되는 CPU 및 기기

Unity는 노트북, 태블릿, 넷북 또는 데스크톱 형태인 모든 브랜드의 Chrome OS 기기를 지원합니다. Chromecast 기기는 지원되지 않습니다. 지원되는 최소 주요 Chrome OS 버전은 R89와 “안정적인” 릴리스 채널의 모든 후속 릴리스입니다. 다른 플랫폼과 마찬가지로 베타 및 개발 OS 빌드를 본인의 재량에 따라 사용할 수 있습니다.

알려진 문제

  • x86 및 x86_64 아키텍처는 Intel 프로세서가 탑재된 다른 Android 기기가 아닌 Chrome OS 기기에서 실행하는 경우에만 지원됩니다.
  • Tiny 프로젝트는 Chrome OS x86 및 x86–64 기기에서 기본적으로 작동하지 않습니다.
  • Unity 피직스 패키지에서 Havok 피직스는 Chrome OS에서 지원되지 않습니다.
  • 스크립트 디버깅 및 프로파일링은 이더넷을 사용하는 경우에만 지원됩니다.
  • 스크립트 전용 빌드는 지원되지 않습니다.
  • Android Studio에서 프로파일링 및 디버깅은 타겟 디바이스가 개발자 모드인 경우에만 작동합니다. 자세한 내용은 Chromium 문서를 참조하십시오.
  • 모든 방향에 자동 회전을 지원하는 애플리케이션은 때로 회전하지 않아야 할 때 회전하고 잘못된 해상도로 설정되는 등 여러 버그로 인해 어려움을 겪습니다.
  • 크기 조정이 불가능한 창은 clamshell 모드와 태블릿 모드를 모두 사용하는 Chrome OS 기기에서 제대로 동작하지 않습니다. 태블릿 모드에 들어가면 앱을 전체 화면으로 사용하다가 clamshell 모드로 돌아가더라도 원래 크기로 돌아가지 않습니다.
  • Chrome OS는 지원되는 Unity 에디터 플랫폼이 아닙니다.
  • 버스트는 x86 및 x86_64용 빌드와 호환되지 않습니다.
  • x86 및 x86_64는 Mono를 지원하지 않습니다. IL2CPP만 지원합니다.
  • Unity 비디오 플레이어를 사용 중인 경우 H.265 비디오는 Chrome OS 기기에서 지원되지 않습니다. H.264를 선택하는 것이 더 좋습니다.
Android에서 크래시 버그 리포트
Windows