Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

일렉트론 삽질기

4,187 views

Published on

일렉트론 삽질기

일렉트론으로 실제프로그램을 만들면서 삽질했던 내용을 소개하고 그 해결방법을 공유해 봅니다.

Published in: Technology
  • Be the first to comment

일렉트론 삽질기

  1. 1. 일렉트론 삽질기 엔트리교육연구소 김정용
  2. 2. 소개 엔트리교육연구소 엔트리 오프라인 에디터 웹 서비스를 오프라인으로 변환 하드웨어 연결프로그램 오프라인 전용 서비스
  3. 3. 목차 원래 발표는 Electron-Builder 만 하려고 했는데… 프로그램들을 만들면서 발견했던 문제점과 그 처리 방법을 공유
  4. 4. 첫번째 삽질(문제편) 가끔씩 성능이 너무 떨어져요! 절망적인 현장의 반응
  5. 5. 첫번째 삽질(문제편) 엔트리 에디터 하드웨어 연결 프로그램 하드웨어 장치 (아두이노 등) WebSocket SerialPort 심각한 느려짐 발생 심각한 느려짐 발생
  6. 6. 첫번째 삽질(해결편) 이유는 backgroundThrottling !!! 해결 방법은 webPreferences !!!
  7. 7. 두번째 삽질(삽질편) 이미지가 나오지 않아요! 업로드가 제대로 되지 않아요!
  8. 8. 두번째 삽질(해결편) 문제는 windows의 경로 문제 (-역슬래시)와 OSX, Linux, Windows간 저장 파일을 공유 하면서 권한문제가 발생 OSX LinuxWindow
  9. 9. 두번째 삽질(해결편) Css 적용은 항상 역슬래시()는 슬래시(/)로 변경 파일 및 폴더 생성 mode옵션 항상 사용하여 적절한 권한 생성
  10. 10. 세번째 삽질(문제편) Mp3를 다루면 프로그램이 죽어요
  11. 11. 세번째 삽질(해결편) 이유는 확실치 않으나 FFMPEG 라이브러리 문제로 보여짐 처리 방법은 64비트 운영체제에서는 64비트로 동작시키면 문제 해결 32비트와 64비트 둘다 만들어서 배포
  12. 12. 네번째 삽질(문제편) README등 파일 추가시 OSX 빌드 오류 발생
  13. 13. 네번째 삽질(해결편) 이유는 electron-builder경로 지정문제 오류 성공
  14. 14. 다섯번째 삽질(문제편) Windows에서 빌드 실패의 반복
  15. 15. 다섯번째 삽질(해결편) Electron-Builder의 고질적인 문제 (비동기 동작문제) 버전이 올라가면서 나아지고 있음 완전한 해결 방법은 CI활용 (Windows – Appveyor / Osx – travis CI)
  16. 16. Electron-Builder의 추가 문제점 일부 Windows PC에서 알수없는 스퀘럴 설치 오류 발생 (설치중 오류 메시지 없이 그냥 중단) 스퀘럴 이용 설치시 설치 진행상황이 표시가 안됨 (사용자 불편 접수) 통상적 설치에 익숙한 사용자들 32비트 환경의 사용자가 너무 많은 것도 문제
  17. 17. 결국은 OSX – Electron-Builder사용 (.dmg를 이용하기때문에 문제 없음) Windows – Electron-Builder를 이용하여 패키징만 하고 NSIS로 설치 파일 생성
  18. 18. 팁? 일렉트론에서 사용 가능하도록 노드모듈 빌드 node-pre-gyp 설치 node-pre-gyp configure node-pre-gyp build node-pre-gyp rebuild --target_arch=“arch선택” --target=“일렉트론버전” --target_platform=“플랫폼” --runtime=electron --dist-url=https://atom.io/download/atom-shell 윈도우 32비트 예제 node-pre-gyp rebuild --target_arch=ia32 --target=1.1.1 --target_platform=win32 --runtime=electron --dist-url=https://atom.io/download/atom-shell
  19. 19. 앞으로 계속할 삽질… 자동업데이트 기능 개발 ES2015와 React 적용 테스트 자동화(Spectron – 현재는 샘플 적용) CI를 이용하여 테스팅 및 배포 자동화 적용
  20. 20. 감사합니다

×