Files
GPS2Audio/app/src/main/AndroidManifest.xml
T
2026-05-30 05:42:44 +00:00

113 lines
4.8 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Location Permissions -->
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<!-- Background location for waypoint detection when app is not in foreground -->
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION" />
<!-- Foreground Service -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_LOCATION" />
<!-- Notifications (Android 13+) -->
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<!-- Microphone for Live/PTT -->
<uses-permission android:name="android.permission.RECORD_AUDIO" />
<!-- Foreground service with microphone access (Android 14+) -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MICROPHONE" />
<!-- Foreground service for background music playback (Atmo/Begleitmusik, Android 14+) -->
<uses-permission android:name="android.permission.FOREGROUND_SERVICE_MEDIA_PLAYBACK" />
<!-- Audio (MediaPlayer needs no special permission for local files) -->
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
<!-- Fallback for Android < 13 -->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"
android:maxSdkVersion="32" />
<!-- Internet for osmdroid tile downloads -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!-- Keep CPU alive while playing audio in service -->
<uses-permission android:name="android.permission.WAKE_LOCK" />
<!-- Vibrate for notification (optional) -->
<uses-permission android:name="android.permission.VIBRATE" />
<application
android:name=".WaypointApp"
android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@drawable/ic_launcher"
android:supportsRtl="true"
android:theme="@style/Theme.WaypointAudioGuide.Splash">
<activity
android:name=".MainActivity"
android:exported="true"
android:windowSoftInputMode="adjustResize">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<!-- Foreground location service (Wegpunkt-Erkennung) -->
<service
android:name=".service.WaypointLocationService"
android:enabled="true"
android:exported="false"
android:foregroundServiceType="location" />
<!-- Foreground location service (GPS-Track-Aufzeichnung im Hintergrund) -->
<service
android:name=".service.TrackRecordingService"
android:enabled="true"
android:exported="false"
android:foregroundServiceType="location" />
<!-- Live/PTT Microphone Service -->
<service
android:name=".service.LivePttService"
android:enabled="true"
android:exported="false"
android:foregroundServiceType="microphone" />
<!-- Atmo/Begleitmusik foreground service: hält die Hintergrund-Audio-
Wiedergabe (Stream oder lokale Playlist) lebendig, wenn die App
minimiert wird oder der Bildschirm sich abschaltet. -->
<service
android:name=".service.AtmoPlaybackService"
android:enabled="true"
android:exported="false"
android:foregroundServiceType="mediaPlayback" />
<!-- v2.5.10 — Manuelle Wiedergabe (Tour-/Trackplay aus Wegpunkt-Liste).
Hält die MediaPlayer-Wiedergabe stabil, wenn der Bildschirm abschaltet. -->
<service
android:name=".service.ManualPlaybackService"
android:enabled="true"
android:exported="false"
android:foregroundServiceType="mediaPlayback" />
<!-- File provider for sound file selection (Android 7+) -->
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="${applicationId}.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data
android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths" />
</provider>
</application>
</manifest>