Files
zemion db873063f8
Verify source and build Android / android (push) Canceled after 0s
initial commit v 0.2.0
2026-09-24 22:49:27 +02:00

6.3 KiB

Feature and format matrix — 0.2.0

“Implemented” below means implementation source is present. Android runtime features remain unverified until a real SDK build and device run. Core/JVM behaviour has the executed tests recorded in VALIDATION.md.

Area / format Implemented source behaviour Not implemented / important limits
Android file opening System picker, VIEW intent, single-file SEND, read grants, bounded snapshots No multi-file SEND, raw file paths, virtual-file conversion or cloud API
Native file browser Saved folders, nested navigation, breadcrumbs/Up, metadata, search/sort/dotfiles, opt-in provider thumbnails Scoped folders only; no root/all-files access, global index, live watch, file mutation or grid mode
Files-app registration APP_FILES, content-directory VIEW, separate GET_CONTENT picker Does not replace system OPEN_DOCUMENT / OPEN_DOCUMENT_TREE or guarantee a device default-files setting
File picker MIME constraints, single/multiple selection, review/confirmation, read-only copied URI results, LOCAL_ONLY system delegation No directory results, in-place editing, permanent URI promise, cloud-native conversion or original tree grants
External opening Read-only copy and chooser excluding this viewer 64 MiB limit; edits by recipients cannot update the original
Recent files Up to 20 URI/name entries; permission retention when granted; remove/clear Not copies retained forever; temporary attachment access can expire
PDF Isolated Android renderer, one page at a time, previous/next/jump, pinch zoom No text search/selection, continuous page scrolling, OCR, forms, annotations, passwords or printing
JPEG/PNG/WebP/GIF/BMP Platform bitmap decoding, bounds checks/downsampling, zoom First frame only; no EXIF orientation, animated playback, image editing or HEIC guarantee
Plain text and source UTF-8 / BOM-tagged UTF-16, selectable text, literal search No syntax highlighting, arbitrary legacy encodings, hex editor or giant-file streaming
Markdown Heading/list/code-block emphasis; original inline markup retained Not CommonMark-complete; no rich inline rendering, HTML execution or remote resources
CSV/TSV Quoted fields, escaped quotes, multiline fields, comma/semicolon/tab detection, table view Literal values only; no formulas, editing or schema inference
DOCX Body paragraphs, basic heading/list recognition, flattened table rows Not page layout; images, fields/revisions, comments, drawings, headers/footers and advanced structures incomplete
XLSX Named sheets, relationships, sparse cell positions, shared/inline strings, stored values, formula strings No calculation; cached values may be stale; date serials may show raw; no number styles/charts/merged cells/filter fidelity
PPTX Presentation relationship order, slide sections, text paragraphs Shape/XML text order not visual reading order; no graphical slides, charts, animations, speaker notes
ODT Basic paragraphs/headings and mixed text No layout fidelity, embedded graphics, revision semantics or full list/table formatting
ODS Named sheets, stored values, bounded row/cell repeats, sparse blank-padding skip No calculations/styles/charts; hidden content semantics incomplete
ODP Named slide sections, text paragraphs No full slide rendering or object-placement fidelity
ZIP Entry/path/size listing and filename search; no extraction No TAR/7z/RAR, encrypted ZIP, nested opening, selective extraction or compression
HTML/SVG/XML/JSON/YAML/etc. Inert source text when recognized No WebView, embedded scripting, SVG rasterization or structural tree editor
ICS/VCF Raw text by extension No calendar/contact import or structured card UI
Legacy DOC/XLS/PPT/RTF Explicit unsupported message No legacy rendering; no LibreOffice native engine
Macro-enabled Office Known macro extensions and VBA packages rejected Never execute macros; no automatic conversion
Encrypted Office Unsupported package/binary error No password flow or decryption
Share/save Share an original snapshot, save a copy, export labelled preview text Never edit original; no general conversion or Office-to-PDF export
Search Supported extracted blocks/rows, literal case-insensitive matching, bounded hits No PDF/OCR search; counts refer to matching blocks/rows, not all word occurrences
iOS Common Kotlin core and opt-in framework targets No app, ZIP adapter, bookmark implementation, native renderer or tested Apple build

Browser limits: 24 saved folders, 64 visited levels, 5,000 listing rows, 16 selected files when allowed, 64 MiB per copied file, 128 MiB per selection, 256 MiB picker-copy cache, and 4 MiB thumbnail cache. These are additional to the preview/parser limits below. See BROWSER.md.

Initial policy ceilings

64 MiB imported file; 4 MiB plain-text bytes / expanded preview characters; 8 MiB per inflated ZIP part; 32 MiB cumulative inflation; compression ratio up to 300:1; 4,096 archive entries; XML depth 96; 100,000 XML nodes; 64 attributes per element; 20,000 blocks; 32,768 characters per block/cell; 2,000 rows per displayed table; 128 columns; 50,000 total table cells; 200 sections; 1,000 search result blocks/rows. Native PDF output is limited to 3 million pixels, width 2,048 and height 4,096. Images over 100 million declared input pixels are rejected and decoded previews are downsampled.

These are conservative ceilings, not performance guarantees. A file below a byte ceiling can still be rejected for structure, content, missing parts, encoding or a secondary limit. ZIP indexes do not inflate file entries; expansion ceilings apply when a part is actually read. Very compressible legitimate XML can hit the same ratio limit as malicious content and be refused.

Fidelity contract

The app does not silently present a reading preview as the complete original. A visible banner identifies Office previews, and a tap shows detailed caveats. Text exports retain notices. Original-file sharing sends the untouched snapshot, not converted/extracted text.

Documents requiring exact placement, complete revision history, financial recalculation, or legal/ scientific completeness must be checked in an appropriate full-fidelity application. This release is intended for opening and inspecting routine files, not certifying their complete contents.