Files
self/app/android/build.gradle
nicoshark 3db25aa469 Push notification (#536)
* add push notification feature

* merge new app impl

* change dsc key

* import

* reverse mock dsc

* worked in the ios

* checked in android

* update url and delete console

* delete small changes

* lint

* add yarn.lock

* fix warning message

* add mock notification service for test code

* fix path for the mock implementation

* add mock deeplink to the test code

* nice notificationServiceMock.js

* delete unused firebase related implementation

* fix wording and UI related to notification service

* hotfix on mockdatascreen

---------

Co-authored-by: turnoffthiscomputer <colin.remi07@gmail.com>
2025-05-15 23:46:21 +02:00

103 lines
3.8 KiB
Groovy

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
ext {
buildToolsVersion = "35.0.0"
minSdkVersion = 23
compileSdkVersion = 35
targetSdkVersion = 35
ndkVersion = "26.1.10909125"
kotlinVersion = "1.9.24"
firebaseMessagingVersion = "23.4.0"
firebaseBomVersion = "32.7.3"
}
repositories {
google()
mavenCentral()
maven {
url "https://plugins.gradle.org/m2/"
}
}
dependencies {
classpath("com.android.tools.build:gradle:7.3.1")
classpath("com.facebook.react:react-native-gradle-plugin")
// classpath("org.jetbrains.kotlin:kotlin-gradle-plugin")
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlinVersion"
classpath 'com.android.tools.build:gradle:8.1.0'
classpath 'com.google.gms:google-services:4.3.14'
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.9.2'
classpath 'org.mozilla.rust-android-gradle:plugin:0.9.3'
classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.0")
classpath("com.google.gms:google-services:4.4.0")
}
}
allprojects {
repositories {
google()
mavenCentral()
maven {
url("$rootDir/../node_modules/react-native/android")
}
maven {
url("$rootDir/../node_modules/jsc-android/dist")
}
maven { url 'https://jitpack.io' }
jcenter()
maven {
url 'https://google.bintray.com/google-services'
}
}
configurations.configureEach {
resolutionStrategy.dependencySubstitution {
substitute(platform(module('com.gemalto.jp2:jp2-android'))) using module('com.github.Tgo1014:JP2ForAndroid:1.0.4')
substitute module('io.fotoapparat:fotoapparat') using module('com.github.RedApparat:Fotoapparat:2.7.0')
}
resolutionStrategy.force 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava'
}
configurations.all {
resolutionStrategy {
force 'com.google.firebase:firebase-iid:21.1.0'
}
}
}
subprojects {
afterEvaluate { project ->
if (project.hasProperty('android')) {
android {
def manifestFile = project.file('src/main/AndroidManifest.xml')
def buildGradleFile = project.file('build.gradle')
if (buildGradleFile.exists()) {
def buildGradleText = buildGradleFile.text
def namespaceMatcher = buildGradleText =~ /namespace\s*['"](.+?)['"]/
if (namespaceMatcher.find()) {
namespace = namespaceMatcher[0][1]
println "Set namespace for ${project.name} to ${namespace} from build.gradle"
return
}
}
if (manifestFile.exists()) {
def manifestText = manifestFile.text
def packageMatcher = manifestText =~ /package="([\w\.]+)"/
if (packageMatcher.find()) {
def packageName = packageMatcher[0][1]
namespace = packageName
println "Set namespace for ${project.name} to ${namespace} from AndroidManifest.xml"
} else {
namespace = project.group
println "No 'package' attribute found. Set namespace for ${project.name} to ${namespace}"
}
} else {
namespace = project.group
println "AndroidManifest.xml not found. Set namespace for ${project.name} to ${namespace}"
}
}
}
}
}
apply plugin: "com.facebook.react.rootproject"