diff --git a/.idea/appInsightsSettings.xml b/.idea/appInsightsSettings.xml
new file mode 100644
index 0000000..c0675f9
--- /dev/null
+++ b/.idea/appInsightsSettings.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
new file mode 100644
index 0000000..0c0c338
--- /dev/null
+++ b/.idea/deploymentTargetDropDown.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/kotlinc.xml b/.idea/kotlinc.xml
new file mode 100644
index 0000000..e805548
--- /dev/null
+++ b/.idea/kotlinc.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/migrations.xml b/.idea/migrations.xml
new file mode 100644
index 0000000..f8051a6
--- /dev/null
+++ b/.idea/migrations.xml
@@ -0,0 +1,10 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/buildSrc/src/main/kotlin/publish.gradle.kts b/buildSrc/src/main/kotlin/publish.gradle.kts
index 8b5505d..c96d5d6 100644
--- a/buildSrc/src/main/kotlin/publish.gradle.kts
+++ b/buildSrc/src/main/kotlin/publish.gradle.kts
@@ -61,7 +61,7 @@ publishing {
version = "$version-SNAPSHOT"
}
description.set("A template for Kotlin Android projects")
- url.set("https://github.com/cortinico/kotlin-android-template/")
+ url.set("https://github.com/SimpleJnius/sj-firebase-java/")
licenses {
license {
@@ -71,18 +71,18 @@ publishing {
}
developers {
developer {
- id.set("cortinico")
- name.set("Nicola Corti")
+ id.set("kengoon")
+ name.set("Kenechukwu Akubue")
}
}
scm {
- connection.set("scm:git:git://github.com/cortinico/kotlin-android-template.git")
- developerConnection.set("scm:git:ssh://github.com/cortinico/kotlin-android-template.git")
- url.set("https://github.com/cortinico/kotlin-android-template/")
+ connection.set("scm:git:git://github.com/SimpleJnius/sj-firebase-java.git")
+ developerConnection.set("scm:git:ssh://github.com/SimpleJnius/sj-firebase-java.git")
+ url.set("https://github.com/SimpleJnius/sj-firebase-java/")
}
issueManagement {
system.set("GitHub Issues")
- url.set("https://github.com/cortinico/kotlin-android-template/issues")
+ url.set("https://github.com/SimpleJnius/sj-firebase-java/issues")
}
}
}
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index dc593dd..5e1a3de 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -16,6 +16,8 @@ kotlin = "1.9.20"
min_sdk_version = "21"
target_sdk_version = "34"
benmanesversion = "0.50.0"
+agp2 = "8.2.0"
+material = "1.9.0"
[libraries]
junit = { module = "junit:junit", version.ref = "junit" }
@@ -37,7 +39,9 @@ detekt_formatting = { module = "io.gitlab.arturbosch.detekt:detekt-formatting",
espresso_core = { module = "androidx.test.espresso:espresso-core", version.ref = "espresso.core" }
agp = { module = "com.android.tools.build:gradle", version.ref = "agp" }
kgp = { module = "org.jetbrains.kotlin:kotlin-gradle-plugin", version.ref = "kotlin" }
+material = { group = "com.google.android.material", name = "material", version.ref = "material" }
[plugins]
detekt = { id = "io.gitlab.arturbosch.detekt", version.ref = "detekt" }
versions = { id = "com.github.ben-manes.versions", version.ref = "benmanesversion" }
+androidLibrary = { id = "com.android.library", version.ref = "agp2" }
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 4f5acd8..f1abc7f 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -23,3 +23,4 @@ include(
"library-compose",
"library-kotlin"
)
+include(":sjfirebase")
diff --git a/sjfirebase/.gitignore b/sjfirebase/.gitignore
new file mode 100644
index 0000000..42afabf
--- /dev/null
+++ b/sjfirebase/.gitignore
@@ -0,0 +1 @@
+/build
\ No newline at end of file
diff --git a/sjfirebase/build.gradle.kts b/sjfirebase/build.gradle.kts
new file mode 100644
index 0000000..d553b21
--- /dev/null
+++ b/sjfirebase/build.gradle.kts
@@ -0,0 +1,47 @@
+@Suppress("DSL_SCOPE_VIOLATION") // TODO: Remove once KTIJ-19369 is fixed
+plugins {
+ id("com.android.library")
+ id("maven-publish")
+ publish
+}
+
+android {
+ namespace = "com.simplejnius.sjfirebase"
+ compileSdk = 34
+
+ defaultConfig {
+ minSdk = 21
+
+ testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
+ consumerProguardFiles("consumer-rules.pro")
+ }
+
+ buildTypes {
+ release {
+ isMinifyEnabled = false
+ proguardFiles(
+ getDefaultProguardFile("proguard-android-optimize.txt"),
+ "proguard-rules.pro"
+ )
+ }
+ }
+ publishing {
+ singleVariant("release") {
+ withSourcesJar()
+ withJavadocJar()
+ }
+ }
+ compileOptions {
+ sourceCompatibility = JavaVersion.VERSION_1_8
+ targetCompatibility = JavaVersion.VERSION_1_8
+ }
+}
+
+dependencies {
+
+ implementation(libs.androidx.appcompat)
+ implementation(libs.material)
+ testImplementation(libs.junit)
+ androidTestImplementation(libs.androidx.test.ext.junit)
+ androidTestImplementation(libs.espresso.core)
+}
\ No newline at end of file
diff --git a/sjfirebase/consumer-rules.pro b/sjfirebase/consumer-rules.pro
new file mode 100644
index 0000000..e69de29
diff --git a/sjfirebase/proguard-rules.pro b/sjfirebase/proguard-rules.pro
new file mode 100644
index 0000000..481bb43
--- /dev/null
+++ b/sjfirebase/proguard-rules.pro
@@ -0,0 +1,21 @@
+# Add project specific ProGuard rules here.
+# You can control the set of applied configuration files using the
+# proguardFiles setting in build.gradle.
+#
+# For more details, see
+# http://developer.android.com/guide/developing/tools/proguard.html
+
+# If your project uses WebView with JS, uncomment the following
+# and specify the fully qualified class name to the JavaScript interface
+# class:
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
+# public *;
+#}
+
+# Uncomment this to preserve the line number information for
+# debugging stack traces.
+#-keepattributes SourceFile,LineNumberTable
+
+# If you keep the line number information, uncomment this to
+# hide the original source file name.
+#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/sjfirebase/src/androidTest/java/com/simplejnius/sjfirebase/ExampleInstrumentedTest.java b/sjfirebase/src/androidTest/java/com/simplejnius/sjfirebase/ExampleInstrumentedTest.java
new file mode 100644
index 0000000..66ae8b2
--- /dev/null
+++ b/sjfirebase/src/androidTest/java/com/simplejnius/sjfirebase/ExampleInstrumentedTest.java
@@ -0,0 +1,26 @@
+package com.simplejnius.sjfirebase;
+
+import android.content.Context;
+
+import androidx.test.platform.app.InstrumentationRegistry;
+import androidx.test.ext.junit.runners.AndroidJUnit4;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+
+import static org.junit.Assert.*;
+
+/**
+ * Instrumented test, which will execute on an Android device.
+ *
+ * @see Testing documentation
+ */
+@RunWith(AndroidJUnit4.class)
+public class ExampleInstrumentedTest {
+ @Test
+ public void useAppContext() {
+ // Context of the app under test.
+ Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
+ assertEquals("com.simplejnius.sjfirebase.test", appContext.getPackageName());
+ }
+}
\ No newline at end of file
diff --git a/sjfirebase/src/main/AndroidManifest.xml b/sjfirebase/src/main/AndroidManifest.xml
new file mode 100644
index 0000000..a5918e6
--- /dev/null
+++ b/sjfirebase/src/main/AndroidManifest.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/sjfirebase/src/test/java/com/simplejnius/sjfirebase/ExampleUnitTest.java b/sjfirebase/src/test/java/com/simplejnius/sjfirebase/ExampleUnitTest.java
new file mode 100644
index 0000000..24d8fb6
--- /dev/null
+++ b/sjfirebase/src/test/java/com/simplejnius/sjfirebase/ExampleUnitTest.java
@@ -0,0 +1,17 @@
+package com.simplejnius.sjfirebase;
+
+import org.junit.Test;
+
+import static org.junit.Assert.*;
+
+/**
+ * Example local unit test, which will execute on the development machine (host).
+ *
+ * @see Testing documentation
+ */
+public class ExampleUnitTest {
+ @Test
+ public void addition_isCorrect() {
+ assertEquals(4, 2 + 2);
+ }
+}
\ No newline at end of file