메인 콘텐츠로 바로가기
튜토리얼

CapacitorJS를 사용하여 플랫폼을 초과하는 앱을 개발하는 단계별 안내서

CapacitorJS를 사용하여 Android, iOS 및 웹 (PWA)에서 단일 자바스크립트 코드베이스를 사용하여 플랫폼을 초과하는 애플리케이션을 만들려면 어떻게 해야 하나요?

마틴 도나디유

마틴 도나디유

콘텐츠 마케터

CapacitorJS를 사용하여 플랫폼을 초과하는 앱을 개발하는 단계별 안내서

모바일 애플리케이션 개발의 진화하는 세계에서, 프로그레시브 웹 애플리케이션 (PWA)의 부상은 새로운 플랫폼을 초과하는 런타임을 위한 길을 열었습니다. 이 런타임은 웹 기반 애플리케이션을 앱 스토어에 존재하도록 허용합니다. 이에 따라 native code에만 의존하지 않습니다. 이러한 기술 중 하나가 바로 CapacitorJS입니다. 이 기술은 Android, iOS 및 웹에서 단일 자바스크립트 코드베이스를 사용하여 단순한 웹사이트를 애플리케이션으로 배포할 수 있도록 합니다. 이 접근 방식은 개발 비용을 크게 줄이고 코드 작성 효율성을 크게 향상시킵니다.

이 안내서에서는 pure JavaScript를 사용하여 애플리케이션을 만들고 CapacitorJS를 사용하여 native 플러그인을 활용하는 방법에 대해 다룹니다. 2021년 pure JavaScript 앱 개발에 대한 리소스를 찾는 어려움에도 불구하고, 우리는 pure JavaScript 앱 개발에 대한 전반적인 가이드를 제공하기 위해 있습니다.

‣ 사전 요구 사항

시작하기 전에 다음 도구가 설치되어 있어야 합니다:

  • Node.js (v14.16.1) 또는 그 이상
  • NPM (v7.6.2) 또는 그 이상
  • Android Studio Android 앱 개발을 위해
  • Xcode iOS 앱 개발을 위해 (macOS 전용)

주의: iOS 앱 개발은 macOS 기기에서만 가능합니다.

‣ Capacitor 프로젝트 설정

Capacitor 애플리케이션을 만들려면, 원하는 폴더로 이동하여 터미널에서 다음 명령어를 실행하세요:

npm init @capacitor/app

설치 패키지와 프로젝트 설정을 위해 안내를 따라주세요. Capacitor v3에서는 프로젝트 디렉토리가 다음과 같이 보일 것입니다:

www/
  css/
    style.css
  js/
    capacitor-welcome.js
  index.html
  manifest.json
.gitignore
capacitor.config.json
package.json
README.md

초기 설정이 완료되면, 다음 단계로 진행할 준비가 되었습니다.

‣ 프로젝트 구조 변경

Vite를 사용하여 JavaScript 파일을 번들링하기 위해, 프로젝트 구조를 변경해 보겠습니다:

  • 메인 디렉토리에 새로운 폴더를 생성하세요. 메인 디렉토리에 새로운 스크립트 파일을 생성하세요. src ‣ __CAPGO_KEEP_0__ 프로젝트 설정
  • ‣ __CAPGO_KEEP_0__ 프로젝트 설정 ‣ __CAPGO_KEEP_0__ 프로젝트 설정 index.js in src/.
  • Create Capgo의 Vite 설정 파일을 vite.config.js main 디렉토리에서
  • Remove 파일 capacitor-welcome.js Your new folder structure should resemble: www/js/.

‣ Pure JavaScript로 적응하기

src/
  index.js
www/
  css/
    style.css
  js/
  index.html
  manifest.json
.gitignore
capacitor.config.json
package.json
README.md
vite.config.js

Let’s modify some files to work with pure JavaScript:

www/index.html

script imports를 제거하세요

  1. Remove the script imports for 아이오닉 PWA 요소 __CAPGO_KEEP_0__
<script type="module" src="https://unpkg.com/@ionic/pwa-elements@latest/dist/ionicpwaelements/ionicpwaelements.esm.js"></script>
<script nomodule src="https://unpkg.com/@ionic/pwa-elements@latest/dist/ionicpwaelements/ionicpwaelements.js"></script>
  1. 앱을 PWA로 출시하지 않는 경우: <capacitor-welcome> __CAPGO_KEEP_0__

  2. HTML 요소를 <body>에서 삭제하세요. capacitor.js __CAPGO_KEEP_0__ js/main.js스크립트 임포트를

  3. __CAPGO_KEEP_0__ js/capacitor-welcome.js 에서 index.html 이것은 우리의 번들된 자바스크립트 파일입니다.

