mirror of
https://github.com/pawelorzech/SunZones.git
synced 2026-01-29 19:54:26 +00:00
Update .gitignore and expand README documentation
Expanded the .gitignore to cover more build artifacts, IDE, and OS-specific files. Significantly enhanced the README.md with a detailed app description, feature list, architecture overview, tech stack, and build instructions for better onboarding and project clarity.
This commit is contained in:
parent
7287792e92
commit
67f2802a7d
23 changed files with 263 additions and 201 deletions
61
.gitignore
vendored
61
.gitignore
vendored
|
|
@ -1,27 +1,44 @@
|
|||
# Compiled class file
|
||||
# Built artifacts
|
||||
*.apk
|
||||
*.aar
|
||||
*.ap_
|
||||
*.aab
|
||||
|
||||
# Compiled
|
||||
*.class
|
||||
*.dex
|
||||
|
||||
# Log file
|
||||
# Generated files
|
||||
bin/
|
||||
gen/
|
||||
out/
|
||||
build/
|
||||
|
||||
# Gradle
|
||||
.gradle/
|
||||
!gradle/wrapper/gradle-wrapper.jar
|
||||
gradle-app.setting
|
||||
|
||||
# Local configuration
|
||||
local.properties
|
||||
|
||||
# IDE
|
||||
.idea/
|
||||
*.iml
|
||||
*.iws
|
||||
*.ipr
|
||||
.project
|
||||
.classpath
|
||||
.settings/
|
||||
|
||||
# OS files
|
||||
.DS_Store
|
||||
Thumbs.db
|
||||
|
||||
# Kotlin
|
||||
.kotlin/
|
||||
|
||||
# Logs & crash reports
|
||||
*.log
|
||||
|
||||
# BlueJ files
|
||||
*.ctxt
|
||||
|
||||
# Mobile Tools for Java (J2ME)
|
||||
.mtj.tmp/
|
||||
|
||||
# Package Files #
|
||||
*.jar
|
||||
*.war
|
||||
*.nar
|
||||
*.ear
|
||||
*.zip
|
||||
*.tar.gz
|
||||
*.rar
|
||||
|
||||
# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
|
||||
hs_err_pid*
|
||||
replay_pid*
|
||||
|
||||
# Kotlin Gradle plugin data, see https://kotlinlang.org/docs/whatsnew20.html#new-directory-for-kotlin-data-in-gradle-projects
|
||||
.kotlin/
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
62
README.md
62
README.md
|
|
@ -1,2 +1,64 @@
|
|||
# SunZones
|
||||
|
||||
Track sunrise, sunset and daylight across multiple locations around the world. A minimal, single-screen Android app with time-aware gradient backgrounds, animated sun/moon arcs, and a yearly daylight chart.
|
||||
|
||||
## Features
|
||||
|
||||
- **Multi-location tracking** -- swipe between saved locations to see real-time sun and moon data
|
||||
- **Sunrise & sunset times** with day/night length and countdown to next sunrise
|
||||
- **Animated sun/moon arc** -- a visual progress indicator showing where the sun (or moon) is in its path across the sky
|
||||
- **Moon phase & illumination** -- current lunar phase emoji and illumination percentage
|
||||
- **Time-of-day gradients** -- card backgrounds shift dynamically through sunrise, morning, midday, afternoon, sunset, twilight and night palettes
|
||||
- **Yearly daylight chart** -- scrollable month-by-month visualization of day length and sunrise/sunset distribution
|
||||
- **Timezone-aware** -- each location stores its own IANA timezone, so times are always correct regardless of where your device is
|
||||
- **Search or GPS** -- add locations by city name search or use your current position
|
||||
- **Polish & English** -- full i18n with `values/` and `values-pl/` string resources
|
||||
|
||||
## Architecture
|
||||
|
||||
Clean MVVM, single-activity Jetpack Compose app with Hilt dependency injection.
|
||||
|
||||
```
|
||||
Room DB (Flow)
|
||||
-> LocationDao -> LocationRepository -> GetLocationsUseCase
|
||||
-> CalculateSunTimesUseCase -> SunLocation (UI model)
|
||||
-> MainViewModel (StateFlow) -> Compose UI
|
||||
```
|
||||
|
||||
| Layer | Responsibility |
|
||||
|---|---|
|
||||
| `data/local` | Room entity, DAO, database |
|
||||
| `data/repository` | Thin DAO wrapper, current-location replacement logic |
|
||||
| `domain/usecase` | Sun/moon calculations via commons-suncalc, yearly daylight aggregation |
|
||||
| `domain/model` | `SunLocation` (computed fields), `MonthDaylight` (chart data) |
|
||||
| `ui/main` | `HorizontalPager` of `SunCard` composables, 60-second auto-refresh |
|
||||
| `ui/addlocation` | Geocoder search + GPS, timezone resolution via Android ICU |
|
||||
| `di` | Hilt module providing Room, DAO, Geocoder, FusedLocationProviderClient |
|
||||
|
||||
## Tech stack
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| Language | Kotlin |
|
||||
| UI | Jetpack Compose, Material 3 |
|
||||
| DI | Hilt |
|
||||
| Database | Room |
|
||||
| Sun/moon math | [commons-suncalc](https://github.com/shred/commons-suncalc) 3.11 |
|
||||
| Location | Google Play Services FusedLocationProviderClient |
|
||||
| Geocoding | Android Geocoder |
|
||||
| Timezone lookup | `android.icu.util.TimeZone` (built-in) |
|
||||
| Min SDK | 26 (Android 8.0) |
|
||||
| Target SDK | 35 (Android 15) |
|
||||
|
||||
## Build
|
||||
|
||||
Requires **Java 17** and the Android SDK.
|
||||
|
||||
```bash
|
||||
export JAVA_HOME="/opt/homebrew/Cellar/openjdk@17/17.0.18/libexec/openjdk.jdk/Contents/Home"
|
||||
./gradlew assembleDebug
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
[MIT](LICENSE) -- Pawel Orzech
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -1,2 +1,2 @@
|
|||
#- File Locator -
|
||||
listingFile=../../../../outputs/apk/debug/output-metadata.json
|
||||
listingFile=../../../apk/debug/output-metadata.json
|
||||
|
|
|
|||
|
|
@ -1,37 +1,37 @@
|
|||
#Tue Jan 27 16:33:44 CET 2026
|
||||
path.4=11/classes.dex
|
||||
path.3=10/classes.dex
|
||||
path.2=1/classes.dex
|
||||
renamed.9=classes10.dex
|
||||
path.1=0/classes.dex
|
||||
renamed.8=classes9.dex
|
||||
path.8=7/classes.dex
|
||||
path.7=4/classes.dex
|
||||
path.6=2/classes.dex
|
||||
path.5=15/classes.dex
|
||||
renamed.11=classes12.dex
|
||||
renamed.10=classes11.dex
|
||||
path.0=classes.dex
|
||||
base.4=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/11/classes.dex
|
||||
base.3=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/10/classes.dex
|
||||
base.2=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/1/classes.dex
|
||||
base.1=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/0/classes.dex
|
||||
#Tue Jan 27 16:34:24 CET 2026
|
||||
base.0=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeExtDexDebug/classes.dex
|
||||
renamed.3=classes4.dex
|
||||
renamed.2=classes3.dex
|
||||
renamed.1=classes2.dex
|
||||
path.10=9/classes.dex
|
||||
renamed.0=classes.dex
|
||||
base.9=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/8/classes.dex
|
||||
path.9=8/classes.dex
|
||||
path.11=classes2.dex
|
||||
renamed.7=classes8.dex
|
||||
base.8=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/7/classes.dex
|
||||
renamed.6=classes7.dex
|
||||
base.7=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/4/classes.dex
|
||||
renamed.5=classes6.dex
|
||||
base.6=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/2/classes.dex
|
||||
renamed.4=classes5.dex
|
||||
base.5=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/15/classes.dex
|
||||
base.11=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeExtDexDebug/classes2.dex
|
||||
base.1=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/0/classes.dex
|
||||
base.10=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/9/classes.dex
|
||||
base.11=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeExtDexDebug/classes2.dex
|
||||
base.2=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/1/classes.dex
|
||||
base.3=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/10/classes.dex
|
||||
base.4=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/11/classes.dex
|
||||
base.5=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/15/classes.dex
|
||||
base.6=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/2/classes.dex
|
||||
base.7=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/4/classes.dex
|
||||
base.8=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/7/classes.dex
|
||||
base.9=/Users/pawelorzech/Programowanie/SunZones/app/build/intermediates/dex/debug/mergeProjectDexDebug/8/classes.dex
|
||||
path.0=classes.dex
|
||||
path.1=0/classes.dex
|
||||
path.10=9/classes.dex
|
||||
path.11=classes2.dex
|
||||
path.2=1/classes.dex
|
||||
path.3=10/classes.dex
|
||||
path.4=11/classes.dex
|
||||
path.5=15/classes.dex
|
||||
path.6=2/classes.dex
|
||||
path.7=4/classes.dex
|
||||
path.8=7/classes.dex
|
||||
path.9=8/classes.dex
|
||||
renamed.0=classes.dex
|
||||
renamed.1=classes2.dex
|
||||
renamed.10=classes11.dex
|
||||
renamed.11=classes12.dex
|
||||
renamed.2=classes3.dex
|
||||
renamed.3=classes4.dex
|
||||
renamed.4=classes5.dex
|
||||
renamed.5=classes6.dex
|
||||
renamed.6=classes7.dex
|
||||
renamed.7=classes8.dex
|
||||
renamed.8=classes9.dex
|
||||
renamed.9=classes10.dex
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Binary file not shown.
|
|
@ -47,124 +47,125 @@
|
|||
29-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:13:9-54
|
||||
30 android:supportsRtl="true"
|
||||
30-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:14:9-35
|
||||
31 android:theme="@style/Theme.SunZones" >
|
||||
31-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:15:9-46
|
||||
32 <activity
|
||||
32-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:16:9-24:20
|
||||
33 android:name="com.sunzones.MainActivity"
|
||||
33-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:17:13-41
|
||||
34 android:exported="true"
|
||||
34-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:18:13-36
|
||||
35 android:theme="@style/Theme.SunZones" >
|
||||
35-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:19:13-50
|
||||
36 <intent-filter>
|
||||
36-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:20:13-23:29
|
||||
37 <action android:name="android.intent.action.MAIN" />
|
||||
37-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:21:17-69
|
||||
37-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:21:25-66
|
||||
38
|
||||
39 <category android:name="android.intent.category.LAUNCHER" />
|
||||
39-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:22:17-77
|
||||
39-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:22:27-74
|
||||
40 </intent-filter>
|
||||
41 </activity>
|
||||
42 <activity
|
||||
42-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:9-173
|
||||
43 android:name="com.google.android.gms.common.api.GoogleApiActivity"
|
||||
43-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:19-85
|
||||
44 android:exported="false"
|
||||
44-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:146-170
|
||||
45 android:theme="@android:style/Theme.Translucent.NoTitleBar" />
|
||||
45-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:86-145
|
||||
46
|
||||
47 <meta-data
|
||||
47-->[com.google.android.gms:play-services-basement:18.4.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/48add1e11c95b212b489f2d802afdbf9/transformed/play-services-basement-18.4.0/AndroidManifest.xml:6:9-122
|
||||
48 android:name="com.google.android.gms.version"
|
||||
48-->[com.google.android.gms:play-services-basement:18.4.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/48add1e11c95b212b489f2d802afdbf9/transformed/play-services-basement-18.4.0/AndroidManifest.xml:6:20-65
|
||||
49 android:value="@integer/google_play_services_version" />
|
||||
49-->[com.google.android.gms:play-services-basement:18.4.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/48add1e11c95b212b489f2d802afdbf9/transformed/play-services-basement-18.4.0/AndroidManifest.xml:6:66-119
|
||||
50
|
||||
51 <activity
|
||||
51-->[androidx.compose.ui:ui-tooling-android:1.7.6] /Users/pawelorzech/.gradle/caches/8.13/transforms/4b780b6503c78a552711484e5ba9ab13/transformed/ui-tooling-release/AndroidManifest.xml:23:9-25:39
|
||||
52 android:name="androidx.compose.ui.tooling.PreviewActivity"
|
||||
52-->[androidx.compose.ui:ui-tooling-android:1.7.6] /Users/pawelorzech/.gradle/caches/8.13/transforms/4b780b6503c78a552711484e5ba9ab13/transformed/ui-tooling-release/AndroidManifest.xml:24:13-71
|
||||
53 android:exported="true" />
|
||||
53-->[androidx.compose.ui:ui-tooling-android:1.7.6] /Users/pawelorzech/.gradle/caches/8.13/transforms/4b780b6503c78a552711484e5ba9ab13/transformed/ui-tooling-release/AndroidManifest.xml:25:13-36
|
||||
54
|
||||
55 <provider
|
||||
55-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:24:9-32:20
|
||||
56 android:name="androidx.startup.InitializationProvider"
|
||||
56-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:25:13-67
|
||||
57 android:authorities="com.sunzones.androidx-startup"
|
||||
57-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:26:13-68
|
||||
58 android:exported="false" >
|
||||
58-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:27:13-37
|
||||
59 <meta-data
|
||||
59-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:29:13-31:52
|
||||
60 android:name="androidx.emoji2.text.EmojiCompatInitializer"
|
||||
60-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:30:17-75
|
||||
61 android:value="androidx.startup" />
|
||||
61-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:31:17-49
|
||||
62 <meta-data
|
||||
62-->[androidx.lifecycle:lifecycle-process:2.8.7] /Users/pawelorzech/.gradle/caches/8.13/transforms/525011fe192e83be5b25a229c350b401/transformed/lifecycle-process-2.8.7/AndroidManifest.xml:29:13-31:52
|
||||
63 android:name="androidx.lifecycle.ProcessLifecycleInitializer"
|
||||
63-->[androidx.lifecycle:lifecycle-process:2.8.7] /Users/pawelorzech/.gradle/caches/8.13/transforms/525011fe192e83be5b25a229c350b401/transformed/lifecycle-process-2.8.7/AndroidManifest.xml:30:17-78
|
||||
64 android:value="androidx.startup" />
|
||||
64-->[androidx.lifecycle:lifecycle-process:2.8.7] /Users/pawelorzech/.gradle/caches/8.13/transforms/525011fe192e83be5b25a229c350b401/transformed/lifecycle-process-2.8.7/AndroidManifest.xml:31:17-49
|
||||
65 <meta-data
|
||||
65-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:29:13-31:52
|
||||
66 android:name="androidx.profileinstaller.ProfileInstallerInitializer"
|
||||
66-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:30:17-85
|
||||
67 android:value="androidx.startup" />
|
||||
67-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:31:17-49
|
||||
68 </provider>
|
||||
69
|
||||
70 <service
|
||||
70-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:24:9-28:63
|
||||
71 android:name="androidx.room.MultiInstanceInvalidationService"
|
||||
71-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:25:13-74
|
||||
72 android:directBootAware="true"
|
||||
72-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:26:13-43
|
||||
73 android:exported="false" />
|
||||
73-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:27:13-37
|
||||
74
|
||||
75 <receiver
|
||||
75-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:34:9-52:20
|
||||
76 android:name="androidx.profileinstaller.ProfileInstallReceiver"
|
||||
76-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:35:13-76
|
||||
77 android:directBootAware="false"
|
||||
77-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:36:13-44
|
||||
78 android:enabled="true"
|
||||
78-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:37:13-35
|
||||
79 android:exported="true"
|
||||
79-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:38:13-36
|
||||
80 android:permission="android.permission.DUMP" >
|
||||
80-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:39:13-57
|
||||
81 <intent-filter>
|
||||
81-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:40:13-42:29
|
||||
82 <action android:name="androidx.profileinstaller.action.INSTALL_PROFILE" />
|
||||
82-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:41:17-91
|
||||
82-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:41:25-88
|
||||
83 </intent-filter>
|
||||
84 <intent-filter>
|
||||
84-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:43:13-45:29
|
||||
85 <action android:name="androidx.profileinstaller.action.SKIP_FILE" />
|
||||
85-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:44:17-85
|
||||
85-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:44:25-82
|
||||
86 </intent-filter>
|
||||
87 <intent-filter>
|
||||
87-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:46:13-48:29
|
||||
88 <action android:name="androidx.profileinstaller.action.SAVE_PROFILE" />
|
||||
88-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:47:17-88
|
||||
88-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:47:25-85
|
||||
89 </intent-filter>
|
||||
90 <intent-filter>
|
||||
90-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:49:13-51:29
|
||||
91 <action android:name="androidx.profileinstaller.action.BENCHMARK_OPERATION" />
|
||||
91-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:50:17-95
|
||||
91-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:50:25-92
|
||||
92 </intent-filter>
|
||||
93 </receiver>
|
||||
94 </application>
|
||||
95
|
||||
96</manifest>
|
||||
31 android:testOnly="true"
|
||||
32 android:theme="@style/Theme.SunZones" >
|
||||
32-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:15:9-46
|
||||
33 <activity
|
||||
33-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:16:9-24:20
|
||||
34 android:name="com.sunzones.MainActivity"
|
||||
34-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:17:13-41
|
||||
35 android:exported="true"
|
||||
35-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:18:13-36
|
||||
36 android:theme="@style/Theme.SunZones" >
|
||||
36-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:19:13-50
|
||||
37 <intent-filter>
|
||||
37-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:20:13-23:29
|
||||
38 <action android:name="android.intent.action.MAIN" />
|
||||
38-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:21:17-69
|
||||
38-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:21:25-66
|
||||
39
|
||||
40 <category android:name="android.intent.category.LAUNCHER" />
|
||||
40-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:22:17-77
|
||||
40-->/Users/pawelorzech/Programowanie/SunZones/app/src/main/AndroidManifest.xml:22:27-74
|
||||
41 </intent-filter>
|
||||
42 </activity>
|
||||
43 <activity
|
||||
43-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:9-173
|
||||
44 android:name="com.google.android.gms.common.api.GoogleApiActivity"
|
||||
44-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:19-85
|
||||
45 android:exported="false"
|
||||
45-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:146-170
|
||||
46 android:theme="@android:style/Theme.Translucent.NoTitleBar" />
|
||||
46-->[com.google.android.gms:play-services-base:18.5.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/c869d058acd78b7fc5eb67448fb7a0c8/transformed/play-services-base-18.5.0/AndroidManifest.xml:5:86-145
|
||||
47
|
||||
48 <meta-data
|
||||
48-->[com.google.android.gms:play-services-basement:18.4.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/48add1e11c95b212b489f2d802afdbf9/transformed/play-services-basement-18.4.0/AndroidManifest.xml:6:9-122
|
||||
49 android:name="com.google.android.gms.version"
|
||||
49-->[com.google.android.gms:play-services-basement:18.4.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/48add1e11c95b212b489f2d802afdbf9/transformed/play-services-basement-18.4.0/AndroidManifest.xml:6:20-65
|
||||
50 android:value="@integer/google_play_services_version" />
|
||||
50-->[com.google.android.gms:play-services-basement:18.4.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/48add1e11c95b212b489f2d802afdbf9/transformed/play-services-basement-18.4.0/AndroidManifest.xml:6:66-119
|
||||
51
|
||||
52 <activity
|
||||
52-->[androidx.compose.ui:ui-tooling-android:1.7.6] /Users/pawelorzech/.gradle/caches/8.13/transforms/4b780b6503c78a552711484e5ba9ab13/transformed/ui-tooling-release/AndroidManifest.xml:23:9-25:39
|
||||
53 android:name="androidx.compose.ui.tooling.PreviewActivity"
|
||||
53-->[androidx.compose.ui:ui-tooling-android:1.7.6] /Users/pawelorzech/.gradle/caches/8.13/transforms/4b780b6503c78a552711484e5ba9ab13/transformed/ui-tooling-release/AndroidManifest.xml:24:13-71
|
||||
54 android:exported="true" />
|
||||
54-->[androidx.compose.ui:ui-tooling-android:1.7.6] /Users/pawelorzech/.gradle/caches/8.13/transforms/4b780b6503c78a552711484e5ba9ab13/transformed/ui-tooling-release/AndroidManifest.xml:25:13-36
|
||||
55
|
||||
56 <provider
|
||||
56-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:24:9-32:20
|
||||
57 android:name="androidx.startup.InitializationProvider"
|
||||
57-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:25:13-67
|
||||
58 android:authorities="com.sunzones.androidx-startup"
|
||||
58-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:26:13-68
|
||||
59 android:exported="false" >
|
||||
59-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:27:13-37
|
||||
60 <meta-data
|
||||
60-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:29:13-31:52
|
||||
61 android:name="androidx.emoji2.text.EmojiCompatInitializer"
|
||||
61-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:30:17-75
|
||||
62 android:value="androidx.startup" />
|
||||
62-->[androidx.emoji2:emoji2:1.3.0] /Users/pawelorzech/.gradle/caches/8.13/transforms/cf026257e99eeefe860ce336b93601c7/transformed/emoji2-1.3.0/AndroidManifest.xml:31:17-49
|
||||
63 <meta-data
|
||||
63-->[androidx.lifecycle:lifecycle-process:2.8.7] /Users/pawelorzech/.gradle/caches/8.13/transforms/525011fe192e83be5b25a229c350b401/transformed/lifecycle-process-2.8.7/AndroidManifest.xml:29:13-31:52
|
||||
64 android:name="androidx.lifecycle.ProcessLifecycleInitializer"
|
||||
64-->[androidx.lifecycle:lifecycle-process:2.8.7] /Users/pawelorzech/.gradle/caches/8.13/transforms/525011fe192e83be5b25a229c350b401/transformed/lifecycle-process-2.8.7/AndroidManifest.xml:30:17-78
|
||||
65 android:value="androidx.startup" />
|
||||
65-->[androidx.lifecycle:lifecycle-process:2.8.7] /Users/pawelorzech/.gradle/caches/8.13/transforms/525011fe192e83be5b25a229c350b401/transformed/lifecycle-process-2.8.7/AndroidManifest.xml:31:17-49
|
||||
66 <meta-data
|
||||
66-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:29:13-31:52
|
||||
67 android:name="androidx.profileinstaller.ProfileInstallerInitializer"
|
||||
67-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:30:17-85
|
||||
68 android:value="androidx.startup" />
|
||||
68-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:31:17-49
|
||||
69 </provider>
|
||||
70
|
||||
71 <service
|
||||
71-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:24:9-28:63
|
||||
72 android:name="androidx.room.MultiInstanceInvalidationService"
|
||||
72-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:25:13-74
|
||||
73 android:directBootAware="true"
|
||||
73-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:26:13-43
|
||||
74 android:exported="false" />
|
||||
74-->[androidx.room:room-runtime:2.6.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/274ebafecd6f53891e30da7d25f41af6/transformed/room-runtime-2.6.1/AndroidManifest.xml:27:13-37
|
||||
75
|
||||
76 <receiver
|
||||
76-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:34:9-52:20
|
||||
77 android:name="androidx.profileinstaller.ProfileInstallReceiver"
|
||||
77-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:35:13-76
|
||||
78 android:directBootAware="false"
|
||||
78-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:36:13-44
|
||||
79 android:enabled="true"
|
||||
79-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:37:13-35
|
||||
80 android:exported="true"
|
||||
80-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:38:13-36
|
||||
81 android:permission="android.permission.DUMP" >
|
||||
81-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:39:13-57
|
||||
82 <intent-filter>
|
||||
82-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:40:13-42:29
|
||||
83 <action android:name="androidx.profileinstaller.action.INSTALL_PROFILE" />
|
||||
83-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:41:17-91
|
||||
83-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:41:25-88
|
||||
84 </intent-filter>
|
||||
85 <intent-filter>
|
||||
85-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:43:13-45:29
|
||||
86 <action android:name="androidx.profileinstaller.action.SKIP_FILE" />
|
||||
86-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:44:17-85
|
||||
86-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:44:25-82
|
||||
87 </intent-filter>
|
||||
88 <intent-filter>
|
||||
88-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:46:13-48:29
|
||||
89 <action android:name="androidx.profileinstaller.action.SAVE_PROFILE" />
|
||||
89-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:47:17-88
|
||||
89-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:47:25-85
|
||||
90 </intent-filter>
|
||||
91 <intent-filter>
|
||||
91-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:49:13-51:29
|
||||
92 <action android:name="androidx.profileinstaller.action.BENCHMARK_OPERATION" />
|
||||
92-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:50:17-95
|
||||
92-->[androidx.profileinstaller:profileinstaller:1.3.1] /Users/pawelorzech/.gradle/caches/8.13/transforms/a4bc2a1b1e5692d7984dfa74a5f7d80d/transformed/profileinstaller-1.3.1/AndroidManifest.xml:50:25-92
|
||||
93 </intent-filter>
|
||||
94 </receiver>
|
||||
95 </application>
|
||||
96
|
||||
97</manifest>
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
android:label="@string/app_name"
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:supportsRtl="true"
|
||||
android:testOnly="true"
|
||||
android:theme="@style/Theme.SunZones" >
|
||||
<activity
|
||||
android:name="com.sunzones.MainActivity"
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
android:label="@string/app_name"
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:supportsRtl="true"
|
||||
android:testOnly="true"
|
||||
android:theme="@style/Theme.SunZones" >
|
||||
<activity
|
||||
android:name="com.sunzones.MainActivity"
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@
|
|||
android:label="@string/app_name"
|
||||
android:roundIcon="@mipmap/ic_launcher_round"
|
||||
android:supportsRtl="true"
|
||||
android:testOnly="true"
|
||||
android:theme="@style/Theme.SunZones" >
|
||||
<activity
|
||||
android:name="com.sunzones.MainActivity"
|
||||
|
|
|
|||
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,21 +0,0 @@
|
|||
{
|
||||
"version": 3,
|
||||
"artifactType": {
|
||||
"type": "APK",
|
||||
"kind": "Directory"
|
||||
},
|
||||
"applicationId": "com.sunzones",
|
||||
"variantName": "debug",
|
||||
"elements": [
|
||||
{
|
||||
"type": "SINGLE",
|
||||
"filters": [],
|
||||
"attributes": [],
|
||||
"versionCode": 1,
|
||||
"versionName": "1.0",
|
||||
"outputFile": "app-debug.apk"
|
||||
}
|
||||
],
|
||||
"elementType": "File",
|
||||
"minSdkVersionForDexing": 26
|
||||
}
|
||||
Binary file not shown.
Binary file not shown.
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Normal file
BIN
gradle/wrapper/gradle-wrapper.jar
vendored
Normal file
Binary file not shown.
Loading…
Reference in a new issue