# Play Store release checklist

## Current project status

- Android package name: `com.faildaily.app`
- Current release bundle output: `app/build/outputs/bundle/release/app-release.aab`
- The bundle builds successfully, but it is not uploadable to Google Play until it is signed with your upload key.

## 1. Create an upload keystore

```bash
cd /home/taaazzz/projects/FailDaily/frontend/android
keytool -genkeypair -v \
  -keystore faildaily-upload-key.jks \
  -alias faildaily \
  -keyalg RSA \
  -keysize 2048 \
  -validity 10000
```

## 2. Configure release signing locally

Copy the example file and replace every placeholder:

```bash
cp /home/taaazzz/projects/FailDaily/frontend/android/key.properties.example \
  /home/taaazzz/projects/FailDaily/frontend/android/key.properties
```

Expected keys in `key.properties`:

```properties
storeFile=faildaily-upload-key.jks
storePassword=your-store-password
keyAlias=faildaily
keyPassword=your-key-password
```

`key.properties` and keystore files are ignored by git on purpose.

## 3. Build the signed bundle

```bash
cd /home/taaazzz/projects/FailDaily/frontend
npm run build
npx cap sync android
cd android
./gradlew bundleRelease
```

Output:

```text
/home/taaazzz/projects/FailDaily/frontend/android/app/build/outputs/bundle/release/app-release.aab
```

## 4. Play Console items still required outside the repo

- A public privacy policy URL in Play Console.
- An external account deletion URL, because the app allows account creation and in-app account deletion.
- Data safety form answers matching the real data collected by the app.
- App content declarations: target audience, content rating, ads, and access instructions if review needs a test account.
- `google-services.json` if you want Android push notifications to work in production.

## 5. Recommended production URLs

- Privacy policy: `https://faildaily.com/legal-document/privacy-policy`
- Terms: `https://faildaily.com/legal-document/terms-of-service`
- Account deletion: `https://faildaily.com/account-deletion`

Before using these URLs in Play Console, verify that they are publicly reachable without authentication.
