feat(app): Ressource herunterladen + 'Öffnen mit'-Dialog #123
Labels
No labels
block-planning
bug
documentation
duplicate
enhancement
feature
good first issue
help wanted
infrastructure
invalid
planning
priority:high
priority:low
question
refactoring
status:backlog
status:done
status:in-progress
status:todo
tech-decision
test
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: bollwerkadmin/bollwerk#123
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Feature: App – Ressource herunterladen + "Öffnen mit"-Dialog
Part of: #117
Depends on: #122
Ziel
Nutzer können eine Ressource per Download-Button herunterladen; nach dem Download öffnet sich automatisch der "Öffnen mit"-Dialog mit dem passenden MIME-Typ.
Scope
Icons.Default.Download)LinearProgressIndicatoroderCircularProgressIndicatorwährend des Downloadscontext.cacheDirunter{guid}.{ext}gespeichertFileProviderinAndroidManifest.xml+res/xml/file_paths.xml(fürcache-path)Intent.ACTION_VIEWmitFileProvider.getUriForFile(...)und MIME-Typ ausResourceDto.mimeTypeActivityNotFoundException)Technische Hinweise
FileProvider: authority ="${context.packageName}.fileprovider"file_paths.xml:<cache-path name="downloads" path="." />application/epub+zip(epub),application/pdf(pdf),application/zip(zip),application/x-7z-compressed(7z)ResourceRepositoryImpl.downloadResource()(bereits in #121 definiert), UI ruft nur ViewModel-Methode aufAkzeptanzkriterien
cacheDirgespeichert (nicht in permanentem Speicher)ActivityNotFoundException("Keine App zum Öffnen dieser Datei gefunden")FileProviderkorrekt konfiguriert (keineSecurityException)