Skip to content

Commit

Permalink
Merge branch 'master' into FDroid
Browse files Browse the repository at this point in the history
  • Loading branch information
k3b committed Apr 23, 2019
2 parents 7a0370d + 1d2ffcb commit 2559905
Show file tree
Hide file tree
Showing 168 changed files with 6,103 additions and 3,182 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -32,3 +32,4 @@ build
/fotolib2/src/test/resources/de/k3b/media/old
/app/build-with-sign.gradle
/todo
/clipboard.txt
5 changes: 3 additions & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,7 @@ android:
- tools

# values in gradle.properties and .travis must be the same
# - build-tools-24.0.2
- build-tools-27.0.1
- build-tools-28.0.3
- android-23

- add-on
Expand All @@ -30,6 +29,8 @@ before_install:
# git update-index --chmod=+x gradlew
# instead of
# - chmod +x gradlew
# https://stackoverflow.com/questions/52274229/travis-ci-android-28-licenses-have-not-been-accepted
- yes | sdkmanager "platforms;android-28"

script:
- jdk_switcher use oraclejdk8
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ Privacy:
* Geotagging: Shows photos in a [geographic map](https://github.com/k3b/APhotoManager/wiki/geographic-map) from [openstreetmap](http://www.openstreetmap.org)
* Buildin file manager for photos: find, sort, view, copy, delete, Show in map, set gps exif data, send, edit exif, ... .
* Fast [find](https://github.com/k3b/APhotoManager/wiki/Filter-View) local photos by (sub-)folder, date, [geographic map](https://github.com/k3b/APhotoManager/wiki/geographic-map)or [tags (keywords)](https://github.com/k3b/APhotoManager/wiki/Tags).
* [Translations](https://crowdin.com/project/AndroFotoFinder): &nbsp;ar,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/de-home">de</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/home" >en</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/it-home">it</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/fr-home">fr</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/ja-home">ja</a>,&nbsp;nl,&nbsp;pl,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/ro-home">ro</a>,&nbsp;ru&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/tr-home">tr</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/uk-home">uk</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/zh-CN-home">zh-CN</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/zh-TW-home">zh-TW</a>
* [Translations](https://crowdin.com/project/AndroFotoFinder): &nbsp;ar,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/de-home">de</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/home" >en</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/it-home">it</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/fr-home">fr</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/ja-home">ja</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/nl-Home">nl</a>,&nbsp;pl,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/ro-home">ro</a>,&nbsp;ru&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/tr-home">tr</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/uk-home">uk</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/zh-CN-home">zh-CN</a>,&nbsp;<a href="https://github.com/k3b/APhotoManager/wiki/zh-TW-home">zh-TW</a>
* [![Crowdin](https://d322cqt584bo4o.cloudfront.net/androFotoFinder/localized.svg)](https://crowdin.com/project/androFotoFinder)<a href="https://github.com/k3b/APhotoManager/issues/21">Help us to translate into other languages.</a>

---
Expand Down
86 changes: 53 additions & 33 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ apply plugin: 'ch.raffael.pegdown-doclet'
android {
// appXXX are defined in gradle.properties
compileSdkVersion = Integer.valueOf(appCompileSdkVersion)
buildToolsVersion = appBuildToolsVersion

defaultConfig {
// fdroid-release 'de.k3b.android.androFotoFinder'
Expand Down Expand Up @@ -52,10 +51,20 @@ android {
// 0.7.0.180823 (38) Searchbar, vitual-folder, new icons
// 0.7.1.180830 (39) Bugfix for 38; translation uk
// 0.7.2.181027 (40) Bugfixes: image orientation, media scanner
// 0.7.3.190424 (41) mapsforge-v5, filter date-last-modified, Fix getContent, exif-TAG_DATETIME, Translation ja, nl, ru, pt-br, uk

versionCode = 40
versionName = '0.7.2.181027'
versionCode = 41
versionName = '0.7.3.190424'

// all supported locales
// resConfigs "ar","de","es","fr","hi","in","it","ja","nl","pl","ro","ru","tr","uk","zz","pt-rBR","zh-rCN","zh-rTW"
}



// does not remove german translations :-(
// sourceSets.main.res.filter.exclude '**/res/values-de/**'

compileOptions {
sourceCompatibility JavaVersion.VERSION_1_7
targetCompatibility JavaVersion.VERSION_1_7
Expand All @@ -80,15 +89,17 @@ android {
// http://stackoverflow.com/questions/31350350/generating-signed-apk-error7-missingtranslation-in-build-generated-res-gen
// MissingTranslation : not all crowdwin translations are complete so ignore them
// ValidFragment : local (dialog-)fragment class for customized direcotry picker is fragile but on rotation code makes shure that dialog is closed.
disable 'MissingTranslation','ValidFragment', 'ContentDescription', 'AndroidLintPluralsCandidate', 'AndroidLintRtlHardcoded'
// disable 'MissingTranslation','ValidFragment', 'ContentDescription', 'AndroidLintPluralsCandidate', 'AndroidLintRtlHardcoded'
disable 'MissingTranslation','ValidFragment', 'ContentDescription', 'ExpiredTargetSdkVersion'

abortOnError false
}
buildToolsVersion = '28.0.3'
}

// task from https://stackoverflow.com/questions/45848521/how-to-sync-android-project-by-gradle-task/45856729#45856729
import java.util.regex.Pattern
task('increaseVersionCode') << {
task('increaseVersionCode').doLast({
def buildFile = file("build.gradle")
def pattern = Pattern.compile("versionCode\\s+(\\d+)")
def manifestText = buildFile.getText()
Expand All @@ -97,55 +108,64 @@ task('increaseVersionCode') << {
def versionCode = Integer.parseInt(matcher.group(1))
def manifestContent = matcher.replaceAll("versionCode " + ++versionCode)
buildFile.write(manifestContent)
}
})

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':fotolib2')

// compile project(':k3b-geoHelper')
compile 'com.github.k3b:k3b-geoHelper:1.1.5'
testImplementation 'junit:junit:4.11'
testImplementation 'org.slf4j:slf4j-api:1.7.7@jar'
testImplementation 'org.slf4j:slf4j-simple:1.7.7'

implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation project(':fotolib2')

// implementation project(':k3b-geoHelper')
implementation 'com.github.k3b:k3b-geoHelper:1.1.5'

// https://github.com/nostra13/Android-Universal-Image-Loader
compile 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'

// zoomable image view
// from https://github.com/chrisbanes/PhotoView
// compile 'com.github.chrisbanes.photoview:library:1.2.3'
// compile project(':fotoview.library') // local copy of PhotoView
compile 'com.github.k3b:PhotoView:v1.2.6.k3b-7-SNAPSHOT' // via jitpack.io last bugfix on 2018-10-17
// implementation 'com.github.chrisbanes.photoview:library:1.2.3'
// implementation project(':fotoview.library') // local copy of PhotoView
implementation 'com.github.k3b:PhotoView:v1.2.6.k3b-7-SNAPSHOT' // via jitpack.io last bugfix on 2018-10-17

// for view-pager
compile 'com.android.support:support-v4:21.0.2'
// compile 'com.android.support:support-v4:23.1.1'
// compile 'com.android.support:support-v4:21.0.2'
// compile 'com.android.support:appcompat-v7:21.0.2'
implementation 'com.android.support:support-v4:21.0.2'
// implementation 'com.android.support:support-v4:23.1.1'
// implementation 'com.android.support:support-v4:21.0.2'
// implementation 'com.android.support:appcompat-v7:21.0.2'
// exif support
// https://github.com/drewnoakes/metadata-extractor/wiki/GettingStarted licence: http://www.apache.org/licenses/LICENSE-2.0
// 2.10.1 includes more recent xmpcore that generates java-8 bytecode not supported by android yet
compile ('com.drewnoakes:metadata-extractor:2.10.1') { transitive = false; } // 2.8.1
implementation ('com.drewnoakes:metadata-extractor:2.10.1') { transitive = false } // 2.8.1

// compile 'com.adobe.xmp:xmpcore:6.1.10' // update for drewnoakes:metadata-extractor requires java-8 compiler does not run on my android-4.4.
compile 'com.adobe.xmp:xmpcore:5.1.2' // current version for drewnoakes:metadata-extractor
// implementation 'com.adobe.xmp:xmpcore:6.1.10' // update for drewnoakes:metadata-extractor requires java-8 compiler does not run on my android-4.4.
implementation 'com.adobe.xmp:xmpcore:5.1.2' // current version for drewnoakes:metadata-extractor

// compile 'com.github.k3b:slideDateTimePicker:v1.0.5' // via jitpack.io
// implementation 'com.github.k3b:slideDateTimePicker:v1.0.5' // via jitpack.io

// compile 'org.apache.commons:commons-configuration2:2.1.1'
// implementation 'org.apache.commons:commons-configuration2:2.1.1'

// this is osmdroid
// compile 'org.osmdroid:osmdroid-android:5.4:release@aar'
// compile ('org.osmdroid:osmdroid-mapsforge:5.4:release@aar')
compile 'org.osmdroid:osmdroid-android:6.0.1'
compile ('org.osmdroid:osmdroid-mapsforge:6.0.1')
// https://github.com/osmdroid/osmdroid/ 6.0.3 from 11/2018
// https://github.com/osmdroid/osmdroid/ 6.1.0 from 03/2019
implementation 'org.osmdroid:osmdroid-android:6.1.0'
implementation ('org.osmdroid:osmdroid-mapsforge:6.1.0')


//Mapsforge rendering and database support, which is LGPL
compile 'org.mapsforge:mapsforge-map-android:0.6.1'
compile 'org.mapsforge:mapsforge-map:0.6.1'
implementation 'org.mapsforge:mapsforge-map-android:0.11.0'
implementation 'org.mapsforge:mapsforge-map:0.11.0'
implementation 'org.mapsforge:mapsforge-themes:0.11.0'

implementation 'org.slf4j:slf4j-api:1.7.7@jar'
implementation 'eu.lp0.slf4j:slf4j-android:1.7.7-1@jar'

compile 'org.slf4j:slf4j-api:1.7.7@jar'
compile 'eu.lp0.slf4j:slf4j-android:1.7.7-1@jar'

testCompile 'junit:junit:4.11'
testCompile 'org.slf4j:slf4j-simple:1.7.7'
// https://jitpack.io/com/github/k3b/ToGoZip/L2.0.15/build.log
// https://jitpack.io/com/github/k3b/ToGoZip/libK3bZip/L2.0.15/
// implementation('com.github.k3b.ToGoZip:libK3bZip:L2.0.15') { transitive = false; }
implementation('com.github.k3b.ToGoZip:libK3bZip:v2.0.18.181224') { transitive = false }
}
6 changes: 5 additions & 1 deletion app/proguard-rules.pro
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,11 @@
-keep class org.xmlpull.** { *; }
-keep class de.k3b.android.widget.EditTextPreferenceWithSummary { *; }
-keep class de.k3b.android.widget.SearchViewWithHistory { *; }
-assumenosideeffects class com.google.android.gms.ads.MobileAds { *; }
-dontnote MobileAds

# removed in org.mapsforge:mapsforge-map-android:0.10.0
# but still referenced in org.osmdroid.mapsforge.MapsForgeTileSource
# -assumenosideeffects class org.mapsforge.map.reader.ReadBuffer { public void setMaximumBufferSize(...); }

###############
# I use proguard only to remove unused stuff and to keep the app small.
Expand Down
63 changes: 63 additions & 0 deletions app/src/debug/res/values-nl/fdroid.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--
/*
* Translation to Dutch by Klaas Swart (verydutch) 2018-11-29 ... 2019-04-08.
*
* These Texts will be shown as programdescription in the fdroid app store
* https://f-droid.org/app/de.k3b.android.androFotoFinder.
*
* the content will be copied to .../fastlane/metadata/android/*.txt
*
* This file is part of "A Photo Manager" (A(ndro)FotoFinder).
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>
*/
-->
<resources>
<!-- Optional: This becomes .../fastlane/metadata/android/title.txt.
See https://f-droid.org/docs/Build_Metadata_Reference/#Name
Example: If spanish title="Manejador de fotos" then the App name/title in F-Droid-store becomes "A Photo Manager (Manejador de fotos)" -->
<string name="title">Een foto beheerder</string>
<!-- This becomes .../fastlane/metadata/android/short_description.txt.
See https://f-droid.org/docs/Build_Metadata_Reference/#Summary -->
<string name="short_description">Lokale foto\'s beheren: zoeken/kopieren/Exif bewerken en weergeven in galerij of op kaart.</string>
<!-- This becomes .../fastlane/metadata/android/full_description.txt.
See https://f-droid.org/docs/Build_Metadata_Reference/#Description -->
<string name="full_description"><![CDATA["
Beheer van lokale foto's: zoeken/kopieren/Exif-bewerken en weergave in galerij of op kaart.
Beschikt over:
* Snelzoeken foto's met labels (keywords), (sub-)map, datum, geo, titel, ...
* Resultaat weergeven in galerij of op landkaarten van OpenStreetMap.
* Detail weergavefuncties: zoomen, vegen voor volgende/vorige beeld.
* Ingebouwd bestandsbeheer voor foto's: zoeken, sorteren, weergeven, kopieren, verwijderen, delen,....
* Bewerk Exif-metadata: datum, titel, beschrijving, label(keyword), geo, waardering,...
* Optioneel automatisch, 'map-regel' gebaseerd, foto's hernoemen en geo, labels, titel,... geven bij kopieren/verplaatsen
* Markeer beelden als 'Particulier' om ze te verbergen voor andere galerij-/foto-apps.
* In "beschermde/vastgepinde modus" worden potentieel gevaarlijke app-opdrachten als bewerken/kopieren/verwijderen/delen/instellingen/"afbeelding wijzigen" uitgeschakeld, zodat je veilig je telefoon uit handen kunt geven
* Kan grote beeldcollecties (20000 + beelden in 1000+ mappen) hanteren.
* Gebruikt Androids afbeeldingsinhoud-provider. Vereist geen initiele scan van afbeeldingen.
* Uitgebreide fotomediascanner voor Exif, IPTC, XMP
Vereiste Android machtigingen:
* INTERNET: om kaartgegevens van OpenStreetMap Server te downloaden
* ACCESS_NETWORK_STATE en ACCESS_WIFI_STATE: controleren of wifi/internet online is om download geodata te starten
* WRITE_EXTERNAL_STORAGE cache voor gedownloade kaartdata en voor foto behandeling
* READ_LOGS voor lezen en opslaan mogelijke crash-logs in een tekstbestand.
.
"]]></string>
</resources>
36 changes: 36 additions & 0 deletions app/src/debug/res/values-pt-rBR/fdroid.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
<?xml version="1.0" encoding="utf-8"?>
<!--Generated by crowdin.com-->
<!--
/*
* Translation to pt-BR by 2019: Leonardo Lima (LeonardodeLima)
*
* These Texts will be shown as programdescription in the fdroid app store
* https://f-droid.org/app/de.k3b.android.androFotoFinder.
*
* the content will be copied to .../fastlane/metadata/android/*.txt
*
* This file is part of "A Photo Manager" (A(ndro)FotoFinder).
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License
* for more details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>
*/
-->
<resources>
<!-- Optional: This becomes .../fastlane/metadata/android/title.txt.
See https://f-droid.org/docs/Build_Metadata_Reference/#Name
Example: If spanish title="Manejador de fotos" then the App name/title in F-Droid-store becomes "A Photo Manager (Manejador de fotos)" -->
<string name="title">Um Gerenciador de Fotos (A Photo Manager)</string>
<!-- This becomes .../fastlane/metadata/android/short_description.txt.
See https://f-droid.org/docs/Build_Metadata_Reference/#Summary -->
<string name="short_description">Gerenciar fotos locais: Encontrar/Copiar/Editar e mostrar na Galeria ou Mapa.</string>
</resources>
Loading

0 comments on commit 2559905

Please sign in to comment.