Titanium 3.4.0 beta에서 iPhone 6/iPhone 6 Plus의 화면 크기에 임시 대응 #TitaniumJP

5931 단어 iOSTitanium

DEPRECATED (2014/09/17)



이 기사는 이미 과거의 정보가되었습니다. Titanium SDK 3.4.0 베타 배포 페이지이 업데이트되었으며 3.4.0.v20140916181713에서는 이미 iPhone 6/iPhone 6 Plus 화면 크기를 지원합니다. 이 버전의 SDK로 프로젝트를 생성하면 PROJECT_ROOT/Resources/iphone 일부 디렉토리에는 iPhone 6/iPhone 6 Plus에 해당하는 스플래시 화면이 있습니다.

Titanium CLI 3.4.0 RC 및 Titanium SDK 3.4.0 Beta 설치



설치
$ npm install -g [email protected]
$ titanium sdk install http://builds.appcelerator.com/mobile/3_4_X/mobilesdk-3.4.0.v20140916181713-osx.zip
$ titanium sdk select 3.4.0.v20140916181713
$ titanium
Titanium Command-Line Interface, CLI version 3.4.0-rc4, Titanium SDK version 3.4.0.v20140916181713
Copyright (c) 2012-2014, Appcelerator, Inc.  All Rights Reserved.
………

소개



요 전날 iPhone 6/iPhone 6 Plus가 발표되어 종횡비는 iPhone 5 시리즈와 같지만 해상도가 바뀌는 것을 알았습니다. iPhone 6 Plus에 관해서는 내부 해상도 1242x2208을 1/1.15로 다운스케일링 로 1080p의 디스플레이에 비추는 것 같고, 드디어 Dot by Dot의 표시로부터 탈각하게 되었습니다.

그런데, Titanium 앱에서는 iPhone 5 등장시, [email protected] 라고 하는 파일을 PROJECT_ROOT/Resources/iphone 에 설치하는 것으로 세로로 된 화면 사이즈에 대응시킬 수 있었습니다. 그렇다면 iPhone 6/iPhone 6 Plus에서는 어떻게 해야 할까요?

tiapp.xml + 이미지 배치로 임시 대응



Titanium 3.4.0 베타은 iOS 8을 지원하지만 여전히 iPhone 6/iPhone 6 Plus의 화면 해상도를 지원하지 않습니다. 앱을 iPhone 5 시리즈에 대응시키고 있는 경우는 종횡비가 같기 때문에, iPhone 6/iPhone 6 Plus 의 해상도에 「연장되어」 표시되었습니다.

이미 Appcelerator의 JIRA 에는 대응을 위한 티켓이 끊어져 있기 때문에, 조만간 대응된다고 생각합니다만, 3.4.0.GA 가 나와 있지 않은 상태로 3.5.0 으로 고칠 예정이 되어 있기 때문에 이미 Titanium의 iOS 앱을 시장에 출시하고 iPhone 6/iPhone 6 Plus의 해상도 표시를 지원하고 싶다면 기다리는 것은 어렵습니다. 특히 위탁 개발에서 Titanium을 사용한다고 한다면 힘들지 않을까 생각합니다.

그래서 tiapp.xml 의 편집과 이미지의 배치로 임시 대응해 봅시다. Titanium 3.4.0 beta로 프로젝트를 만들면 tiapp.xml에 ios 태그 섹션이 있습니다.

tiapp.xml
<ios>
    <plist>
        <dict>
            <!-- 略 -->
        </dict>
    </plist>
</ios>

dict 섹션에 다음 태그를 추가합니다.

tiapp.xml의 추가 요소
<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>8.0</string>
        <key>UILaunchImageName</key>
        <string>Default-667h</string>
        <key>UILaunchImageOrientation</key>
        <string>Portrait</string>
        <key>UILaunchImageSize</key>
        <string>{375, 667}</string>
    </dict>
    <dict>
        <key>UILaunchImageMinimumOSVersion</key>
        <string>8.0</string>
        <key>UILaunchImageName</key>
        <string>Default-736h</string>
        <key>UILaunchImageOrientation</key>
        <string>Portrait</string>
        <key>UILaunchImageSize</key>
        <string>{414, 736}</string>
    </dict>
</array>

그런 다음 두 개의 이미지를 준비합니다. 준비할 이미지의 파일 이름은
  • [email protected]
  • [email protected]

  • 입니다. 이 이미지를 PROJECT_ROOT/Resources/iphone 디렉토리에 넣습니다. 이것으로 임시 대응 완료입니다. 일단 Xcode 6 GM의 iPhone 6/iPhone 6 Plus 시뮬레이터에서 시작해 보면 iPhone 6/iPhone 6 Plus의 디스플레이 해상도를 지원하는 앱이 실행됩니다. 늘어나지 않기 때문에 문자와 UI 위젯은 깨끗하게 표시됩니다.

    주의사항



    이번의 방법은 옛날 내 블로그에 쓴 방법 의 유용합니다만, 이 방법에는 1개의 단점이 있어, Titanium 가 디폴트로 사용하는 Default.png 의 스플래시 스크린이 일순간 깜빡해 보입니다. 구체적으로는 tiapp.xml 에서 사용하도록 지정한 이미지가 스플래시 스크린으로 표시되지만, 그 뒤에서는 Default.png 도 표시되고 있는 것 같고, 스플래시 스크린이 사라지는 순간에 Default.png 버립니다.

    이것은 매우 괄호 나쁘기 때문에, 이번의 워크 어라운드를 실시하는 경우에는, 단색의 스플래쉬 스크린 (새하얀이든 새까까라든지)로만 가는 것이 좋을 것입니다.



    이번에 사용한 iPhone 6/iPhone 6 Plus용 스플래시 스크린 이미지입니다.


    iPhone 6
    iPhone 6 Plus



    좋은 웹페이지 즐겨찾기