summaryrefslogtreecommitdiff
path: root/org.fox.ttcomics
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2021-03-12 20:26:35 +0300
committerAndrew Dolgov <[email protected]>2021-03-12 20:26:35 +0300
commite204d8c28d0e4102e5a489ed32161f403b0bafed (patch)
tree34d3d81b17c262c298dc44cf4fcc737641d6ac59 /org.fox.ttcomics
parenta25fd172153b654129985cd8729d9381aff1f117 (diff)
fdroid: add update checker
Diffstat (limited to 'org.fox.ttcomics')
-rw-r--r--org.fox.ttcomics/build.gradle9
-rw-r--r--org.fox.ttcomics/org.fox.ttcomics.iml160
-rw-r--r--org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java13
3 files changed, 19 insertions, 163 deletions
diff --git a/org.fox.ttcomics/build.gradle b/org.fox.ttcomics/build.gradle
index 682c21e..087c786 100644
--- a/org.fox.ttcomics/build.gradle
+++ b/org.fox.ttcomics/build.gradle
@@ -7,6 +7,7 @@ android {
defaultConfig {
applicationId "org.fox.ttcomics2"
buildConfigField "long", "TIMESTAMP", System.currentTimeMillis() + "L"
+ buildConfigField "boolean", "ENABLE_UPDATER", "false"
minSdkVersion 21
targetSdkVersion 27
}
@@ -37,10 +38,11 @@ android {
fdroid {
minifyEnabled false
- versionNameSuffix "-fdroid"
+ versionNameSuffix "-fdroid"
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
- signingConfig signingConfigs.fdroid
- //matchingFallbacks = ['release']
+ signingConfig signingConfigs.fdroid
+ buildConfigField "boolean", "ENABLE_UPDATER", "true"
+ //matchingFallbacks = ['release']
}
}
@@ -64,4 +66,5 @@ dependencies {
implementation 'com.gu:option:1.3'
implementation 'net.rdrei.android.dirchooser:library:3.2@aar'
implementation 'com.github.joielechong:zip4jandroid:1.0.1'
+ implementation 'com.github.javiersantos:AppUpdater:2.7'
}
diff --git a/org.fox.ttcomics/org.fox.ttcomics.iml b/org.fox.ttcomics/org.fox.ttcomics.iml
deleted file mode 100644
index 537a326..0000000
--- a/org.fox.ttcomics/org.fox.ttcomics.iml
+++ /dev/null
@@ -1,160 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module external.linked.project.id=":org.fox.ttcomics" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" external.system.module.group="tt-comics" external.system.module.version="unspecified" type="JAVA_MODULE" version="4">
- <component name="FacetManager">
- <facet type="android-gradle" name="Android-Gradle">
- <configuration>
- <option name="GRADLE_PROJECT_PATH" value=":org.fox.ttcomics" />
- <option name="LAST_SUCCESSFUL_SYNC_AGP_VERSION" value="3.5.1" />
- <option name="LAST_KNOWN_AGP_VERSION" value="3.5.1" />
- </configuration>
- </facet>
- <facet type="android" name="Android">
- <configuration>
- <option name="SELECTED_BUILD_VARIANT" value="debug" />
- <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
- <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
- <afterSyncTasks>
- <task>generateDebugSources</task>
- </afterSyncTasks>
- <option name="ALLOW_USER_CONFIGURATION" value="false" />
- <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
- <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
- <option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res;file://$MODULE_DIR$/src/debug/res;file://$MODULE_DIR$/build/generated/res/rs/debug;file://$MODULE_DIR$/build/generated/res/resValues/debug" />
- <option name="TEST_RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/androidTest/res;file://$MODULE_DIR$/src/test/res;file://$MODULE_DIR$/src/androidTestDebug/res;file://$MODULE_DIR$/src/testDebug/res;file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug;file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" />
- <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
- </configuration>
- </facet>
- </component>
- <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_7">
- <output url="file://$MODULE_DIR$/build/intermediates/javac/debug/classes" />
- <output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/classes" />
- <exclude-output />
- <content url="file://$MODULE_DIR$">
- <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/compileDebugRenderscript/out" isTestSource="false" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/ap_generated_sources/debug/out" isTestSource="false" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/compileDebugAidl/out" isTestSource="false" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/compileDebugAndroidTestAidl/out" isTestSource="true" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/compileDebugAndroidTestRenderscript/out" isTestSource="true" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/ap_generated_sources/debugAndroidTest/out" isTestSource="true" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/build/generated/ap_generated_sources/debugUnitTest/out" isTestSource="true" generated="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/aidl" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
- <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
- <excludeFolder url="file://$MODULE_DIR$/build" />
- </content>
- <orderEntry type="jdk" jdkName="Android API 28 Platform" jdkType="Android SDK" />
- <orderEntry type="sourceFolder" forTests="false" />
- <orderEntry type="library" name="Gradle: ./org.fox.ttcomics/libs/nineoldandroids-2.4.0.jar" level="project" />
- <orderEntry type="library" name="Gradle: frankiesardo:icepick-processor:3.2.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.collection:collection:1.1.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-common:2.1.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.arch.core:core-common:2.1.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.annotation:annotation:1.1.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: com.github.bumptech.glide:glide:3.8.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: frankiesardo:icepick:3.2.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: com.gu:option:1.3@jar" level="project" />
- <orderEntry type="library" name="Gradle: stencil:stencil:0.3.5@jar" level="project" />
- <orderEntry type="library" name="Gradle: scout:scout:0.1.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: quoin:quoin:0.1.2@jar" level="project" />
- <orderEntry type="library" name="Gradle: slingshot:slingshot:0.10.3@jar" level="project" />
- <orderEntry type="library" name="Gradle: org.clojure:core.cache:0.6.3@jar" level="project" />
- <orderEntry type="library" name="Gradle: org.clojure:data.priority-map:0.0.2@jar" level="project" />
- <orderEntry type="library" name="Gradle: org.clojure:clojure:1.7.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.auto.service:auto-service:1.0-rc2@jar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.auto:auto-common:0.3@jar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.guava:guava:18.0@jar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-v4:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.material:material:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.github.livefront:bridge:v1.1.2@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.github.joielechong:zip4jandroid:1.0.1@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.appcompat:appcompat:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth:18.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth-api-phone:17.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-auth-base:17.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-base:17.2.1@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.media:media:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-ui:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.legacy:legacy-support-core-utils:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.viewpager2:viewpager2:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-tasks:17.0.2@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.google.android.gms:play-services-basement:17.2.1@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.fragment:fragment:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.appcompat:appcompat-resources:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.drawerlayout:drawerlayout:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.coordinatorlayout:coordinatorlayout:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.transition:transition:1.2.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable-animated:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.vectordrawable:vectordrawable:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.recyclerview:recyclerview:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.loader:loader:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.viewpager:viewpager:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.slidingpanelayout:slidingpanelayout:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.customview:customview:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.swiperefreshlayout:swiperefreshlayout:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.asynclayoutinflater:asynclayoutinflater:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.activity:activity:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.core:core:1.2.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.cursoradapter:cursoradapter:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.versionedparcelable:versionedparcelable:1.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.cardview:cardview:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-runtime:2.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.documentfile:documentfile:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.localbroadcastmanager:localbroadcastmanager:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.print:print:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.interpolator:interpolator:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-viewmodel:2.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.savedstate:savedstate:1.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata:2.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.lifecycle:lifecycle-livedata-core:2.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: androidx.arch.core:core-runtime:2.0.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.shamanland:fab:0.0.8@aar" level="project" />
- <orderEntry type="library" name="Gradle: jp.co.recruit_mp:android-HeaderFooterGridView:0.2.4@aar" level="project" />
- <orderEntry type="library" name="Gradle: com.nhaarman.listviewanimations:lib-core:3.1.0@aar" level="project" />
- <orderEntry type="library" name="Gradle: net.rdrei.android.dirchooser:library:3.2@aar" level="project" />
- </component>
-</module> \ No newline at end of file
diff --git a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java
index e18fca2..352fb57 100644
--- a/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java
+++ b/org.fox.ttcomics/src/main/java/org/fox/ttcomics2/MainActivity.java
@@ -21,6 +21,8 @@ import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
+import com.github.javiersantos.appupdater.AppUpdater;
+import com.github.javiersantos.appupdater.enums.UpdateFrom;
import com.shamanland.fab.FloatingActionButton;
import org.fox.ttcomics2.sync.SyncClient;
@@ -156,6 +158,17 @@ public class MainActivity extends CommonActivity implements SharedPreferences.On
setupDefaultDirectory();
}
+ checkUpdates();
+
+ }
+
+ protected void checkUpdates() {
+ if (BuildConfig.DEBUG || BuildConfig.ENABLE_UPDATER) {
+ new AppUpdater(this)
+ .setUpdateFrom(UpdateFrom.JSON)
+ .setUpdateJSON(String.format("https://srv.tt-rss.org/fdroid/updates/%1$s.json", this.getPackageName()))
+ .start();
+ }
}
protected String[] checkPermissions(String[] permissions) {