Skip to content

Commit 724ada4

Browse files
Update 3.1_r1
1 parent ee9f5d6 commit 724ada4

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+861
-551
lines changed

.idea/deploymentTargetDropDown.xml

Lines changed: 17 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/gradle.xml

Lines changed: 1 addition & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/kotlinc.xml

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

.idea/misc.xml

Lines changed: 8 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

CHANGELOG.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
1-
# Version 3.0_r2:
2-
- Made minor under-the-hood improvements for a better overall app experience.
1+
# Version 3.1_r1:
2+
- Added a new support page to show appreciation and gratitude to the developer.
3+
- Fixed various bugs and improved readability, consistency, app performance, and responsiveness by optimizing and styling the outdated code.
4+
- Made various project structure enhancements for better readability and maintainability.
5+
- Made various under-the-hood improvements for a better overall app experience.
36

47
# Version 3.0_r1:
58
- Added a new startup screen for new users.

app/build.gradle

Lines changed: 0 additions & 99 deletions
This file was deleted.

app/build.gradle.kts

Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.util.archivesName
2+
plugins {
3+
id("com.android.application")
4+
id("org.jetbrains.kotlin.android")
5+
id("com.google.gms.google-services")
6+
id("com.google.firebase.crashlytics")
7+
id("com.google.android.gms.oss-licenses-plugin")
8+
id("com.google.devtools.ksp")
9+
}
10+
android {
11+
compileSdk = 34
12+
namespace = "com.d4rk.qrcodescanner.plus"
13+
defaultConfig {
14+
applicationId = "com.d4rk.qrcodescanner.plus"
15+
minSdk = 26
16+
targetSdk = 34
17+
versionCode = 30
18+
versionName = "3.1_r1"
19+
archivesName = "${applicationId}-v${versionName}"
20+
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
21+
resourceConfigurations += listOf("en", "de", "es", "fr", "hi", "hu", "in", "it", "ja", "ro", "ru", "tr", "sv", "bg", "pl", "uk")
22+
}
23+
buildTypes {
24+
getByName("release") {
25+
multiDexEnabled = true
26+
isMinifyEnabled = true
27+
isShrinkResources = true
28+
isDebuggable = false
29+
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
30+
}
31+
getByName("debug") {
32+
multiDexEnabled = true
33+
isMinifyEnabled = true
34+
isShrinkResources = true
35+
isDebuggable = true
36+
proguardFiles(getDefaultProguardFile("proguard-android-optimize.txt"), "proguard-rules.pro")
37+
}
38+
}
39+
compileOptions {
40+
sourceCompatibility = JavaVersion.VERSION_17
41+
targetCompatibility = JavaVersion.VERSION_17
42+
}
43+
kotlinOptions {
44+
jvmTarget = "17"
45+
}
46+
buildFeatures {
47+
viewBinding = true
48+
buildConfig = true
49+
}
50+
bundle {
51+
storeArchive {
52+
enable = true
53+
}
54+
}
55+
}
56+
dependencies {
57+
implementation("com.google.android.play:review-ktx:2.0.1")
58+
implementation("com.google.android.play:app-update-ktx:2.1.0")
59+
implementation("com.google.firebase:firebase-crashlytics-ktx:18.4.0")
60+
implementation("com.google.firebase:firebase-analytics-ktx:21.3.0")
61+
implementation("com.google.firebase:firebase-perf:20.4.0")
62+
implementation("com.google.android.play:review-ktx:2.0.1")
63+
implementation("com.googlecode.ez-vcard:ez-vcard:0.12.0")
64+
implementation("com.google.android.material:material:1.9.0")
65+
implementation("com.google.android.gms:play-services-oss-licenses:17.0.1")
66+
implementation("com.google.android.gms:play-services-ads:22.2.0")
67+
implementation("com.android.billingclient:billing:6.0.1")
68+
implementation("androidx.core:core-ktx:1.10.1")
69+
implementation("androidx.appcompat:appcompat:1.6.1")
70+
implementation("androidx.core:core-splashscreen:1.0.1")
71+
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
72+
implementation("androidx.navigation:navigation-fragment-ktx:2.7.0")
73+
implementation("androidx.navigation:navigation-ui-ktx:2.7.0")
74+
implementation("androidx.gridlayout:gridlayout:1.0.0")
75+
implementation("androidx.preference:preference-ktx:1.2.1")
76+
implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.6.1")
77+
implementation("androidx.lifecycle:lifecycle-process:2.6.1")
78+
implementation("androidx.lifecycle:lifecycle-common-java8:2.6.1")
79+
implementation("androidx.lifecycle:lifecycle-livedata-ktx:2.6.1")
80+
implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:2.6.1")
81+
implementation("androidx.multidex:multidex:2.0.1")
82+
implementation("androidx.room:room-runtime:2.5.2")
83+
implementation("androidx.room:room-rxjava2:2.5.2")
84+
implementation("android.arch.paging:runtime:1.0.1")
85+
implementation("android.arch.paging:rxjava2:1.0.1")
86+
implementation("com.github.yuriy-budiyev:code-scanner:2.3.2")
87+
implementation("com.github.florent37:singledateandtimepicker:2.2.8")
88+
implementation("com.airbnb.android:lottie:6.1.0")
89+
implementation("com.journeyapps:zxing-android-embedded:4.3.0")
90+
implementation("com.jakewharton.rxbinding2:rxbinding-appcompat-v7-kotlin:2.2.0")
91+
implementation("com.mayank:simplecropview:1.0.0")
92+
implementation("commons-codec:commons-codec:1.16.0")
93+
implementation("dev.turingcomplete:kotlin-onetimepassword:2.4.0")
94+
implementation("io.reactivex.rxjava2:rxkotlin:2.4.0")
95+
implementation("me.zhanghai.android.fastscroll:library:1.3.0")
96+
coreLibraryDesugaring("com.android.tools:desugar_jdk_libs:2.0.3")
97+
testImplementation("junit:junit:4.13.2")
98+
ksp("androidx.room:room-compiler:2.5.2")
99+
androidTestImplementation("androidx.test.ext:junit:1.1.5")
100+
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
101+
}

