LGKA

LGKA+ Centralized App Configuration

Overview

This centralized configuration system allows you to manage all app metadata (name, version, icons, package identifiers) from a single location instead of editing multiple platform-specific files.

Quick Start

1. Edit Configuration

Edit app_config/app_config.yaml with your desired settings:

# App Identity
app_name: "LGKA+"
app_description: "LGKA+ App - Digitaler Vertretungsplan"
package_name: "com.lgka"

# Version Configuration
version_name: "1.6.0"
version_code: "19"

# App Icon Configuration
app_icon_path: "assets/images/app-icons/app-logo.png"

2. Apply Configuration

Run the update script:

./scripts/update_app_config.sh

That’s it! The script will automatically update all platform-specific files and regenerate app icons.

What Gets Updated

✅ Cross-Platform

🤖 Android Specific

🍎 iOS Specific

📦 Flutter

Configuration Options

Required Fields

Optional Fields

Changing App Icon

  1. Replace the image file at the path specified in app_icon_path
  2. Run ./scripts/update_app_config.sh
  3. The script will automatically generate all required icon sizes

Icon Requirements:

Version Management

Update version by editing the config file:

version_name: "1.7.0"  # Semantic version for users
version_code: "20"     # Build number (must increment)

The script applies this to:

Manual Updates

If you need to make changes manually:

  1. Dart script only: dart run scripts/apply_app_config.dart
  2. Icons only: dart run flutter_launcher_icons
  3. Dependencies: flutter pub get

Troubleshooting

Common Issues

“❌ Error: app_config/app_config.yaml not found”

“Package yaml not found”

Icons not updating

Verifying Changes

After running the script, verify updates:

# Check version in pubspec.yaml
grep "version:" pubspec.yaml

# Check Android app name
grep "android:label" android/app/src/main/AndroidManifest.xml

# Check iOS app name  
cat ios/Runner/app_config.xcconfig

Development Workflow

  1. Making Changes:
    • Edit app_config/app_config.yaml
    • Run ./scripts/update_app_config.sh
    • Clean and rebuild: flutter clean && flutter build <platform>
  2. Version Bumps:
    • Increment version_code for any release
    • Update version_name for feature releases
    • Run the update script
  3. New Icons:
    • Replace the source icon file
    • Run the update script
    • Icons are automatically generated for all sizes

This system ensures consistency across platforms and eliminates the need to manually edit multiple configuration files.