Firefox OS에서 packaged 앱을 설치하는 방법 – 옵션들과 툴들

제 생각에 이 글은 개발자에게 packaged app들을 설치하는 옵션을 보여주고,  나아가 앱들을 실제 Firefox OS기기에 설치하는 것을 보여주는 좋은 시간이라 생각합니다. (만약 여러분에게 새로운 내용이라면, 많은 정보는 Open Web apps에 있습니다.)

packaged app은 무엇인가?

packaged app은 여러분의 앱에 있는 모든 자료들이 하나의 파일로 압축되어 있는 것입니다. 그리고 기기에게 바로 설치됩니다. 즉, 모든 파일들을 인터넷 연결이 필요없이 직접 접근가능합니다.

다른 장점은 만약 여러분이 일부 권한이 필요한 API를 사용할 필요가 있다면, (웹의 어느곳에 호스팅 되는 코드는 당연히 기기의 민감한 APIs를 접근할 수 없기 때문에, 이러한 보안상의 이유로) packaged 앱이 필요합니다.

다른 API들은 ‘웹 레이어를 유능하게 만들기 위한 WebAPIs 사용‘에 서술되어 있고, 각 API의 권한들은 App 권한에 있습니다.

Firefox OS 시뮬레이터에서 테스팅하기

Firefox OS 시뮬레이터(3.0버전의 최신 기능)에 packaged 앱으로 여러분의 앱을 설치할 수 있는 옵션을 가질 수 있습니다.

Simulator Dashboard에 Add Directory 버튼이 있습니다. 여러분이 앱을 설치할 때, 앱의 manifest.webapp를 가리키고 나면, 자동적으로 packaged 앱으로 설치됩니다. 너무나 간단해요!

image

현재 Firefox OS 시뮬레이터에 모든 API들이 지원되지는 않습니다. 하지만 좋은 시작입니다.

여러분이 이 등록 버튼을 누를때, 여러분의 앱이 동작하고 있다면 재시작될 것이고 동작하지 않았다면 시작될 것입니다. 만약 “update” 버튼을 누른 뒤 컨텐츠나 manifest가 업데이트가 되지 않으면, 어딘가에 멈춤 에러가 발생했고, Simulator Dashboard에 보이게 됩니다.

시뮬레이터에서 기기로 밀어내기

이전에 설명했듯이, version 3.0 of the Firefox OS Simulator의 새로운 특징들 중 하나는 기기로 밀어내기 기능입니다.

만약 Firefox OS 시뮬레이터를 사용할 때 여러분이 Firefox OS기기를 가지고 있고 다면, Simulator Dashboard의 각각의 앱 옆에 Push 버튼을 얻을 수 있습니다.

image

그러면 여러분은 앱을 설치하기 위해 기기에 그 요청을 받아야 합니다.

image

수동 단계들

  • 한번 여러분이 기기로 앱을 밀어내면, 갱신된 컨텐츠를 얻기 위해 앱을 수동으로 지우고 재시작을 한번 해야 합니다.
  • 만약 manifest에 app 이름이나 방향등을 수정을 한다면, 이 변경이 반영되기 위해 여러분은 운영체제를 재부팅해야 합니다.

생각해 봐야 할 것들

  • 기기에서 원격 디버깅을 활성화하여야 합니다.
    Settings > Device information > More Information > Developer > Remote debugging
  • 윈도우즈 지원을 위해 필수 드라이버를 설치해야 하고, 그 밖의 최신 Firefox OS 시뮬레이터를 사용해야 합니다. (현재는 3.0 preview 입니다).
  • 리눅스(적어도 우분투)에서 여러분은 root 권한으로 /etc/udev/rules.d/51-android.rules 를 생성해야 하고, 그 다음 Android’s Setting up a Device for Development에서 설명되어 있는것 처럼, 기기를 위해 제조사 특별한 엔트리를 추가합니다. 우리의 테스트 기기들 중 하나를 예로 들면:
    SUBSYSTEM=="usb", ATTR{idVendor}==" 19d2", MODE="0666", GROUP="plugdev"
  • 최신 버전의 Firefox OS를 가졌는지 확인하시기 바랍니다. (특히 bug 842725와 같은 최신 버그들 때문입니다.)

make-fxos-install 사용과 커맨드 라인

만약 여러분이 좋은 작업의 흐름을 설립하고 터미널을 좋아한다면 Harald Kirschnermake-fxos-install를 추천합니다. 이건, 기기에 쉽게 직접 앱을 밀어 넣는 커맨드 라인 툴입니다.

1 단계

2 단계

make-fxos-install 저장소에서 코드 복재하기.

3 단계

커멘드 라인에서 make-fxos-install 폴더로 이동하기.

설치하기 위한 앱 종류 설정

여러분에게 packaged와 hosted 두 가지 옵션이 있습니다. 여러분은 make 명령어를 호출하고 여러분의 앱의 폴더를 가리키면 됩니다.

예를 들면:

make FOLDER=../Firefox-OS-Boilerplate-App packaged install

그렇지 않으면:

make FOLDER=../Firefox-OS-Boilerplate-App hosted install

기기에서 팝업을 승락하면 그게 전부입니다!

image

packaged 앱은 여러분의 앱에 모든 파일을 가지는 것과 반대로 hosted 앱은 단지 2개의 파일만 설치될 것입니다:

  • manifest.webapp 파일
  • metadata.json 파일

그리고 metadata.json에서 manifestURL 파라미터에 앱이 구동되는 위치만 설치하면 됩니다.

수동 단계들

위에서 이야기한 Push to Device의 단계들을 적용합니다:

변경을 보기 위해 앱을 닫고 재시작하고, manifest를 갱신할 경우 OS를 재부팅합니다.

시험해 보기!

위의 솔루션들을 시험해 보고 여러분에게 어떤 방법이 잘 맞는지 확인해 보세요. (실제 기기에 접근하기까지 그리 많은 시간이 걸리지 않을껍니다.) 그리고 저희에게 어떤것이 동작하고 동작하지 않는지를 알려줘세요. 여러분의 피드백을 사랑합니다.

작성자: musart

musart가 작성한 문서들…


댓글이 없습니다.

댓글 쓰기