* add wav * add sound to config * add extension to `updateExtensions.sh` * add ios source files * add a build extension * add a new module * use correct type on ios * update the build plugin * add android handler * create a patch for expo-notifications * basic android implementation * add entitlements for notifications extension * add some generic logic for ios * add age check logic * add extension to app config * remove dash * move directory * rename again * update privacy manifest * add prefs storage ios * better types * create interface for setting and getting prefs * add notifications prefs for android * add functions to module * add types to js * add prefs context * add web stub * wrap the app * fix types * more preferences for ios * add a test toggle * swap vars * update patch * fix patch error * fix typo * sigh * sigh * get stored prefs on launch * anotehr type * simplify * about finished * comment * adjust plugin * use supported file types * update NSE * futureproof ios * futureproof android * update sound file name * handle initialization * more cleanup * update js types * strict js types * set the notification channel * rm * add silent channel * add mute logic * update patch * podfile * adjust channels * fix android channel * update readme * oreo or higher * nit * don't use getValue * nit
93 lines
2.1 KiB
Groovy
93 lines
2.1 KiB
Groovy
apply plugin: 'com.android.library'
|
|
apply plugin: 'kotlin-android'
|
|
apply plugin: 'maven-publish'
|
|
|
|
group = 'expo.modules.backgroundnotificationhandler'
|
|
version = '0.5.0'
|
|
|
|
buildscript {
|
|
def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
|
|
if (expoModulesCorePlugin.exists()) {
|
|
apply from: expoModulesCorePlugin
|
|
applyKotlinExpoModulesCorePlugin()
|
|
}
|
|
|
|
// Simple helper that allows the root project to override versions declared by this library.
|
|
ext.safeExtGet = { prop, fallback ->
|
|
rootProject.ext.has(prop) ? rootProject.ext.get(prop) : fallback
|
|
}
|
|
|
|
// Ensures backward compatibility
|
|
ext.getKotlinVersion = {
|
|
if (ext.has("kotlinVersion")) {
|
|
ext.kotlinVersion()
|
|
} else {
|
|
ext.safeExtGet("kotlinVersion", "1.8.10")
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:${getKotlinVersion()}")
|
|
}
|
|
}
|
|
|
|
afterEvaluate {
|
|
publishing {
|
|
publications {
|
|
release(MavenPublication) {
|
|
from components.release
|
|
}
|
|
}
|
|
repositories {
|
|
maven {
|
|
url = mavenLocal().url
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
android {
|
|
compileSdkVersion safeExtGet("compileSdkVersion", 33)
|
|
|
|
def agpVersion = com.android.Version.ANDROID_GRADLE_PLUGIN_VERSION
|
|
if (agpVersion.tokenize('.')[0].toInteger() < 8) {
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_11
|
|
targetCompatibility JavaVersion.VERSION_11
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = JavaVersion.VERSION_11.majorVersion
|
|
}
|
|
}
|
|
|
|
namespace "expo.modules.backgroundnotificationhandler"
|
|
defaultConfig {
|
|
minSdkVersion safeExtGet("minSdkVersion", 21)
|
|
targetSdkVersion safeExtGet("targetSdkVersion", 34)
|
|
versionCode 1
|
|
versionName "0.5.0"
|
|
}
|
|
lintOptions {
|
|
abortOnError false
|
|
}
|
|
publishing {
|
|
singleVariant("release") {
|
|
withSourcesJar()
|
|
}
|
|
}
|
|
}
|
|
|
|
repositories {
|
|
mavenCentral()
|
|
}
|
|
|
|
dependencies {
|
|
implementation project(':expo-modules-core')
|
|
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:${getKotlinVersion()}"
|
|
implementation 'com.google.firebase:firebase-messaging-ktx:24.0.0'
|
|
}
|