plugins {
alias(libs.plugins.android.application) apply false
alias(libs.plugins.google.gms.google.services) apply false
}
buildscript {
repositories {
google()
jcenter()
maven(url = "https://jitpack.io")
}
dependencies {
classpath("com.google.gms:google-services:4.3.10") // Phiên bản mới
nhất của plugin Google Services
}
}
plugins {
// Áp dụng plugin Android
id("com.android.application")
id("com.google.gms.google-services")
}
buildscript {
repositories {
google()
mavenCentral() // Thay thế jcenter() bằng mavenCentral()
}
dependencies {
// Plugin Google Services
classpath("com.google.gms:google-services:4.3.10") // Phiên bản mới
nhất của plugin Google Services
}
}
android {
namespace = "com.example.tradeup"
compileSdk = 35
defaultConfig {
applicationId = "com.example.tradeup"
minSdk = 24
targetSdk = 35
versionCode = 1
versionName = "1.0"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
}
dependencies {
// Firebase dependencies
implementation(platform("com.google.firebase:firebase-bom:32.7.0"))
implementation("com.google.firebase:firebase-auth")
implementation("com.google.firebase:firebase-firestore")
implementation("com.google.firebase:firebase-storage")
implementation("com.google.android.gms:play-services-auth:21.3.0")
// Glide for image loading
implementation("com.github.bumptech.glide:glide:4.16.0")
implementation(libs.material)
annotationProcessor("com.github.bumptech.glide:compiler:4.16.0")
// Material Design
implementation("com.google.android.material:material:1.6.0") // Cập nhật
lên phiên bản mới nhất
// Play Services Location
implementation("com.google.android.gms:play-services-location:21.0.1")
implementation ("com.squareup.okhttp3:okhttp:4.10.0")
// ConstraintLayout
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
implementation("de.hdodenhof:circleimageview:3.1.0")
implementation("com.cloudinary:cloudinary-android:1.27.0")
// Unit testing and Android testing
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.1.3")
androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")
}
# Project-wide Gradle settings.
# IDE (e.g. Android Studio) users:
# Gradle settings configured through the IDE *will override*
# any settings specified in this file.
# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html
# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8
# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. For more details,
visit
# https://developer.android.com/r/tools/gradle-multi-project-decoupled-
projects
# org.gradle.parallel=true
# AndroidX package structure to make it clearer which packages are bundled
with the
# Android operating system, and which are packaged with your app's APK
# https://developer.android.com/topic/libraries/support-library/androidx-rn
android.useAndroidX=true
# Enables namespacing of each library's R class so that its R class includes
only the
# resources declared in the library itself and none from the library's
dependencies,
# thereby reducing the size of the R class for that library
android.nonTransitiveRClass=true
#Mon Jun 30 09:12:05 ICT 2025
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-bin.zip
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
[versions]
agp = "8.10.1"
junit = "4.13.2"
junitVersion = "1.2.1"
espressoCore = "3.6.1"
appcompat = "1.7.1"
material = "1.6.0"
activity = "1.10.1"
constraintlayout = "2.2.1"
googleGmsGoogleServices = "4.4.2"
firebaseAuth = "23.2.1"
credentials = "1.5.0"
credentialsPlayServicesAuth = "1.5.0"
googleid = "1.1.1"
[libraries]
junit = { group = "junit", name = "junit", version.ref = "junit" }
ext-junit = { group = "androidx.test.ext", name = "junit", version.ref =
"junitVersion" }
espresso-core = { group = "androidx.test.espresso", name = "espresso-
core", version.ref = "espressoCore" }
appcompat = { group = "androidx.appcompat", name = "appcompat",
version.ref = "appcompat" }
material = { group = "com.google.android.material", name = "material",
version.ref = "material" }
activity = { group = "androidx.activity", name = "activity", version.ref =
"activity" }
constraintlayout = { group = "androidx.constraintlayout", name =
"constraintlayout", version.ref = "constraintlayout" }
firebase-auth = { group = "com.google.firebase", name = "firebase-auth",
version.ref = "firebaseAuth" }
credentials = { group = "androidx.credentials", name = "credentials",
version.ref = "credentials" }
credentials-play-services-auth = { group = "androidx.credentials", name =
"credentials-play-services-auth", version.ref =
"credentialsPlayServicesAuth" }
googleid = { group = "com.google.android.libraries.identity.googleid", name
= "googleid", version.ref = "googleid" }
[plugins]
android-application = { id = "com.android.application", version.ref = "agp" }
google-gms-google-services = { id = "com.google.gms.google-services",
version.ref = "googleGmsGoogleServices" }
## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file should *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
sdk.dir=C\:\\Users\\tuant\\AppData\\Local\\Android\\Sdk
pluginManagement {
repositories {
google {
content {
includeGroupByRegex("com\\.android.*")
includeGroupByRegex("com\\.google.*")
includeGroupByRegex("androidx.*")
}
}
mavenCentral()
gradlePluginPortal()
maven(url = "https://jitpack.io")
}
}
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
maven(url = "https://jitpack.io")
maven(url = "https://linkedin.jfrog.io/artifactory/linkedin-maven/")
}
}
rootProject.name = "TradeUp"
include(":app")