Merge pull request #130 from astubenbord/feature/fastlane-ci
Feature/fastlane ci
69
.github/workflows/release_deploy_play_store.yml
vendored
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
## See https://github.com/flutter/gallery/blob/main/.github/workflows/release_deploy_play_store.yml
|
||||||
|
|
||||||
|
name: Deploy to Play Store
|
||||||
|
on:
|
||||||
|
# Enable manual run
|
||||||
|
workflow_dispatch:
|
||||||
|
inputs:
|
||||||
|
lane:
|
||||||
|
description: "Fastlane lane"
|
||||||
|
required: true
|
||||||
|
default: "alpha"
|
||||||
|
type: choice
|
||||||
|
options:
|
||||||
|
- alpha
|
||||||
|
- promote_to_beta
|
||||||
|
- beta
|
||||||
|
- promote_to_production
|
||||||
|
- production
|
||||||
|
|
||||||
|
# Declare default permissions as read only.
|
||||||
|
permissions: read-all
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
fastlane-deploy:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
# Set up Flutter.
|
||||||
|
- name: Clone Flutter repository with stable channel
|
||||||
|
uses: subosito/flutter-action@dbf1fa04f4d2e52c33185153d06cdb5443aa189d
|
||||||
|
with:
|
||||||
|
channel: stable
|
||||||
|
- run: flutter doctor -v
|
||||||
|
|
||||||
|
# Setup app
|
||||||
|
- name: Checkout Paperless mobile, get packages and run code generators
|
||||||
|
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c
|
||||||
|
- run: |
|
||||||
|
pushd scripts
|
||||||
|
bash install_dependencies.sh
|
||||||
|
popd
|
||||||
|
|
||||||
|
# Setup Ruby, Bundler, and Gemfile dependencies
|
||||||
|
- name: Setup Fastlane
|
||||||
|
uses: ruby/setup-ruby@8df78e55761745aad83acaf3ff12976382356e6d
|
||||||
|
with:
|
||||||
|
ruby-version: "2.6"
|
||||||
|
bundler-cache: true
|
||||||
|
working-directory: android
|
||||||
|
|
||||||
|
- name: Configure Keystore
|
||||||
|
run: |
|
||||||
|
echo "$PLAY_STORE_UPLOAD_KEY" | base64 --decode > app/upload-keystore.jks
|
||||||
|
echo "storeFile=upload-keystore.jks" >> key.properties
|
||||||
|
echo "keyAlias=$KEYSTORE_KEY_ALIAS" >> key.properties
|
||||||
|
echo "storePassword=$KEYSTORE_STORE_PASSWORD" >> key.properties
|
||||||
|
echo "keyPassword=$KEYSTORE_KEY_PASSWORD" >> key.properties
|
||||||
|
env:
|
||||||
|
PLAY_STORE_UPLOAD_KEY: ${{ secrets.PLAY_STORE_UPLOAD_KEY }}
|
||||||
|
KEYSTORE_KEY_ALIAS: ${{ secrets.KEYSTORE_KEY_ALIAS }}
|
||||||
|
KEYSTORE_KEY_PASSWORD: ${{ secrets.KEYSTORE_KEY_PASSWORD }}
|
||||||
|
KEYSTORE_STORE_PASSWORD: ${{ secrets.KEYSTORE_STORE_PASSWORD }}
|
||||||
|
working-directory: android
|
||||||
|
|
||||||
|
# Build and deploy with Fastlane (by default, to alpha track) 🚀.
|
||||||
|
# Naturally, promote_to_production only deploys.
|
||||||
|
- run: bundle exec fastlane ${{ github.event.inputs.lane || 'alpha' }}
|
||||||
|
env:
|
||||||
|
PLAY_STORE_CREDENTIALS: ${{ secrets.PLAY_STORE_CREDENTIALS }}
|
||||||
|
working-directory: android
|
||||||
@@ -1,3 +1,3 @@
|
|||||||
source "https://rubygems.org"
|
source "https://rubygems.org"
|
||||||
|
|
||||||
gem "fastlane"
|
gem "fastlane"
|
||||||
@@ -1,23 +1,23 @@
|
|||||||
GEM
|
GEM
|
||||||
remote: https://rubygems.org/
|
remote: https://rubygems.org/
|
||||||
specs:
|
specs:
|
||||||
CFPropertyList (3.0.5)
|
CFPropertyList (3.0.6)
|
||||||
rexml
|
rexml
|
||||||
addressable (2.8.1)
|
addressable (2.8.1)
|
||||||
public_suffix (>= 2.0.2, < 6.0)
|
public_suffix (>= 2.0.2, < 6.0)
|
||||||
artifactory (3.0.15)
|
artifactory (3.0.15)
|
||||||
atomos (0.1.3)
|
atomos (0.1.3)
|
||||||
aws-eventstream (1.2.0)
|
aws-eventstream (1.2.0)
|
||||||
aws-partitions (1.656.0)
|
aws-partitions (1.716.0)
|
||||||
aws-sdk-core (3.166.0)
|
aws-sdk-core (3.170.0)
|
||||||
aws-eventstream (~> 1, >= 1.0.2)
|
aws-eventstream (~> 1, >= 1.0.2)
|
||||||
aws-partitions (~> 1, >= 1.651.0)
|
aws-partitions (~> 1, >= 1.651.0)
|
||||||
aws-sigv4 (~> 1.5)
|
aws-sigv4 (~> 1.5)
|
||||||
jmespath (~> 1, >= 1.6.1)
|
jmespath (~> 1, >= 1.6.1)
|
||||||
aws-sdk-kms (1.59.0)
|
aws-sdk-kms (1.62.0)
|
||||||
aws-sdk-core (~> 3, >= 3.165.0)
|
aws-sdk-core (~> 3, >= 3.165.0)
|
||||||
aws-sigv4 (~> 1.1)
|
aws-sigv4 (~> 1.1)
|
||||||
aws-sdk-s3 (1.117.1)
|
aws-sdk-s3 (1.119.1)
|
||||||
aws-sdk-core (~> 3, >= 3.165.0)
|
aws-sdk-core (~> 3, >= 3.165.0)
|
||||||
aws-sdk-kms (~> 1)
|
aws-sdk-kms (~> 1)
|
||||||
aws-sigv4 (~> 1.4)
|
aws-sigv4 (~> 1.4)
|
||||||
@@ -36,8 +36,8 @@ GEM
|
|||||||
unf (>= 0.0.5, < 1.0.0)
|
unf (>= 0.0.5, < 1.0.0)
|
||||||
dotenv (2.8.1)
|
dotenv (2.8.1)
|
||||||
emoji_regex (3.2.3)
|
emoji_regex (3.2.3)
|
||||||
excon (0.93.1)
|
excon (0.99.0)
|
||||||
faraday (1.10.2)
|
faraday (1.10.3)
|
||||||
faraday-em_http (~> 1.0)
|
faraday-em_http (~> 1.0)
|
||||||
faraday-em_synchrony (~> 1.0)
|
faraday-em_synchrony (~> 1.0)
|
||||||
faraday-excon (~> 1.1)
|
faraday-excon (~> 1.1)
|
||||||
@@ -66,7 +66,7 @@ GEM
|
|||||||
faraday_middleware (1.2.0)
|
faraday_middleware (1.2.0)
|
||||||
faraday (~> 1.0)
|
faraday (~> 1.0)
|
||||||
fastimage (2.2.6)
|
fastimage (2.2.6)
|
||||||
fastlane (2.210.1)
|
fastlane (2.212.1)
|
||||||
CFPropertyList (>= 2.3, < 4.0.0)
|
CFPropertyList (>= 2.3, < 4.0.0)
|
||||||
addressable (>= 2.8, < 3.0.0)
|
addressable (>= 2.8, < 3.0.0)
|
||||||
artifactory (~> 3.0)
|
artifactory (~> 3.0)
|
||||||
@@ -106,9 +106,9 @@ GEM
|
|||||||
xcpretty (~> 0.3.0)
|
xcpretty (~> 0.3.0)
|
||||||
xcpretty-travis-formatter (>= 0.0.3)
|
xcpretty-travis-formatter (>= 0.0.3)
|
||||||
gh_inspector (1.1.3)
|
gh_inspector (1.1.3)
|
||||||
google-apis-androidpublisher_v3 (0.30.0)
|
google-apis-androidpublisher_v3 (0.34.0)
|
||||||
google-apis-core (>= 0.9.1, < 2.a)
|
google-apis-core (>= 0.9.1, < 2.a)
|
||||||
google-apis-core (0.9.1)
|
google-apis-core (0.11.0)
|
||||||
addressable (~> 2.5, >= 2.5.1)
|
addressable (~> 2.5, >= 2.5.1)
|
||||||
googleauth (>= 0.16.2, < 2.a)
|
googleauth (>= 0.16.2, < 2.a)
|
||||||
httpclient (>= 2.8.1, < 3.a)
|
httpclient (>= 2.8.1, < 3.a)
|
||||||
@@ -117,8 +117,8 @@ GEM
|
|||||||
retriable (>= 2.0, < 4.a)
|
retriable (>= 2.0, < 4.a)
|
||||||
rexml
|
rexml
|
||||||
webrick
|
webrick
|
||||||
google-apis-iamcredentials_v1 (0.16.0)
|
google-apis-iamcredentials_v1 (0.17.0)
|
||||||
google-apis-core (>= 0.9.1, < 2.a)
|
google-apis-core (>= 0.11.0, < 2.a)
|
||||||
google-apis-playcustomapp_v1 (0.12.0)
|
google-apis-playcustomapp_v1 (0.12.0)
|
||||||
google-apis-core (>= 0.9.1, < 2.a)
|
google-apis-core (>= 0.9.1, < 2.a)
|
||||||
google-apis-storage_v1 (0.19.0)
|
google-apis-storage_v1 (0.19.0)
|
||||||
@@ -148,11 +148,11 @@ GEM
|
|||||||
http-cookie (1.0.5)
|
http-cookie (1.0.5)
|
||||||
domain_name (~> 0.5)
|
domain_name (~> 0.5)
|
||||||
httpclient (2.8.3)
|
httpclient (2.8.3)
|
||||||
jmespath (1.6.1)
|
jmespath (1.6.2)
|
||||||
json (2.6.2)
|
json (2.6.3)
|
||||||
jwt (2.5.0)
|
jwt (2.7.0)
|
||||||
memoist (0.16.2)
|
memoist (0.16.2)
|
||||||
mini_magick (4.11.0)
|
mini_magick (4.12.0)
|
||||||
mini_mime (1.1.2)
|
mini_mime (1.1.2)
|
||||||
multi_json (1.15.0)
|
multi_json (1.15.0)
|
||||||
multipart-post (2.0.0)
|
multipart-post (2.0.0)
|
||||||
@@ -160,8 +160,8 @@ GEM
|
|||||||
naturally (2.2.1)
|
naturally (2.2.1)
|
||||||
optparse (0.1.1)
|
optparse (0.1.1)
|
||||||
os (1.1.4)
|
os (1.1.4)
|
||||||
plist (3.6.0)
|
plist (3.7.0)
|
||||||
public_suffix (5.0.0)
|
public_suffix (5.0.1)
|
||||||
rake (13.0.6)
|
rake (13.0.6)
|
||||||
representable (3.2.0)
|
representable (3.2.0)
|
||||||
declarative (< 0.1.0)
|
declarative (< 0.1.0)
|
||||||
@@ -178,7 +178,7 @@ GEM
|
|||||||
faraday (>= 0.17.5, < 3.a)
|
faraday (>= 0.17.5, < 3.a)
|
||||||
jwt (>= 1.5, < 3.0)
|
jwt (>= 1.5, < 3.0)
|
||||||
multi_json (~> 1.10)
|
multi_json (~> 1.10)
|
||||||
simctl (1.6.8)
|
simctl (1.6.10)
|
||||||
CFPropertyList
|
CFPropertyList
|
||||||
naturally
|
naturally
|
||||||
terminal-notifier (2.0.0)
|
terminal-notifier (2.0.0)
|
||||||
@@ -192,9 +192,10 @@ GEM
|
|||||||
uber (0.1.0)
|
uber (0.1.0)
|
||||||
unf (0.1.4)
|
unf (0.1.4)
|
||||||
unf_ext
|
unf_ext
|
||||||
unf_ext (0.0.8.2-x64-mingw-ucrt)
|
unf_ext (0.0.8.2)
|
||||||
|
unf_ext (0.0.8.2-x86-mingw32)
|
||||||
unicode-display_width (1.8.0)
|
unicode-display_width (1.8.0)
|
||||||
webrick (1.7.0)
|
webrick (1.8.1)
|
||||||
word_wrap (1.0.0)
|
word_wrap (1.0.0)
|
||||||
xcodeproj (1.22.0)
|
xcodeproj (1.22.0)
|
||||||
CFPropertyList (>= 2.3.3, < 4.0)
|
CFPropertyList (>= 2.3.3, < 4.0)
|
||||||
@@ -209,10 +210,11 @@ GEM
|
|||||||
xcpretty (~> 0.2, >= 0.0.7)
|
xcpretty (~> 0.2, >= 0.0.7)
|
||||||
|
|
||||||
PLATFORMS
|
PLATFORMS
|
||||||
x64-mingw-ucrt
|
ruby
|
||||||
|
x86-mingw32
|
||||||
|
|
||||||
DEPENDENCIES
|
DEPENDENCIES
|
||||||
fastlane
|
fastlane
|
||||||
|
|
||||||
BUNDLED WITH
|
BUNDLED WITH
|
||||||
2.3.7
|
2.1.4
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ buildscript {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dependencies {
|
dependencies {
|
||||||
classpath 'com.android.tools.build:gradle:7.2.1'
|
classpath 'com.android.tools.build:gradle:7.2.0'
|
||||||
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
||||||
// implementation 'androidx.window:window:1.0.0'
|
// implementation 'androidx.window:window:1.0.0'
|
||||||
// implementation 'androidx.window:window-java:1.0.0'
|
// implementation 'androidx.window:window-java:1.0.0'
|
||||||
|
|||||||
1
android/fastlane/Appfile
Normal file
@@ -0,0 +1 @@
|
|||||||
|
package_name("de.astubenbord.paperless_mobile")
|
||||||
73
android/fastlane/Fastfile
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
# This file contains the fastlane.tools configuration
|
||||||
|
# You can find the documentation at https://docs.fastlane.tools
|
||||||
|
#
|
||||||
|
# For a list of all available actions, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/actions
|
||||||
|
#
|
||||||
|
# For a list of all available plugins, check out
|
||||||
|
#
|
||||||
|
# https://docs.fastlane.tools/plugins/available-plugins
|
||||||
|
#
|
||||||
|
|
||||||
|
# Uncomment the line if you want fastlane to automatically update itself
|
||||||
|
# update_fastlane
|
||||||
|
|
||||||
|
default_platform(:android)
|
||||||
|
|
||||||
|
platform :android do
|
||||||
|
desc "Runs all the tests"
|
||||||
|
lane :test do
|
||||||
|
gradle(task: "test")
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Submit a new alpha build to Google Play"
|
||||||
|
lane :alpha do
|
||||||
|
sh "flutter build appbundle -v"
|
||||||
|
upload_to_play_store(
|
||||||
|
track: 'alpha',
|
||||||
|
aab: '../build/app/outputs/bundle/release/app-release.aab',
|
||||||
|
json_key_data: ENV['PLAY_STORE_CREDENTIALS'],
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Promote alpha track to beta"
|
||||||
|
lane :promote_to_production do
|
||||||
|
upload_to_play_store(
|
||||||
|
track: 'alpha',
|
||||||
|
track_promote_to: 'beta',
|
||||||
|
skip_upload_changelogs: true,
|
||||||
|
json_key_data: ENV['PLAY_STORE_CREDENTIALS'],
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Submit a new beta build to Google Play"
|
||||||
|
lane :alpha do
|
||||||
|
sh "flutter build appbundle -v"
|
||||||
|
upload_to_play_store(
|
||||||
|
track: 'beta',
|
||||||
|
aab: '../build/app/outputs/bundle/release/app-release.aab',
|
||||||
|
json_key_data: ENV['PLAY_STORE_CREDENTIALS'],
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Promote beta track to prod"
|
||||||
|
lane :promote_to_production do
|
||||||
|
upload_to_play_store(
|
||||||
|
track: 'beta',
|
||||||
|
track_promote_to: 'production',
|
||||||
|
skip_upload_changelogs: true,
|
||||||
|
json_key_data: ENV['PLAY_STORE_CREDENTIALS'],
|
||||||
|
)
|
||||||
|
end
|
||||||
|
|
||||||
|
desc "Submit a new production build to Google Play"
|
||||||
|
lane :production do
|
||||||
|
sh "flutter build appbundle -v"
|
||||||
|
upload_to_play_store(
|
||||||
|
track: 'production',
|
||||||
|
aab: '../build/app/outputs/bundle/release/app-release.aab',
|
||||||
|
json_key_data: ENV['PLAY_STORE_CREDENTIALS'],
|
||||||
|
)
|
||||||
|
end
|
||||||
|
end
|
||||||
48
android/fastlane/README.md
Normal file
@@ -0,0 +1,48 @@
|
|||||||
|
fastlane documentation
|
||||||
|
----
|
||||||
|
|
||||||
|
# Installation
|
||||||
|
|
||||||
|
Make sure you have the latest version of the Xcode command line tools installed:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
xcode-select --install
|
||||||
|
```
|
||||||
|
|
||||||
|
For _fastlane_ installation instructions, see [Installing _fastlane_](https://docs.fastlane.tools/#installing-fastlane)
|
||||||
|
|
||||||
|
# Available Actions
|
||||||
|
|
||||||
|
## Android
|
||||||
|
|
||||||
|
### android test
|
||||||
|
|
||||||
|
```sh
|
||||||
|
[bundle exec] fastlane android test
|
||||||
|
```
|
||||||
|
|
||||||
|
Runs all the tests
|
||||||
|
|
||||||
|
### android beta
|
||||||
|
|
||||||
|
```sh
|
||||||
|
[bundle exec] fastlane android beta
|
||||||
|
```
|
||||||
|
|
||||||
|
Submit a new Beta Build to Crashlytics Beta
|
||||||
|
|
||||||
|
### android deploy
|
||||||
|
|
||||||
|
```sh
|
||||||
|
[bundle exec] fastlane android deploy
|
||||||
|
```
|
||||||
|
|
||||||
|
Deploy a new version to the Google Play
|
||||||
|
|
||||||
|
----
|
||||||
|
|
||||||
|
This README.md is auto-generated and will be re-generated every time [_fastlane_](https://fastlane.tools) is run.
|
||||||
|
|
||||||
|
More information about _fastlane_ can be found on [fastlane.tools](https://fastlane.tools).
|
||||||
|
|
||||||
|
The documentation of _fastlane_ can be found on [docs.fastlane.tools](https://docs.fastlane.tools).
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
* Verbessern der Dateipfad-Verarbeitung beim Hochladen/Teilen von Dokumenten
|
||||||
18
android/fastlane/metadata/android/de-DE/full_description.txt
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
Ein (fast) vollwertiger mobiler Paperless client kompatibel mit Paperless.
|
||||||
|
|
||||||
|
Das Benutzen der App setzt den Zugang zu einer laufenden Paperless-ng*x Instanz voraus.
|
||||||
|
|
||||||
|
✔️ Betrachte und suche Dokumente
|
||||||
|
✔️ Bearbeite, lösche oder füge neue Dokumente hinzu
|
||||||
|
✔️ Teile Dokumente, lade sie herunter oder betrachte deine Dateien
|
||||||
|
✔️ Verwalte Korrespondenten, Dokumenttypen, Tags oder Speicherpfade
|
||||||
|
✔️ Scanne und lade Dokumente mit bereits zugewiesenen Werten hoch
|
||||||
|
✔️ Überprüfe und verarbeite neue Dokumente im Posteingang
|
||||||
|
✔️ Sichere deine Daten mit biometrischer Authentifizierung
|
||||||
|
✔️ Unterstützung für TLS-Mutual Authentucation (Client Zertifikate)
|
||||||
|
✔️ Moderne, intuitive Nutzeroberfläche basierend auf der Material Design 3 Spezifikation
|
||||||
|
✔️ Heller und Dunkler Modus sowie Unterstützung für dynamische Farbgebung (Android 12+)
|
||||||
|
✔️ Verfügbar in Deutsch, Englisch, Tchechisch* und Türkish*
|
||||||
|
|
||||||
|
|
||||||
|
* Noch nicht vollständig übersetzt
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
Ein (fast) vollwertiger mobiler Paperless client.
|
||||||
0
android/fastlane/metadata/android/de-DE/video.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
* Fix file path splitting when uploading/sharing files
|
||||||
18
android/fastlane/metadata/android/en-US/full_description.txt
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
An (almost) fully fledged mobile Paperless client compatible with Paperless.
|
||||||
|
|
||||||
|
Using this app requires access to running a Paperless-ng*x instance.
|
||||||
|
|
||||||
|
✔️ View and search documents
|
||||||
|
✔️ Add, delete or edit documents
|
||||||
|
✔️ Share, download and preview your files
|
||||||
|
✔️ Manage correspondents, document types, tags and storage paths
|
||||||
|
✔️ Scan and upload documents with preset correspondent, document type, tags and creation date
|
||||||
|
✔️ Review and quickly process newly added documents in the inbox
|
||||||
|
✔️ Secure your data with biometric authentication
|
||||||
|
✔️ Support for TLS mutual authentication (client certificates)
|
||||||
|
✔️ Modern, intuitive UI built according to the Material Design 3 specification
|
||||||
|
✔️ Light and dark theme and support for dynamic color (Android 12+)
|
||||||
|
✔️ Available in English, German, Czech* and Turkish* language
|
||||||
|
|
||||||
|
|
||||||
|
* Not fully translated yet
|
||||||
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 45 KiB |
BIN
android/fastlane/metadata/android/en-US/images/icon.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 252 KiB After Width: | Height: | Size: 252 KiB |
|
Before Width: | Height: | Size: 252 KiB After Width: | Height: | Size: 252 KiB |
|
Before Width: | Height: | Size: 249 KiB After Width: | Height: | Size: 249 KiB |
|
Before Width: | Height: | Size: 263 KiB After Width: | Height: | Size: 263 KiB |
|
Before Width: | Height: | Size: 252 KiB After Width: | Height: | Size: 252 KiB |
|
Before Width: | Height: | Size: 194 KiB After Width: | Height: | Size: 194 KiB |
|
Before Width: | Height: | Size: 258 KiB After Width: | Height: | Size: 258 KiB |
|
Before Width: | Height: | Size: 161 KiB After Width: | Height: | Size: 161 KiB |
@@ -0,0 +1 @@
|
|||||||
|
An (almost) fully fledged mobile Paperless client.
|
||||||
1
android/fastlane/metadata/android/en-US/title.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
Paperless Mobile
|
||||||
0
android/fastlane/metadata/android/en-US/video.txt
Normal file
18
android/fastlane/report.xml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<testsuites>
|
||||||
|
<testsuite name="fastlane.lanes">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
<testcase classname="fastlane.lanes" name="0: default_platform" time="0.0014968">
|
||||||
|
|
||||||
|
</testcase>
|
||||||
|
|
||||||
|
|
||||||
|
<testcase classname="fastlane.lanes" name="1: clean assembleRelease" time="96.2749608">
|
||||||
|
|
||||||
|
</testcase>
|
||||||
|
|
||||||
|
</testsuite>
|
||||||
|
</testsuites>
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
org.gradle.jvmargs=-Xmx1536M
|
org.gradle.jvmargs=-Xmx1536M
|
||||||
android.useAndroidX=true
|
android.useAndroidX=true
|
||||||
android.enableJetifier=true
|
android.enableJetifier=true
|
||||||
|
android.suppressUnsupportedCompileSdk=33
|
||||||
|
|||||||
@@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME
|
|||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-all.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-all.zip
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
* Add F-Droid metadata
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
With this app you can conveniently add, manage or simply find documents stored in your paperless server without any compromises.
|
|
||||||
|
|
||||||
🚀 Features
|
|
||||||
✔️ View your documents at a glance, in a compact list or a more detailed grid view
|
|
||||||
✔️ Add, delete or edit your documents
|
|
||||||
✔️ Share, download and preview PDF files
|
|
||||||
✔️ Manage and assign correspondents, document types, tags and storage paths
|
|
||||||
✔️ Scan and upload documents to paperless with preset correspondent, document type, tags and creation date
|
|
||||||
✔️ Upload existing documents from other apps via Paperless Mobile
|
|
||||||
✔️ See all new documents in a dedicated inbox
|
|
||||||
✔️ Search for documents using a wide range of filter criteria
|
|
||||||
✔️ Secure your data with biometric authentication across sessions
|
|
||||||
✔️ Support for TLS mutual authentication (client certificates)
|
|
||||||
✔️ Modern, intuitive UI built according to the Material Design 3 specification
|
|
||||||
✔️ Available in English and German language (more to come!)
|
|
||||||
|
Before Width: | Height: | Size: 34 KiB |
@@ -1 +0,0 @@
|
|||||||
An (almost) fully fledged Paperless mobile client.
|
|
||||||