Crosswalk(크로스워크)는 사실상 안드로이드용 Google Chrome 브라우저가 앱의 포장지로 변모한 것입니다. 실제 브라우저에 기반해 있기 때문에 Web GL, Web Audio, WebRTC 멀티플레이어 등 Chrome의 모든 기능들을 지원합니다.
Crosswalk 호환성
Crosswalk는 안드로이드용 Chrome에 기반해 있으므로, 그와 같은 기능들을 지원합니다. 안드로이드용 Chrome과 마찬가지로, 안드로이드 4.0 이상의 기기들만을 지원하지요. 하지만 이는 압도적으로 대다수의 기기들이고 곧 오래된 버전들은 완전히 사라질 것입니다.
또 Crosswalk에는 안드로이드용 Chrome 브라우저와 비교할 때 몇몇 작은 변경점들이 있습니다.
명백하게, 주소창과 탭 기능이 없습니다. 게임이 고유 앱처럼 전체화면으로 실행됩니다. 이는 Browser object의 Request fullscreen action을 사용할 필요가 없다는 뜻이기도 합니다.
안드로이드용 Chrome은 오직 터치 이벤트에서만 음악 재생을 시작할 수 있습니다. Crosswalk는 어느 때든지 음악 재생을 시작할 수 있습니다.
Browser object의 On back button, On menu button 그리고 On search button이 이러한 버튼들이 있는 기기에서 In Crosswalk를 트리거합니다. 안드로이드용 Chrome에서는 트리거하지 않습니다.
Crosswalk를 위한 테스트 (Testing for Crosswalk)
게임이나 앱을 테스트할 때 가장 쉬운 방법은 안드로이드용 Chrome 브라우저에서 돌려보는 것입니다. Preview over Wifi를 사용하면 빠르고 간편하게 다른 기기에서 테스트할 수 있습니다. Crosswalk는 안드로이드용 Chrome에 기반해 있기 때문에, 기능들의 명칭과 동작에 있어 매우 유사하게 작동할 것입니다. 위 Crosswalk 호환성에서 언급된 차이점들만 제외하면요.
나의 앱 만들기 (Building your app)
앱을 만들려면, Intel XDK를 사용해야 합니다. 링크를 클릭해 XDK를 다운로드하고 설치합니다.
일단 설치했으면, XDK를 실행합니다. 계정이 없으면 새 계정을 등록하고(Register a new account), 로그인합니다.
Construct 2에서 내 프로젝트를 내보내기(export)하면서 Cordova export 옵션을 선택합니다. (Crosswalk가 Cordova 호환 플랫폼이기 때문입니다)
Intel XDK에서, Projects탭을 엽니다.
Start A New Project를 누릅니다.
Import an Existing HTML5 Project를 선택합니다.
Construct2에서 내보냈던 폴더를 Import Project from의 위치로 선택합니다.
XDK 프로젝트를 위한 이름을 입력하고 Create를 누릅니다.
Projects 탭으로 돌아갑니다. 내 앱 세팅이 여기에 나타납니다.
Build settings 섹션을 확장하고 Android-Crosswalk 탭으로 전환합니다. 여기서 내 앱의 모든 세부사항들, 즉 앱 ID, 이름, 버전, 전체화면 모드, orientation lock, 또 Crosswalk 베타버전 사용에 관한 사전동의(opt-in) 등을 명시할 수 있습니다. App Version Code 필드는, 앱의 업데이트된 버전을 Google Play에 업로드할 때, 매번 값을 하나씩만 올려야 합니다. 그렇지 않으면 새로 업로드한 APK들이 거부됩니다.
여기까지 됐으면, Plugins and permissions 섹션을 확장합니다. 여기서 앱의 요구 권한을 지정할 수 있습니다. 이것은 꼭 신중하게 정하도록 하세요. 너무 많은 권한들을 요구하면, 앱이 수상하게 보일 수 있습니다. 다음과 같이 특별히 필요한 경우가 아니면 전부 "No"로 설정하는 게 좋습니다.
Accelerometer (Touch object에서 장치 모션(device motion)을 사용하는 경우)
Camera and Capture (카메라나 마이크 입력이 쓰이는 User Media object를 사용하는 경우)
Compass (Touch object에서 장치 방향(device orientation)을 사용하는 경우)
Device 는 항상 enabled여야 합니다.
Geolocation (Geolocation object를 사용하는 경우)
Vibration (notification) (Browser object의 'Vibrate' action을 사용하는 경우)
Splashscreen (로딩 중 스플래시 스크린을 표시하고자 할 경우)
서드파티 플러그인을 위한 추가적인 옵션이 필요할 수 있습니다. 플러그인 관련 항목을 확인해 보세요.
Launch icons and splash screens 섹션에서는 다양한 크기의 아이콘과 스플래시 스크린 이미지를 업로드할 수 있습니다. 아이콘들은 반드시 4가지 해상도를 모두(96x96, 72x72, 48x48, 36x36) 넣어야 합니다. 그렇지 않으면 어떤 기기에서는 앱이 Cordova 기본 아이콘으로 표시되는 수가 있습니다. 스플래시 스크린을 넣는 경우에도 마찬가지입니다.
여기까지 됐으면, Build 탭으로 가서 Crosswalk for Android의 Build 버튼을 누르세요.
먼저 프로젝트를 업로드한 후 빌드되는 데 몇 분 정도 걸릴 수 있습니다. 하지만 일단 끝나면, .APK가 다운로드 가능하게 됩니다. 또 XDK 계정과 연계된 이메일 주소로 다운로드 링크가 메일로 보내지고, 추가적으로 다른 메일주소로도 링크를 보낼 수 있습니다. APK를 실제 기기에서 테스트하는 간편한 방법은 그 기기에서 액세스할 수 있는 이메일 계정으로 링크를 보내는 것입니다. 그러면 그저 그 안드로이드 기기에서 메일을 확인하고, 링크를 클릭해, APK를 다운로드하고 설치하기만 하면 됩니다.
다운로드 옵션에는 x86과 ARM build 두 가지가 있습니다. 대다수의 안드로이드 기기는 ARM이지만, 최대한 넓은 범위의 기기 지원을 보장하기 위해 꼭 두 가지 버전 모두를 제출하세요. 만약 자신이 갖고 있는 기기에서만 테스트한다면, 기기 사양을 확인해 ARM 프로세서인지 x86 프로세서인지 보거나, 아니면 그냥 두 가지 APK를 다 시도해보세요. 이것으로 Google Play Store에 제출할 나의 APK가 준비됩니다! 이제 Google Play Developer Console에서 어울려나갈 수 있습니다.
더 많은 도움말이 필요하거나 Crosswalk에 관해 궁금한 점이 있으면, Intel HTML5 tools forum에도 방문해 보세요.