Uploader
This package is used for creating AAB/APK and IPA files, and sending them to Play Console, TestFlight, and Firebase App Distribution
Installation
IOS
- Create a JSON file with
issuer_idandauth_key, and provide the path of the JSON file to theUploader'stestFlightConfig->pathparameter. - issuer_id can be obtained in
Users and AccessunderApp Store Connect. - For
auth_key, create a newDeveloper Keyin the same section asissuer_id. The id value of this key can be used as theauth_key. Download the created key file and place it in the~/private_keys/directory on the computer where the package will be called.

ANDROID
- Configure the
keystore(https://developer.android.com/studio/publish/app-signing#secure-shared-keystore). - Activate the
Google Play Android Developer APIonGoogle Cloud(https://console.developers.google.com/apis/api/androidpublisher.googleapis.com/?hl=en). - Create a
service accountfrom this link: https://console.cloud.google.com/iam-admin/serviceaccounts?hl=en. After creating theservice account, generate a newJSONKeyfile from theKeystab of theservice account. Provide the path of this JSON file to theUploader'splayStoreConfig->pathparameter. - Finally, the service account needs to be granted permission. From the
Users and Permissionssection of theGoogle Play Console, send an invitation to theservice accountemail withAdminorReleasespermissions.
FIREBASE APP DISTRIBUTION
- Install
Firebase CLI(https://firebase.google.com/docs/cli?hl=tr). - Activate
App DistributiononFirebase. - Under Settings in
Firebase, integrate withGoogle Playin theIntegrationstab. If the app has not been published yet, this integration cannot be done, and in this case,Uploader'sandroidBuildTypeparameter should be set toapk.
Usage
dev_dependencies:
uploader: any
uploader:
platform: all # ios, android, all
uploadType: all # appDistribution, store, all
testFlightConfig:
path: ios_deploy_config.json # must include auth_key and issuer_id
playStoreConfig:
path: android_deploy_config.json # must include client_email, client_id, private_key
track: internal # internal, alpha, beta
skslPath: null
appDistributionConfig:
androidBuildType: abb # abb, apk
androidTesters:
path: android/testers.txt
iosTesters:
url: https://testers.txt
releaseNotesPath: release_notes.txt
useParallelUpload: true # default:true
enableLogFileCreation: false # default: false.
extraBuildParameters: null