__CAPGO_KEEP_0__

import를 삭제하세요. 이제는 __CAPGO_KEEP_1__가 준비되었습니다. Vite__CAPGO_KEEP_0__ src/index.js 생성된 스크립트의 출력 위치를 지정하는 구성 파일이 필요합니다. 다음 구성은 파일 www/js/main.js:

import { defineConfig } from 'vite';
import path from 'node:path';

export default defineConfig({
  build: {
    outDir: path.resolve(__dirname, 'www'),
    rollupOptions: {
      input: './src/index.js',
      output: {
        format: 'es',
        file: path.resolve(__dirname, 'www/js/main.js')
      }
    }
  }
});

capacitor.config.json

__CAPGO_KEEP_0__.config.json capacitor.config.json 파일에서 "bundledWebRuntime": true 속성을 찾고 false으로 변경하세요. 이 조정은 Capacitor이 파일을 번들링하지 않도록 하여 Vite를 사용할 수 있도록 합니다.

Capacitor의 기본 설정이 완료되었으며, pure JavaScript로 앱을 개발하기 위해 개발을 시작할 준비가 되었습니다.

‣ 앱 개발

이제 groundwork가 준비되었습니다. 앱의 로직을 src/index.js 파일에서 작성할 수 있습니다. 여기서 필요한 Node.js 모듈을 import할 수 있으며, 앱의 기능을 정의하고 Capacitor의 네이티브 플러그인을 사용할 수 있습니다.

변경 사항이 있을 때마다 자바스크립트 파일을 번들링하기 위해 Vite의 빌드 명령어를 실행하십시오:

vite build

이 명령어는 main.js 파일을 생성합니다. www/js 디렉토리 내에, index.html 파일이 참조합니다.

‣ 테스트 및 디버깅

Capacitor은 다양한 플랫폼에서 애플리케이션을 테스트하는 편리한 방법을 제공합니다. 다음 명령어를 사용하여 각 플랫폼의 개발 환경에서 앱을 열 수 있습니다:

Android:

npx cap add android
npx cap open android

iOS (macOS 전용):

npx cap add ios
npx cap open ios

Web/PWA:

npx cap serve

이러한 명령어는 Android Studio, Xcode, 또는 웹 브라우저에서 애플리케이션을 실행하여 테스트 및 디버깅할 수 있도록 합니다.

‣ 결론

CapacitorJS를 사용하여 자바스크립트로만 개발하는 다중 플랫폼 앱을 개발하는 것은 단일 코드베이스로 여러 플랫폼에 앱을 만들기 위한 비용 효율적인 방법입니다. 이 안내서를 따르면 프로젝트를 설정하고 Vite를 위한 구조를 재정렬하고 개발을 위해 앱을 준비했습니다. 이 기초 위에서 강력하고 다양한 애플리케이션을 만들기 위해 잘 시작했습니다.

모든 플랫폼에서彻底 테스트하고 Capacitor의 네이티브 플러그인을 사용하여 앱의 기능성을 향상시키지 않으면 안됩니다. 행복한 코딩!

Developing Cross-Platform Apps with CapacitorJS: A Step-by-Step Guide에서 계속하세요.

CapacitorJS를 사용하는 경우 Developing Cross-Platform Apps with CapacitorJS: A Step-by-Step Guide 네이티브 플러그인 작업을 계획하고 연결하려면 __CAPGO_KEEP_0__ Plugin Directory와 연결하세요. Capgo Plugin Directory에서 제품 워크플로우를 위해 Capgo Plugin Directory Capgo Plugins by __CAPGO_KEEP_1__ Capacitor Plugins by Capgo의 구현 세부 정보 for the implementation detail in Capacitor Plugins by Capgo, Adding or Updating Plugins의 구현 세부 정보 __CAPGO_KEEP_0__ Ionic Enterprise Plugin Alternatives Ionic Enterprise Plugin Alternatives 제품 워크플로우를 위한 대안 Capgo 네이티브 빌드 Capgo 네이티브 빌드 제품 워크플로우를 위한 대안

Capacitor 앱에 대한 실시간 업데이트

웹层 버그가 활성화된 경우, 앱 스토어 승인까지 며칠 기다리지 않고 Capgo를 통해 패치를 배포할 수 있습니다. 사용자는 배경에서 업데이트를 받으면서 네이티브 변경 사항은 일반적인 검토 경로에 남아 있습니다.

시작하기

블로그에서 최신 뉴스

Capgo은 당신이 완벽한 전문가 모바일 앱을 만들기 위해 필요한 최고의 통찰력을 제공합니다.