app/src/main/AndroidManifest.xml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
<uses-permission android:name="android.permission.VIBRATE"/>
99
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
1010
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"/>
11+
<uses-permission android:name="com.android.vending.BILLING"/>
1112
<uses-permission android:name="android.permission.CAMERA" tools:ignore="PermissionImpliesUnsupportedChromeOsHardware"/>
1213
<uses-permission android:name="com.android.vending.CHECK_LICENSE"/>
1314
<uses-permission android:name="android.permission.FOREGROUND_SERVICE"/>
@@ -26,7 +27,7 @@
2627
</intent>
2728
</queries>
2829
<application
29-
android:name=".ads.managers.AppOpenAdManager"
30+
android:name=".ads.managers.ApplicationOpenAdManager"
3031
android:label="@string/app_name"
3132
android:description="@string/app_description"
3233
android:icon="@mipmap/ic_launcher"
@@ -38,6 +39,7 @@
3839
android:appCategory="image"
3940
android:theme="@style/AppThemeActionBar"
4041
android:localeConfig="@xml/locales_config"
42+
android:requestLegacyExternalStorage="true"
4143
tools:targetApi="33">
4244
<activity
4345
android:name=".ui.startup.StartupActivity"
@@ -164,6 +166,11 @@
164166
android:configChanges="orientation|screenSize"
165167
android:label="@string/permissions"
166168
android:parentActivityName=".ui.settings.permissions.PermissionsActivity"/>
169+
<activity
170+
android:name=".ui.settings.support.SupportActivity"
171+
android:exported="false"
172+
android:label="@string/support_us"
173+
android:parentActivityName=".ui.settings.support.SupportActivity"/>
167174
<service
168175
android:name=".feature.tile.QuickSettingsTileService"
169176
android:exported="true"
Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,3 @@
11
package com.d4rk.qrcodescanner.plus
22
import androidx.multidex.MultiDexApplication
3-
import com.d4rk.qrcodescanner.plus.di.settings
4-
class App : MultiDexApplication() {
5-
override fun onCreate() {
6-
applyTheme()
7-
super.onCreate()
8-
}
9-
private fun applyTheme() {
10-
settings.reapplyTheme()
11-
}
12-
}
3+
class App : MultiDexApplication()

app/src/main/kotlin/com/d4rk/qrcodescanner/plus/ads/managers/AppOpenAdManager.kt renamed to app/src/main/kotlin/com/d4rk/qrcodescanner/plus/ads/managers/ApplicationOpenAdManager.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ import com.google.android.gms.ads.MobileAds
1717
import com.google.android.gms.ads.appopen.AppOpenAd
1818
import java.util.Date
1919
private const val AD_UNIT_ID = "ca-app-pub-5294151573817700/8044468099"
20-
class AppOpenAdManager : MultiDexApplication(), Application.ActivityLifecycleCallbacks, LifecycleObserver {
20+
class ApplicationOpenAdManager : MultiDexApplication(), Application.ActivityLifecycleCallbacks, LifecycleObserver {
2121
private lateinit var appOpenAdManager: AppOpenAdManager
2222
private var currentActivity: Activity? = null
2323
override fun onCreate() {

0 commit comments

Comments
 (0)