From be15cf1a5b7f2b75df8562be685a0a6d7b573553 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Sat, 6 Mar 2021 01:47:19 +0100 Subject: [PATCH 01/12] Update versions plugin, refactor compiler flag setup --- build.gradle.kts | 4 ++-- buildSrc/src/main/kotlin/Versions.kt | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index d0d582f2..57bd21e4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -19,8 +19,8 @@ subprojects { kotlinOptions { allWarningsAsErrors = true val arguments = mutableListOf("-progressive") - if (!this@subprojects.name.contains("sample")) arguments += "-Xexplicit-api=strict" - freeCompilerArgs = arguments + if (this@subprojects.name != "sample") arguments += "-Xexplicit-api=strict" + freeCompilerArgs = freeCompilerArgs + arguments jvmTarget = JavaVersion.VERSION_1_8.toString() } } diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 185206d4..abdba351 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -23,11 +23,11 @@ object Versions { const val ktlintPlugin = "10.0.0" const val ktlint = "0.40.0" - const val gradleVersions = "0.36.0" + const val gradleVersions = "0.38.0" const val dokka = "1.4.20" fun maturityLevel(version: String): Int { - val levels = listOf("alpha", "beta", "rc") + val levels = listOf("alpha", "beta", "m", "rc") levels.forEachIndexed { index, s -> if (version.matches(".*[.\\-]$s[.\\-\\d]*".toRegex(RegexOption.IGNORE_CASE))) return index } From 79f73efe0c3ff818e73aee9c40947cda2110de05 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Thu, 11 Mar 2021 01:04:32 +0100 Subject: [PATCH 02/12] Refactor dependency update configuration --- build.gradle.kts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 57bd21e4..7e2d87a7 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,5 +1,4 @@ import com.android.build.gradle.BaseExtension -import com.github.benmanes.gradle.versions.updates.DependencyUpdatesTask import org.jetbrains.kotlin.gradle.tasks.KotlinCompile plugins { @@ -34,7 +33,7 @@ subprojects { } } -tasks.named("dependencyUpdates", DependencyUpdatesTask::class.java).configure { +tasks.dependencyUpdates.configure { gradleReleaseChannel = "current" rejectVersionIf { Versions.maturityLevel(candidate.version) < Versions.maturityLevel(currentVersion) } } From 9f7e6e7270f91f24aec5a1892025aa814c3b8c83 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Thu, 11 Mar 2021 01:04:49 +0100 Subject: [PATCH 03/12] Update androidx deps --- buildSrc/src/main/kotlin/Versions.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index abdba351..63e3ab47 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -8,8 +8,8 @@ object Versions { const val androidGradle = "4.1.2" const val kotlin = "1.4.31" - const val activity = "1.2.0" - const val fragment = "1.3.0" + const val activity = "1.2.1" + const val fragment = "1.3.1" const val appcompat = "1.2.0" const val core = "1.3.2" From 745625fd75cfccef3bf3e4b98d81ca5f39e7e5f5 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Fri, 12 Mar 2021 15:34:20 +0100 Subject: [PATCH 04/12] refactor: use open field to provide rawValue for QRContent class --- .../com/g00fy2/quickie/content/QRContent.kt | 36 +++++++++---------- .../quickie/extensions/IntentExtensions.kt | 20 +++++------ 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt b/quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt index 7af99713..6728f573 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt +++ b/quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt @@ -1,55 +1,55 @@ package com.g00fy2.quickie.content -public sealed class QRContent(public val rawValue: String) { +public sealed class QRContent(public open val rawValue: String) { override fun toString(): String = rawValue /** * Plain text or unknown content QR Code type. */ - public data class Plain internal constructor(private val _rawValue: String) : QRContent(_rawValue) + public data class Plain internal constructor(override val rawValue: String) : QRContent(rawValue) /** * Wi-Fi access point details from a 'WIFI:' or similar QR Code type. */ public data class Wifi internal constructor( - private val _rawValue: String, + override val rawValue: String, val encryptionType: Int, val password: String, val ssid: String - ) : QRContent(_rawValue) + ) : QRContent(rawValue) /** * A URL or URL bookmark from a 'MEBKM:' or similar QR Code type. */ - public data class Url internal constructor(private val _rawValue: String, val title: String, val url: String) : - QRContent(_rawValue) + public data class Url internal constructor(override val rawValue: String, val title: String, val url: String) : + QRContent(rawValue) /** * An SMS message from an 'SMS:' or similar QR Code type. */ public data class Sms internal constructor( - private val _rawValue: String, + override val rawValue: String, val message: String, val phoneNumber: String - ) : QRContent(_rawValue) + ) : QRContent(rawValue) /** * GPS coordinates from a 'GEO:' or similar QR Code type. */ - public data class GeoPoint internal constructor(private val _rawValue: String, val lat: Double, val lng: Double) : - QRContent(_rawValue) + public data class GeoPoint internal constructor(override val rawValue: String, val lat: Double, val lng: Double) : + QRContent(rawValue) /** * An email message from a 'MAILTO:' or similar QR Code type. */ public data class Email internal constructor( - private val _rawValue: String, + override val rawValue: String, val address: String, val body: String, val subject: String, val type: EmailType - ) : QRContent(_rawValue) { + ) : QRContent(rawValue) { public enum class EmailType { UNKNOWN, WORK, HOME } @@ -58,8 +58,8 @@ public sealed class QRContent(public val rawValue: String) { /** * A phone number from a 'TEL:' or similar QR Code type. */ - public data class Phone internal constructor(private val _rawValue: String, val number: String, val type: PhoneType) : - QRContent(_rawValue) { + public data class Phone internal constructor(override val rawValue: String, val number: String, val type: PhoneType) : + QRContent(rawValue) { public enum class PhoneType { UNKNOWN, WORK, HOME, FAX, MOBILE } @@ -69,7 +69,7 @@ public sealed class QRContent(public val rawValue: String) { * A person's or organization's business card. */ public data class ContactInfo internal constructor( - private val _rawValue: String, + override val rawValue: String, val addresses: List
, val emails: List, val name: PersonName, @@ -77,7 +77,7 @@ public sealed class QRContent(public val rawValue: String) { val phones: List, val title: String, val urls: List - ) : QRContent(_rawValue) { + ) : QRContent(rawValue) { public data class Address internal constructor(val addressLines: List, val type: AddressType) { public enum class AddressType { @@ -100,7 +100,7 @@ public sealed class QRContent(public val rawValue: String) { * A calendar event extracted from a QR Code. */ public data class CalendarEvent internal constructor( - private val _rawValue: String, + override val rawValue: String, val description: String, val end: CalendarDateTime, val location: String, @@ -108,7 +108,7 @@ public sealed class QRContent(public val rawValue: String) { val start: CalendarDateTime, val status: String, val summary: String - ) : QRContent(_rawValue) { + ) : QRContent(rawValue) { public data class CalendarDateTime internal constructor( val day: Int, diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt b/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt index 2c4105fc..32abcc1e 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt +++ b/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt @@ -40,7 +40,7 @@ internal fun Intent?.toQuickieContentType(): QRContent { Barcode.TYPE_CONTACT_INFO -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { ContactInfo( - _rawValue = rawValue, + rawValue = rawValue, addresses = addressParcelables.map { it.toAddress() }, emails = emailParcelables.map { it.toEmail(rawValue) }, name = nameParcelable.toPersonName(), @@ -54,7 +54,7 @@ internal fun Intent?.toQuickieContentType(): QRContent { Barcode.TYPE_EMAIL -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { Email( - _rawValue = rawValue, + rawValue = rawValue, address = address, body = body, subject = subject, @@ -64,33 +64,33 @@ internal fun Intent?.toQuickieContentType(): QRContent { } Barcode.TYPE_PHONE -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { - Phone(_rawValue = rawValue, number = number, type = PhoneType.values().getOrElse(type) { PhoneType.UNKNOWN }) + Phone(rawValue = rawValue, number = number, type = PhoneType.values().getOrElse(type) { PhoneType.UNKNOWN }) } } Barcode.TYPE_SMS -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { - Sms(_rawValue = rawValue, message = message, phoneNumber = phoneNumber) + Sms(rawValue = rawValue, message = message, phoneNumber = phoneNumber) } } Barcode.TYPE_URL -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { - Url(_rawValue = rawValue, title = title, url = url) + Url(rawValue = rawValue, title = title, url = url) } } Barcode.TYPE_WIFI -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { - Wifi(_rawValue = rawValue, encryptionType = encryptionType, password = password, ssid = ssid) + Wifi(rawValue = rawValue, encryptionType = encryptionType, password = password, ssid = ssid) } } Barcode.TYPE_GEO -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { - GeoPoint(_rawValue = rawValue, lat = lat, lng = lng) + GeoPoint(rawValue = rawValue, lat = lat, lng = lng) } } Barcode.TYPE_CALENDAR_EVENT -> { getParcelableExtra(QRScannerActivity.EXTRA_RESULT_PARCELABLE)?.run { CalendarEvent( - _rawValue = rawValue, + rawValue = rawValue, description = description, end = end.toCalendarEvent(), location = location, @@ -114,11 +114,11 @@ internal fun Intent?.getRootException(): Exception { } private fun PhoneParcelable.toPhone(rawValue: String) = - Phone(_rawValue = rawValue, number = number, type = PhoneType.values().getOrElse(type) { PhoneType.UNKNOWN }) + Phone(rawValue = rawValue, number = number, type = PhoneType.values().getOrElse(type) { PhoneType.UNKNOWN }) private fun EmailParcelable.toEmail(rawValue: String) = Email( - _rawValue = rawValue, + rawValue = rawValue, address = address, body = body, subject = subject, From 7dececf96cd996a24ba932aaf970fb1476119774 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Fri, 12 Mar 2021 15:43:26 +0100 Subject: [PATCH 05/12] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index eca304b7..2e03e8a7 100644 --- a/README.md +++ b/README.md @@ -14,8 +14,8 @@ There are two different flavors available on `jcenter()` (I'm planing to move to | Bundled | Unbundled | | ----------------------------------- | ------------------------------------------------- | | ML Kit model is bundled inside app (independent of Google Services) | ML Kit model will be automatically downloaded via Play Services (after app install) | -| additional 1.1 MB size per ABI (you should use AAB or ABI splitting) | smaller app size | -| V2 barcode model is used (possibly faster, more accurate) | currently V1 will be downloaded +| additional 1.1 MB per ABI (you should use App Bundle or ABI splitting) | smaller app size | +| V2 model is used (possibly faster, more accurate) | currently V1 model will be downloaded ```kotlin // bundled: implementation("com.g00fy2.quickie:quickie-bundled:0.6.1") From 0b3651db697b4b97c648845374ce4bce520e5002 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Thu, 18 Mar 2021 14:33:23 +0100 Subject: [PATCH 06/12] Update ktlint --- .editorconfig | 5 +---- buildSrc/src/main/kotlin/Versions.kt | 2 +- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/.editorconfig b/.editorconfig index 8cf061c0..562de328 100644 --- a/.editorconfig +++ b/.editorconfig @@ -13,7 +13,4 @@ indent_style=space # TODO remove .idea/codeStyles from vcs when https://youtrack.jetbrains.com/issue/KTIJ-165 is fixed ij_kotlin_name_count_to_use_star_import=2147483647 ij_kotlin_name_count_to_use_star_import_for_members=2147483647 - -# ktlint -# noinspection EditorConfigKeyCorrectness -kotlin_imports_layout=idea \ No newline at end of file +ij_kotlin_imports_layout=*,java.**,javax.**,kotlin.**,^ \ No newline at end of file diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 63e3ab47..f009dc04 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -22,7 +22,7 @@ object Versions { const val barcodeScanningGms = "16.1.4" const val ktlintPlugin = "10.0.0" - const val ktlint = "0.40.0" + const val ktlint = "0.41.0" const val gradleVersions = "0.38.0" const val dokka = "1.4.20" From 5a47f9bfe14d90b1fd7429eb5695edef2caaf63c Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Thu, 18 Mar 2021 22:53:08 +0100 Subject: [PATCH 07/12] Update android studio --- buildSrc/src/main/kotlin/Versions.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index f009dc04..dd1616b3 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -5,7 +5,7 @@ object Versions { const val androidTargetSdk = 30 const val androidBuildTools = "30.0.3" - const val androidGradle = "4.1.2" + const val androidGradle = "4.1.3" const val kotlin = "1.4.31" const val activity = "1.2.1" From 0c2db446fe0c8b60a1df0684f332c6cee6e20ed5 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Sat, 20 Mar 2021 21:43:49 +0100 Subject: [PATCH 08/12] Update dokka --- buildSrc/src/main/kotlin/Versions.kt | 2 +- quickie/build.gradle.kts | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index dd1616b3..54a65daa 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -24,7 +24,7 @@ object Versions { const val ktlintPlugin = "10.0.0" const val ktlint = "0.41.0" const val gradleVersions = "0.38.0" - const val dokka = "1.4.20" + const val dokka = "1.4.30" fun maturityLevel(version: String): Int { val levels = listOf("alpha", "beta", "m", "rc") diff --git a/quickie/build.gradle.kts b/quickie/build.gradle.kts index 906db285..2aed175b 100644 --- a/quickie/build.gradle.kts +++ b/quickie/build.gradle.kts @@ -32,7 +32,6 @@ repositories { jcenter { content { includeGroupByRegex("org\\.jetbrains.*") - includeModule("com.soywiz.korlibs.korte", "korte-jvm") } } } From 9dc97a136487ffae4acd29652f06086a93027c06 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Tue, 23 Mar 2021 21:20:23 +0100 Subject: [PATCH 09/12] Change package name --- buildSrc/src/main/kotlin/Versions.kt | 2 +- gradle.properties | 4 +- quickie/build.gradle.kts | 2 +- .../quickie/utils/PlayServicesValidator.kt | 2 +- quickie/src/main/AndroidManifest.xml | 2 +- .../github}/g00fy2/quickie/QRCodeAnalyzer.kt | 2 +- .../github}/g00fy2/quickie/QROverlayView.kt | 4 +- .../github}/g00fy2/quickie/QRResult.kt | 4 +- .../g00fy2/quickie/QRScannerActivity.kt | 8 +-- .../github}/g00fy2/quickie/ScanQRCode.kt | 18 +++--- .../quickie/content/ParcelableContent.kt | 2 +- .../g00fy2/quickie/content/QRContent.kt | 2 +- .../quickie/extensions/BarcodeExtensions.kt | 24 ++++---- .../quickie/extensions/IntentExtensions.kt | 58 +++++++++---------- .../res/layout/quickie_scanner_activity.xml | 2 +- quickie/src/unbundled/AndroidManifest.xml | 2 +- .../quickie/utils/PlayServicesValidator.kt | 2 +- sample/build.gradle.kts | 2 +- sample/src/main/AndroidManifest.xml | 2 +- .../g00fy2/quickiesample/MainActivity.kt | 18 +++--- .../github}/g00fy2/quickiesample/SampleApp.kt | 3 +- 21 files changed, 82 insertions(+), 83 deletions(-) rename quickie/src/bundled/kotlin/{com => io/github}/g00fy2/quickie/utils/PlayServicesValidator.kt (84%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/QRCodeAnalyzer.kt (97%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/QROverlayView.kt (97%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/QRResult.kt (88%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/QRScannerActivity.kt (95%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/ScanQRCode.kt (60%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/content/ParcelableContent.kt (97%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/content/QRContent.kt (98%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/extensions/BarcodeExtensions.kt (82%) rename quickie/src/main/kotlin/{com => io/github}/g00fy2/quickie/extensions/IntentExtensions.kt (69%) rename quickie/src/unbundled/kotlin/{com => io/github}/g00fy2/quickie/utils/PlayServicesValidator.kt (96%) rename sample/src/main/kotlin/{com => io/github}/g00fy2/quickiesample/MainActivity.kt (79%) rename sample/src/main/kotlin/{com => io/github}/g00fy2/quickiesample/SampleApp.kt (85%) diff --git a/buildSrc/src/main/kotlin/Versions.kt b/buildSrc/src/main/kotlin/Versions.kt index 54a65daa..05eef88f 100644 --- a/buildSrc/src/main/kotlin/Versions.kt +++ b/buildSrc/src/main/kotlin/Versions.kt @@ -6,7 +6,7 @@ object Versions { const val androidBuildTools = "30.0.3" const val androidGradle = "4.1.3" - const val kotlin = "1.4.31" + const val kotlin = "1.4.32" const val activity = "1.2.1" const val fragment = "1.3.1" diff --git a/gradle.properties b/gradle.properties index 447199d4..e29db424 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,6 +3,4 @@ android.useAndroidX=true # Use R8 in full mode instead of ProGuard compatibility mode. android.enableR8.fullMode=true # Set the build VMs heap size. -org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 -# Disable publishing SHA256 and SHA512 checksums. -systemProp.org.gradle.internal.publish.checksums.insecure=true \ No newline at end of file +org.gradle.jvmargs=-Xmx2g -XX:MaxMetaspaceSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 \ No newline at end of file diff --git a/quickie/build.gradle.kts b/quickie/build.gradle.kts index 2aed175b..fa279eb6 100644 --- a/quickie/build.gradle.kts +++ b/quickie/build.gradle.kts @@ -52,7 +52,7 @@ dependencies { unbundledImplementation(Deps.MLKit.barcodeScanningGms) } -group = "com.g00fy2.quickie" +group = "io.github.g00fy2.quickie" version = "0.6.1" tasks.register("androidJavadocJar") { diff --git a/quickie/src/bundled/kotlin/com/g00fy2/quickie/utils/PlayServicesValidator.kt b/quickie/src/bundled/kotlin/io/github/g00fy2/quickie/utils/PlayServicesValidator.kt similarity index 84% rename from quickie/src/bundled/kotlin/com/g00fy2/quickie/utils/PlayServicesValidator.kt rename to quickie/src/bundled/kotlin/io/github/g00fy2/quickie/utils/PlayServicesValidator.kt index e5880c80..da45bab2 100644 --- a/quickie/src/bundled/kotlin/com/g00fy2/quickie/utils/PlayServicesValidator.kt +++ b/quickie/src/bundled/kotlin/io/github/g00fy2/quickie/utils/PlayServicesValidator.kt @@ -1,4 +1,4 @@ -package com.g00fy2.quickie.utils +package io.github.g00fy2.quickie.utils import android.app.Activity diff --git a/quickie/src/main/AndroidManifest.xml b/quickie/src/main/AndroidManifest.xml index 1bae762c..5e72bbe4 100644 --- a/quickie/src/main/AndroidManifest.xml +++ b/quickie/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + package="io.github.g00fy2.quickie"> diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/QRCodeAnalyzer.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRCodeAnalyzer.kt similarity index 97% rename from quickie/src/main/kotlin/com/g00fy2/quickie/QRCodeAnalyzer.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/QRCodeAnalyzer.kt index 01856db2..dc0e7bc6 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/QRCodeAnalyzer.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRCodeAnalyzer.kt @@ -1,4 +1,4 @@ -package com.g00fy2.quickie +package io.github.g00fy2.quickie import androidx.camera.core.ExperimentalGetImage import androidx.camera.core.ImageAnalysis diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/QROverlayView.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QROverlayView.kt similarity index 97% rename from quickie/src/main/kotlin/com/g00fy2/quickie/QROverlayView.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/QROverlayView.kt index d9c085b9..42f018c8 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/QROverlayView.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QROverlayView.kt @@ -1,4 +1,4 @@ -package com.g00fy2.quickie +package io.github.g00fy2.quickie import android.content.Context import android.graphics.Bitmap @@ -16,7 +16,7 @@ import android.view.View import android.widget.FrameLayout import androidx.appcompat.widget.AppCompatTextView import androidx.core.content.ContextCompat -import com.g00fy2.quickie.databinding.QuickieTextviewBinding +import io.github.g00fy2.quickie.databinding.QuickieTextviewBinding import kotlin.math.min import kotlin.math.roundToInt diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/QRResult.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRResult.kt similarity index 88% rename from quickie/src/main/kotlin/com/g00fy2/quickie/QRResult.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/QRResult.kt index 58171b9d..dc7e38bb 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/QRResult.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRResult.kt @@ -1,6 +1,6 @@ -package com.g00fy2.quickie +package io.github.g00fy2.quickie -import com.g00fy2.quickie.content.QRContent +import io.github.g00fy2.quickie.content.QRContent public sealed class QRResult { diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/QRScannerActivity.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt similarity index 95% rename from quickie/src/main/kotlin/com/g00fy2/quickie/QRScannerActivity.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt index 35caa82b..6fb8caef 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/QRScannerActivity.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt @@ -1,4 +1,4 @@ -package com.g00fy2.quickie +package io.github.g00fy2.quickie import android.Manifest import android.app.Activity @@ -19,9 +19,9 @@ import androidx.camera.core.Preview import androidx.camera.lifecycle.ProcessCameraProvider import androidx.core.content.ContextCompat import androidx.core.view.ViewCompat -import com.g00fy2.quickie.databinding.QuickieScannerActivityBinding -import com.g00fy2.quickie.extensions.toParcelableContentType -import com.g00fy2.quickie.utils.PlayServicesValidator +import io.github.g00fy2.quickie.databinding.QuickieScannerActivityBinding +import io.github.g00fy2.quickie.extensions.toParcelableContentType +import io.github.g00fy2.quickie.utils.PlayServicesValidator import com.google.mlkit.vision.barcode.Barcode import java.util.concurrent.ExecutorService import java.util.concurrent.Executors diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/ScanQRCode.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/ScanQRCode.kt similarity index 60% rename from quickie/src/main/kotlin/com/g00fy2/quickie/ScanQRCode.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/ScanQRCode.kt index 7d5598ab..7481ed8f 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/ScanQRCode.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/ScanQRCode.kt @@ -1,18 +1,18 @@ -package com.g00fy2.quickie +package io.github.g00fy2.quickie import android.app.Activity.RESULT_CANCELED import android.app.Activity.RESULT_OK import android.content.Context import android.content.Intent import androidx.activity.result.contract.ActivityResultContract -import com.g00fy2.quickie.QRResult.QRError -import com.g00fy2.quickie.QRResult.QRMissingPermission -import com.g00fy2.quickie.QRResult.QRSuccess -import com.g00fy2.quickie.QRResult.QRUserCanceled -import com.g00fy2.quickie.QRScannerActivity.Companion.RESULT_ERROR -import com.g00fy2.quickie.QRScannerActivity.Companion.RESULT_MISSING_PERMISSION -import com.g00fy2.quickie.extensions.getRootException -import com.g00fy2.quickie.extensions.toQuickieContentType +import io.github.g00fy2.quickie.QRResult.QRError +import io.github.g00fy2.quickie.QRResult.QRMissingPermission +import io.github.g00fy2.quickie.QRResult.QRSuccess +import io.github.g00fy2.quickie.QRResult.QRUserCanceled +import io.github.g00fy2.quickie.QRScannerActivity.Companion.RESULT_ERROR +import io.github.g00fy2.quickie.QRScannerActivity.Companion.RESULT_MISSING_PERMISSION +import io.github.g00fy2.quickie.extensions.getRootException +import io.github.g00fy2.quickie.extensions.toQuickieContentType public class ScanQRCode : ActivityResultContract() { diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/content/ParcelableContent.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/content/ParcelableContent.kt similarity index 97% rename from quickie/src/main/kotlin/com/g00fy2/quickie/content/ParcelableContent.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/content/ParcelableContent.kt index 26fe193c..a47d972a 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/content/ParcelableContent.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/content/ParcelableContent.kt @@ -1,4 +1,4 @@ -package com.g00fy2.quickie.content +package io.github.g00fy2.quickie.content import android.os.Parcelable import kotlinx.parcelize.Parcelize diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/content/QRContent.kt similarity index 98% rename from quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/content/QRContent.kt index 6728f573..37d7e08e 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/content/QRContent.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/content/QRContent.kt @@ -1,4 +1,4 @@ -package com.g00fy2.quickie.content +package io.github.g00fy2.quickie.content public sealed class QRContent(public open val rawValue: String) { diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/BarcodeExtensions.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt similarity index 82% rename from quickie/src/main/kotlin/com/g00fy2/quickie/extensions/BarcodeExtensions.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt index a5bf336f..2deab875 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/BarcodeExtensions.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt @@ -1,17 +1,17 @@ -package com.g00fy2.quickie.extensions +package io.github.g00fy2.quickie.extensions import android.os.Parcelable -import com.g00fy2.quickie.content.AddressParcelable -import com.g00fy2.quickie.content.CalendarDateTimeParcelable -import com.g00fy2.quickie.content.CalendarEventParcelable -import com.g00fy2.quickie.content.ContactInfoParcelable -import com.g00fy2.quickie.content.EmailParcelable -import com.g00fy2.quickie.content.GeoPointParcelable -import com.g00fy2.quickie.content.PersonNameParcelable -import com.g00fy2.quickie.content.PhoneParcelable -import com.g00fy2.quickie.content.SmsParcelable -import com.g00fy2.quickie.content.UrlBookmarkParcelable -import com.g00fy2.quickie.content.WifiParcelable +import io.github.g00fy2.quickie.content.AddressParcelable +import io.github.g00fy2.quickie.content.CalendarDateTimeParcelable +import io.github.g00fy2.quickie.content.CalendarEventParcelable +import io.github.g00fy2.quickie.content.ContactInfoParcelable +import io.github.g00fy2.quickie.content.EmailParcelable +import io.github.g00fy2.quickie.content.GeoPointParcelable +import io.github.g00fy2.quickie.content.PersonNameParcelable +import io.github.g00fy2.quickie.content.PhoneParcelable +import io.github.g00fy2.quickie.content.SmsParcelable +import io.github.g00fy2.quickie.content.UrlBookmarkParcelable +import io.github.g00fy2.quickie.content.WifiParcelable import com.google.mlkit.vision.barcode.Barcode internal fun Barcode.toParcelableContentType(): Parcelable? { diff --git a/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt similarity index 69% rename from quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt rename to quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt index 32abcc1e..16b9977b 100644 --- a/quickie/src/main/kotlin/com/g00fy2/quickie/extensions/IntentExtensions.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt @@ -1,34 +1,34 @@ -package com.g00fy2.quickie.extensions +package io.github.g00fy2.quickie.extensions import android.content.Intent -import com.g00fy2.quickie.QRScannerActivity -import com.g00fy2.quickie.content.AddressParcelable -import com.g00fy2.quickie.content.CalendarDateTimeParcelable -import com.g00fy2.quickie.content.CalendarEventParcelable -import com.g00fy2.quickie.content.ContactInfoParcelable -import com.g00fy2.quickie.content.EmailParcelable -import com.g00fy2.quickie.content.GeoPointParcelable -import com.g00fy2.quickie.content.PersonNameParcelable -import com.g00fy2.quickie.content.PhoneParcelable -import com.g00fy2.quickie.content.QRContent -import com.g00fy2.quickie.content.QRContent.CalendarEvent -import com.g00fy2.quickie.content.QRContent.CalendarEvent.CalendarDateTime -import com.g00fy2.quickie.content.QRContent.ContactInfo -import com.g00fy2.quickie.content.QRContent.ContactInfo.Address -import com.g00fy2.quickie.content.QRContent.ContactInfo.Address.AddressType -import com.g00fy2.quickie.content.QRContent.ContactInfo.PersonName -import com.g00fy2.quickie.content.QRContent.Email -import com.g00fy2.quickie.content.QRContent.Email.EmailType -import com.g00fy2.quickie.content.QRContent.GeoPoint -import com.g00fy2.quickie.content.QRContent.Phone -import com.g00fy2.quickie.content.QRContent.Phone.PhoneType -import com.g00fy2.quickie.content.QRContent.Plain -import com.g00fy2.quickie.content.QRContent.Sms -import com.g00fy2.quickie.content.QRContent.Url -import com.g00fy2.quickie.content.QRContent.Wifi -import com.g00fy2.quickie.content.SmsParcelable -import com.g00fy2.quickie.content.UrlBookmarkParcelable -import com.g00fy2.quickie.content.WifiParcelable +import io.github.g00fy2.quickie.QRScannerActivity +import io.github.g00fy2.quickie.content.AddressParcelable +import io.github.g00fy2.quickie.content.CalendarDateTimeParcelable +import io.github.g00fy2.quickie.content.CalendarEventParcelable +import io.github.g00fy2.quickie.content.ContactInfoParcelable +import io.github.g00fy2.quickie.content.EmailParcelable +import io.github.g00fy2.quickie.content.GeoPointParcelable +import io.github.g00fy2.quickie.content.PersonNameParcelable +import io.github.g00fy2.quickie.content.PhoneParcelable +import io.github.g00fy2.quickie.content.QRContent +import io.github.g00fy2.quickie.content.QRContent.CalendarEvent +import io.github.g00fy2.quickie.content.QRContent.CalendarEvent.CalendarDateTime +import io.github.g00fy2.quickie.content.QRContent.ContactInfo +import io.github.g00fy2.quickie.content.QRContent.ContactInfo.Address +import io.github.g00fy2.quickie.content.QRContent.ContactInfo.Address.AddressType +import io.github.g00fy2.quickie.content.QRContent.ContactInfo.PersonName +import io.github.g00fy2.quickie.content.QRContent.Email +import io.github.g00fy2.quickie.content.QRContent.Email.EmailType +import io.github.g00fy2.quickie.content.QRContent.GeoPoint +import io.github.g00fy2.quickie.content.QRContent.Phone +import io.github.g00fy2.quickie.content.QRContent.Phone.PhoneType +import io.github.g00fy2.quickie.content.QRContent.Plain +import io.github.g00fy2.quickie.content.QRContent.Sms +import io.github.g00fy2.quickie.content.QRContent.Url +import io.github.g00fy2.quickie.content.QRContent.Wifi +import io.github.g00fy2.quickie.content.SmsParcelable +import io.github.g00fy2.quickie.content.UrlBookmarkParcelable +import io.github.g00fy2.quickie.content.WifiParcelable import com.google.mlkit.vision.barcode.Barcode internal fun Intent?.toQuickieContentType(): QRContent { diff --git a/quickie/src/main/res/layout/quickie_scanner_activity.xml b/quickie/src/main/res/layout/quickie_scanner_activity.xml index cbe03fe8..9b379f8d 100644 --- a/quickie/src/main/res/layout/quickie_scanner_activity.xml +++ b/quickie/src/main/res/layout/quickie_scanner_activity.xml @@ -12,7 +12,7 @@ android:layout_height="match_parent" /> - + package="io.github.g00fy2.quickie"> + package="io.github.g00fy2.quickiesample"> Date: Tue, 23 Mar 2021 21:35:09 +0100 Subject: [PATCH 10/12] Optimize imports --- .../main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt | 2 +- .../io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt | 2 +- .../io/github/g00fy2/quickie/extensions/IntentExtensions.kt | 2 +- .../main/kotlin/io/github/g00fy2/quickiesample/MainActivity.kt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt index 6fb8caef..3c3d6970 100644 --- a/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/QRScannerActivity.kt @@ -19,10 +19,10 @@ import androidx.camera.core.Preview import androidx.camera.lifecycle.ProcessCameraProvider import androidx.core.content.ContextCompat import androidx.core.view.ViewCompat +import com.google.mlkit.vision.barcode.Barcode import io.github.g00fy2.quickie.databinding.QuickieScannerActivityBinding import io.github.g00fy2.quickie.extensions.toParcelableContentType import io.github.g00fy2.quickie.utils.PlayServicesValidator -import com.google.mlkit.vision.barcode.Barcode import java.util.concurrent.ExecutorService import java.util.concurrent.Executors diff --git a/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt index 2deab875..2fb97f09 100644 --- a/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/BarcodeExtensions.kt @@ -1,6 +1,7 @@ package io.github.g00fy2.quickie.extensions import android.os.Parcelable +import com.google.mlkit.vision.barcode.Barcode import io.github.g00fy2.quickie.content.AddressParcelable import io.github.g00fy2.quickie.content.CalendarDateTimeParcelable import io.github.g00fy2.quickie.content.CalendarEventParcelable @@ -12,7 +13,6 @@ import io.github.g00fy2.quickie.content.PhoneParcelable import io.github.g00fy2.quickie.content.SmsParcelable import io.github.g00fy2.quickie.content.UrlBookmarkParcelable import io.github.g00fy2.quickie.content.WifiParcelable -import com.google.mlkit.vision.barcode.Barcode internal fun Barcode.toParcelableContentType(): Parcelable? { return when (valueType) { diff --git a/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt index 16b9977b..1ae0215d 100644 --- a/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt +++ b/quickie/src/main/kotlin/io/github/g00fy2/quickie/extensions/IntentExtensions.kt @@ -1,6 +1,7 @@ package io.github.g00fy2.quickie.extensions import android.content.Intent +import com.google.mlkit.vision.barcode.Barcode import io.github.g00fy2.quickie.QRScannerActivity import io.github.g00fy2.quickie.content.AddressParcelable import io.github.g00fy2.quickie.content.CalendarDateTimeParcelable @@ -29,7 +30,6 @@ import io.github.g00fy2.quickie.content.QRContent.Wifi import io.github.g00fy2.quickie.content.SmsParcelable import io.github.g00fy2.quickie.content.UrlBookmarkParcelable import io.github.g00fy2.quickie.content.WifiParcelable -import com.google.mlkit.vision.barcode.Barcode internal fun Intent?.toQuickieContentType(): QRContent { if (this == null) return Plain("") diff --git a/sample/src/main/kotlin/io/github/g00fy2/quickiesample/MainActivity.kt b/sample/src/main/kotlin/io/github/g00fy2/quickiesample/MainActivity.kt index c44724b4..66430f44 100644 --- a/sample/src/main/kotlin/io/github/g00fy2/quickiesample/MainActivity.kt +++ b/sample/src/main/kotlin/io/github/g00fy2/quickiesample/MainActivity.kt @@ -6,6 +6,7 @@ import android.net.Uri import android.os.Bundle import android.widget.TextView import androidx.appcompat.app.AppCompatActivity +import com.google.android.material.snackbar.Snackbar import io.github.g00fy2.quickie.QRResult import io.github.g00fy2.quickie.QRResult.QRError import io.github.g00fy2.quickie.QRResult.QRMissingPermission @@ -14,7 +15,6 @@ import io.github.g00fy2.quickie.QRResult.QRUserCanceled import io.github.g00fy2.quickie.ScanQRCode import io.github.g00fy2.quickie.content.QRContent import io.github.g00fy2.quickiesample.databinding.ActivityMainBinding -import com.google.android.material.snackbar.Snackbar class MainActivity : AppCompatActivity() { From 9c72c122f834e1f835d6eda01561616b1380a7ee Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Tue, 23 Mar 2021 21:35:45 +0100 Subject: [PATCH 11/12] Set up sonatype publishing --- quickie/build.gradle.kts | 40 ++++++++++++++++++++-------------------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/quickie/build.gradle.kts b/quickie/build.gradle.kts index fa279eb6..26406470 100644 --- a/quickie/build.gradle.kts +++ b/quickie/build.gradle.kts @@ -4,6 +4,7 @@ plugins { id(Plugins.Kotlin.parcelize) id(Plugins.Kotlin.dokka) version Versions.dokka `maven-publish` + signing } android { @@ -53,7 +54,7 @@ dependencies { } group = "io.github.g00fy2.quickie" -version = "0.6.1" +version = "0.7.0" tasks.register("androidJavadocJar") { archiveClassifier.set("javadoc") @@ -66,15 +67,9 @@ tasks.register("androidSourcesJar") { from(android.sourceSets.getByName("main").java.srcDirs) } -// JCenter does not support Gradle module metadata -tasks.withType { - enabled = false -} - afterEvaluate { publishing { publications { - // publishBundledReleasePublicationToBintrayQuickieBundledRepository -Pbintray_user=name -Pbintray_key=key create("bundledRelease") { from(components["bundledRelease"]) val libraryName = "quickie-bundled" @@ -83,7 +78,6 @@ afterEvaluate { artifact(tasks.named("androidSourcesJar")) configurePom(libraryName) } - // publishUnbundledReleasePublicationToBintrayQuickieUnbundledRepository -Pbintray_user=name -Pbintray_key=key create("unbundledRelease") { from(components["unbundledRelease"]) val libraryName = "quickie-unbundled" @@ -95,25 +89,24 @@ afterEvaluate { } repositories { maven { - name = "bintrayQuickieBundled" - url = uri("https://api.bintray.com/maven/g00fy2/maven/quickie-bundled/;publish=1;") - credentials { - username = findProperty("bintray_user") as String? - password = findProperty("bintray_key") as String? - } - } - maven { - name = "bintrayQuickieUnbundled" - url = uri("https://api.bintray.com/maven/g00fy2/maven/quickie-unbundled/;publish=1;") + name = "sonatype" + url = uri("https://s01.oss.sonatype.org/service/local/staging/deploy/maven2/") credentials { - username = findProperty("bintray_user") as String? - password = findProperty("bintray_key") as String? + username = project.findStringProperty("sonatypeUsername") + password = project.findStringProperty("sonatypePassword") } } } } } +signing { + project.findStringProperty("signing.keyId") + project.findStringProperty("signing.password") + project.findStringProperty("signing.secretKeyRingFile") + sign(publishing.publications) +} + fun MavenPublication.configurePom(libraryName: String) { pom { name.set(libraryName) @@ -138,4 +131,11 @@ fun MavenPublication.configurePom(libraryName: String) { url.set("https://github.com/G00fY2/Quickie") } } +} + +fun Project.findStringProperty(propertyName: String): String? { + return findProperty(propertyName) as String? ?: { + logger.error("$propertyName missing in gradle.properties") + null + }() } \ No newline at end of file From ba4e889ae7314cea5e71e0315216674cf6d7e041 Mon Sep 17 00:00:00 2001 From: Thomas Wirth Date: Wed, 24 Mar 2021 10:11:49 +0100 Subject: [PATCH 12/12] Update README.md --- README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 2e03e8a7..05e1a77e 100644 --- a/README.md +++ b/README.md @@ -8,8 +8,8 @@ - Android Jetpack CameraX for communicating with the camera and showing the preview - ML Kit Vision API for best, fully on-device barcode recognition and decoding -## Download [![Download](https://img.shields.io/maven-metadata/v?label=quickie-bundled&metadataUrl=https%3A%2F%2Fbintray.com%2Fg00fy2%2Fmaven%2Fdownload_file%3Ffile_path%3Dcom%252Fg00fy2%252Fquickie%252Fquickie-unbundled%252Fmaven-metadata.xml)](https://bintray.com/g00fy2/maven/quickie-bundled) [![Download](https://img.shields.io/maven-metadata/v?label=quickie-unbundled&metadataUrl=https%3A%2F%2Fbintray.com%2Fg00fy2%2Fmaven%2Fdownload_file%3Ffile_path%3Dcom%252Fg00fy2%252Fquickie%252Fquickie-bundled%252Fmaven-metadata.xml)](https://bintray.com/g00fy2/maven/quickie-unbundled) -There are two different flavors available on `jcenter()` (I'm planing to move to *mavenCentral()* soon): +## Download [![Maven Central](https://img.shields.io/maven-central/v/io.github.g00fy2.quickie/quickie-unbundled)](https://search.maven.org/search?q=g:io.github.g00fy2.quickie) +There are two different flavors available on `mavenCentral()`: | Bundled | Unbundled | | ----------------------------------- | ------------------------------------------------- | @@ -18,10 +18,10 @@ There are two different flavors available on `jcenter()` (I'm planing to move to | V2 model is used (possibly faster, more accurate) | currently V1 model will be downloaded ```kotlin // bundled: -implementation("com.g00fy2.quickie:quickie-bundled:0.6.1") +implementation("io.github.g00fy2.quickie:quickie-bundled:0.7.0") // unbundled: -implementation("com.g00fy2.quickie:quickie-unbundled:0.6.1") +implementation("io.github.g00fy2.quickie:quickie-unbundled:0.7.0") ``` ## Quick Start @@ -73,7 +73,7 @@ You can find the sample app APKs inside the [release](https://github.com/G00fY2/ * A release candidate is a prospective stable release. * It may contain critical last-minute fixes. -Even though **quickie** is battle-tested you should consider this library to be in pre-release state too. This will change once the dependent libraries hit stable. +Even though **quickie** is battle-tested (used in apps with 500k+ users) you should consider this library to be in pre-release state too. This will change once the dependent libraries hit stable. ## Requirements * AndroidX