패키지, 저장소 및 앱 카테고리 검색

패키지 상세v1.0.0

simple_deploy

단일 Dart 명령어로 TestFlight 및 Play 스토어 테스트 트랙에 쉽게 배포하세요!

AndroidiOSWebmacOSWindowsLinux
30일 다운로드
110
좋아요
60
Pub 점수
150

패키지 설치

flutter pub add simple_deploy

패키지 개요

공개 정보를 바탕으로 생성한 선택 가이드입니다.

Simple Deploy는 단일 Dart 명령어를 사용하여 앱을 TestFlight 및 Google Play 스토어 테스트 트랙에 게시하는 과정을 간소화하는 Flutter/Dart 패키지입니다. 빌드 및 업로드 단계를 자동화함으로써 앱 배포를 간편하게 하고 수작업과 잠재적인 오류를 줄입니다. 자주 릴리스를 테스트하는 개발자를 위해 설계되었으며 Android, iOS, Web, macOS, Windows, Linux 등 여러 플랫폼을 지원합니다. 최소한의 구성으로 기존 워크플로우에 원활하게 통합되어 빠른 반복과 테스트에 집중하는 팀에게 이상적입니다.

사용 사례

  • 자동화된 베타 테스트 릴리스
  • CI/CD 파이프라인 간소화
  • TestFlight 및 Play 스토어로 빠른 배포
  • 수동 빌드/업로드 작업 감소
  • 크로스 플랫폼 앱 배포
  • 자주 출시되는 주기

주요 기능

  • 단일 명령 배포
  • iOS 및 Android 테스트 트랙 지원
  • 다중 플랫폼 호환성
  • 최소한의 설정 필요
  • CI/CD 시스템과의 통합
  • 내장된 빌드 자동화

적합한 대상

  • Flutter 개발자
  • 모바일 앱 테스트 팀
  • CI/CD 자동화 엔지니어
  • 빠르게 변화하는 개발 환경
  • TestFlight 또는 플레이 스토어 내부 테스트를 사용하는 팀

고려 사항

  • 적절한 자격 증명과 Apple Developer 및 Google Play Console에 대한 액세스 권한이 필요합니다
  • CI를 위해 추가 환경 변수가 필요할 수 있습니다
  • 생산용 앱 릴리스를 위한 것이 아님
  • 외부 서비스(애플, 구글)에 의존
  • 테스트 트랙 배포에 제한됨
  • 실행 중 인터넷 연결이 필요합니다

원본 README

연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.

simple_deploy is a quick and easy way to deploy apps to the store's test systems

Features

Deploy to iOS Test Flight Deploy to Android Play Store tracks of your choice Supports flavors

Getting started

Install the dependency into your pubspec.yaml with the following:

dev_dependencies:
  simple_deploy: latest_version # e.g. ^0.23.0

Create a deploy.yaml file at the root of your project and configure it

Here is minimal example version of deploy.yaml

android:
  credentialsFile: "c:/credentials/project-credentials.json"
  packageName: "com.example.coolapp"
  whatsNew: "Simple bug fixes"

ios:
  # App Store Connect API configuration (All fields are required)
  issuerId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
  keyId: "XXXXXXXXXX"
  privateKeyPath: "path/to/your/AuthKey_XXXXXXXXXX.p8"
  bundleId: "com.example.coolapp"
  
  # Optional fields
  whatsNew: "New features and improvements" # For "What's New" text in TestFlight
  flavor: "production"                   # Omit if not using flavors
  generatedFileName: "custom_name.ipa"   # Omit to use the default ipa name

And here's a version with all options set:

common:
  versionStrategy: "none"  # or "pubspecIncrement" or "storeIncrement"

android:
  credentialsFile: "c:/credentials/project-credentials.json"
  packageName: "com.example.coolapp"
  trackName: "internal"
  whatsNew: "Simple bug fixes"
  flavor: "flavor"            # specify a flavor if required, or omit if not using flavors
  generatedFileName: "fancyproject.aab"       # supply a custom file name for the aab, or omit if using the default

ios:
  # App Store Connect API configuration (required for storeIncrement version strategy)
  issuerId: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"  # App Store Connect API Issuer ID
  keyId: "XXXXXXXXXX"  # App Store Connect API Key ID
  privateKeyPath: "path/to/AuthKey_XXXXXXXXXX.p8"  # Path to your private key file
  bundleId: "com.example.coolapp"  # Required for App Store submission
  whatsNew: "New features and improvements"  # Optional, used for App Store submission
  flavor: "flavor"            # specify a flavor if required, or omit if not using flavors
  generatedFileName: "fancyproject.ipa"         # supply a custom file name for the ipa, or omit if using the default
  autoIncrementMarketingVersion: false # defaults to false, updates the first part of the 'version' in the pubspec.yaml, e.g. 1.0.15+39 (it would increment to 1.0.16)
Parameter details

| flavor | Description | | ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------- | --- | | flavorName | Optional parameter, which can be set for both android and iOS, don't supply if not using flavors, or provide the flavor name if using them | |

versionStrategy Description
none Default. Uses the current value in the pubspec.
pubspecIncrement Retrieves the current build number from the pubspec, increments it by one, and uses the updated number.
storeIncrement Gets the latest version code from the store (Play Store for Android), increments it by one, and updates the pubspec. For Android only.
trackName Description
internal Default. Deploys to the internal track.
alpha Deploys to the alpha track.
beta Deploys to the beta track.
production Deploys to the production track.

Here's the step-by-step instructions for configuring for each platform

Android configuration

iOS configuration

Usage

Just run dart run simple_deploy and select the deployment platform

You can also supply the platform with

  • dart run simple_deploy android
  • dart run simple_deploy ios
  • dart run simple_deploy ios --submit-review # This will also submit to App Store review after TestFlight processing

If you are using flavors you can add them here, they will override what is set in the pubspec.yaml, for example

  • dart run simple_deploy android --flavor flavorName

You can use the --pubspecIncrement flag to increment the build number for a specific deployment, regardless of the versionStrategy setting in your deploy.yaml:

  • dart run simple_deploy --pubspecIncrement

This flag will override the versionStrategy setting just for that deployment, allowing you to increment the build number only when needed.

Additional information

You'll need to get some developer details from App Store connect for the deploy.yaml file You will also need to set up a google cloud project to create the .json file required for android. See steps below of these:

Android configuration

Android configuration

iOS configuration

iOS configuration

Contributions

Thanks to the following people for their great contributions to this project KarlJan Reginaldo

카테고리

의존성

의존성 목록 8 개

소스 저장소

이 패키지를 사용하는 프로젝트

아직 데이터가 없습니다.