Skip to content

Commit 2cf17e5

Browse files
authored
Merge branch 'main' into Update
2 parents 33ef6dd + 5597f5d commit 2cf17e5

File tree

1 file changed

+1
-162
lines changed

1 file changed

+1
-162
lines changed

README.md

Lines changed: 1 addition & 162 deletions
Original file line numberDiff line numberDiff line change
@@ -4,165 +4,4 @@ A comprehensive Android application for school management with features includin
44

55
## 🚀 Quick Start
66

7-
Use the prebuilt apk found on the releases page
8-
9-
Or build your app:
10-
11-
### Automatic Setup (Recommended)
12-
13-
The easiest way to get started is using our automatic setup scripts:
14-
15-
#### Option 1: Quick Setup (Recommended)
16-
```bash
17-
./quick-setup.sh
18-
```
19-
20-
#### Option 2: Full Setup with Advanced Options
21-
```bash
22-
./setup-android-sdk.sh
23-
```
24-
25-
### Manual Setup
26-
27-
If you prefer manual setup, follow these steps:
28-
29-
1. **Install Prerequisites:**
30-
```bash
31-
sudo apt-get update
32-
sudo apt-get install openjdk-11-jdk wget unzip
33-
```
34-
35-
2. **Download Android SDK:**
36-
```bash
37-
wget https://dl.google.com/android/repository/commandlinetools-linux-8512546_latest.zip
38-
unzip commandlinetools-linux-8512546_latest.zip
39-
mkdir -p android-sdk/cmdline-tools
40-
mv cmdline-tools android-sdk/cmdline-tools/latest
41-
```
42-
43-
3. **Install SDK Components:**
44-
```bash
45-
export ANDROID_HOME="$(pwd)/android-sdk"
46-
export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin:$ANDROID_HOME/platform-tools"
47-
48-
echo "y" | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses
49-
$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager "platform-tools" "platforms;android-34" "build-tools;34.0.0"
50-
```
51-
52-
4. **Configure Project:**
53-
```bash
54-
echo "sdk.dir=$ANDROID_HOME" > local.properties
55-
chmod +x gradlew
56-
```
57-
58-
## 🏗️ Building the Project
59-
60-
### Build Debug Version
61-
```bash
62-
./gradlew assembleDebug
63-
```
64-
65-
### Build Release Version
66-
```bash
67-
./gradlew assembleRelease
68-
```
69-
70-
### Run Tests
71-
```bash
72-
./gradlew test # Unit tests
73-
./gradlew connectedAndroidTest # Instrumented tests
74-
```
75-
76-
### Clean Build
77-
```bash
78-
./gradlew clean
79-
```
80-
81-
## 📱 Features
82-
83-
- **Vertretungsplan**: Dynamic PDF/image display with download functionality
84-
- **Essen**: WebView for meal ordering system
85-
- **Moodle**: App redirection with store fallback
86-
- **Leistungen**: Home.InfoPoint + performance certificates PDF
87-
- **Theme Switching**: Green/System colors
88-
- **Download Functionality**: For PDFs and images
89-
- **Reload Functionality**: For all screens
90-
91-
## 🛠️ Technical Stack
92-
93-
- **UI Framework**: Jetpack Compose
94-
- **PDF Viewer**: Android PDF Viewer Library
95-
- **Image Loading**: Coil
96-
- **State Management**: DataStore Preferences
97-
- **Networking**: HttpURLConnection
98-
- **Min SDK**: 21 (Android 5.0)
99-
- **Target SDK**: 34 (Android 14)
100-
101-
## 📁 Project Structure
102-
103-
```
104-
app/
105-
├── src/
106-
│ ├── main/
107-
│ │ ├── java/com/cgj/app/
108-
│ │ │ └── MainActivity.kt # Main app logic
109-
│ │ ├── res/
110-
│ │ │ └── drawable/ # Icons and images
111-
│ │ └── AndroidManifest.xml
112-
│ ├── test/
113-
│ │ └── java/com/cgj/app/
114-
│ │ └── MainActivityTest.kt # Unit tests
115-
│ └── androidTest/
116-
│ └── java/com/cgj/app/
117-
│ └── MainActivityInstrumentedTest.kt # Instrumented tests
118-
├── build.gradle.kts # App-specific dependencies
119-
└── proguard-rules.pro # Code obfuscation
120-
121-
build.gradle.kts # Project configuration
122-
settings.gradle.kts # Project settings
123-
```
124-
125-
## 🔧 Available Scripts
126-
127-
- `quick-setup.sh` - Quick Android SDK installation
128-
- `setup-android-sdk.sh` - Comprehensive SDK setup with options
129-
- `build-test.sh` - Full build and test execution
130-
- `setup-env.sh` - Environment variables setup (created by setup scripts)
131-
132-
## 🐳 Docker Support
133-
134-
For containerized builds:
135-
136-
```bash
137-
docker build -t cgj-android .
138-
docker run -v $(pwd):/app cgj-android ./gradlew assembleDebug
139-
```
140-
141-
## 📋 Troubleshooting
142-
143-
### Common Issues
144-
145-
1. **SDK location not found**
146-
- Run `./quick-setup.sh` to install Android SDK
147-
- Check that `local.properties` contains correct `sdk.dir` path
148-
149-
2. **Permission denied**
150-
- Run `chmod +x gradlew`
151-
- Run `chmod +x *.sh`
152-
153-
3. **Dependencies not found**
154-
- Run `./gradlew --refresh-dependencies`
155-
156-
4. **Build errors**
157-
- Run `./gradlew clean assembleDebug`
158-
- Check error messages in console
159-
160-
### Getting Help
161-
162-
- Check `BUILD_INSTRUCTIONS.md` for detailed build instructions
163-
- Check `COMPILATION_SUMMARY.md` for compilation details
164-
- Run `./gradlew tasks` to see all available tasks
165-
166-
## 📄 License
167-
168-
This project is not licensed
7+
Use the prebuilt apk found on the releases page

0 commit comments

Comments
 (0)