Integrated product view api for viewing product. Added removing cart item functionality from product view fragment. Added callback to listen removal changes when gone to cart from product view fragment. Debugged crash with configuration changes with multiple fragments in an activity with no public constructor. And issue with no saved state when configuration is changed. Understood and integrated navigation-safe-args in ShopActivity.
127 lines
4.5 KiB
Groovy
127 lines
4.5 KiB
Groovy
plugins {
|
|
alias(libs.plugins.androidApplication)
|
|
alias(libs.plugins.jetbrainsKotlinAndroid)
|
|
id("kotlin-parcelize")
|
|
alias(libs.plugins.navigationSafeArgs)
|
|
}
|
|
|
|
android {
|
|
namespace 'com.woka'
|
|
compileSdk 34
|
|
|
|
defaultConfig {
|
|
applicationId "com.woka"
|
|
minSdk 24
|
|
targetSdk 34
|
|
versionCode 1
|
|
versionName "1.0"
|
|
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
buildConfigField "String", "WOKA_STAGINNG_BASE_URL", WOKA_STAGINNG_BASE_URL
|
|
buildConfigField "String", "WOKA_USER_NAME", WOKA_USER_NAME
|
|
buildConfigField "String", "WOKA_PASSWORD", WOKA_PASSWORD
|
|
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
}
|
|
|
|
debug{
|
|
buildConfigField "String", "WOKA_STAGINNG_BASE_URL", WOKA_STAGINNG_BASE_URL
|
|
buildConfigField "String", "WOKA_USER_NAME", WOKA_USER_NAME
|
|
buildConfigField "String", "WOKA_PASSWORD", WOKA_PASSWORD
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
}
|
|
kotlinOptions {
|
|
jvmTarget = '1.8'
|
|
}
|
|
|
|
buildFeatures{
|
|
viewBinding true
|
|
buildConfig true
|
|
}
|
|
}
|
|
|
|
ext.jwPlayerVersion = '4.17.0'
|
|
ext.exoplayerVersion = '1.3.1'
|
|
|
|
dependencies {
|
|
implementation 'com.googlecode.libphonenumber:libphonenumber:8.12.32'
|
|
|
|
implementation "com.facebook.shimmer:shimmer:0.5.0"
|
|
|
|
implementation "com.airbnb.android:lottie:6.4.0"
|
|
implementation "androidx.core:core-splashscreen:1.0.1"
|
|
|
|
implementation 'com.google.android.flexbox:flexbox:3.0.0'
|
|
|
|
implementation 'com.github.bumptech.glide:glide:4.16.0'
|
|
|
|
// dynamics text sizes
|
|
implementation 'com.intuit.ssp:ssp-android:1.1.1'
|
|
// dynamic sizes
|
|
implementation 'com.intuit.sdp:sdp-android:1.1.1'
|
|
|
|
// retrofit
|
|
def retrofit_version = "2.11.0"
|
|
implementation "com.squareup.retrofit2:retrofit:$retrofit_version"
|
|
implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
|
|
implementation("com.squareup.okhttp3:logging-interceptor:4.12.0")
|
|
|
|
def lifecycle_version = "2.7.0"
|
|
// ViewModel
|
|
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
|
|
implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version")
|
|
|
|
// circle image view
|
|
implementation 'de.hdodenhof:circleimageview:3.1.0'
|
|
|
|
// jwplayer
|
|
implementation "com.jwplayer:jwplayer-core:$jwPlayerVersion"
|
|
implementation "com.jwplayer:jwplayer-common:$jwPlayerVersion"
|
|
|
|
// media player 3
|
|
def media3_version = "1.3.1"
|
|
implementation "androidx.media3:media3-exoplayer:$media3_version"
|
|
// For DASH playback support with ExoPlayer
|
|
implementation "androidx.media3:media3-exoplayer-dash:$media3_version"
|
|
// For HLS playback support with ExoPlayer
|
|
implementation "androidx.media3:media3-exoplayer-hls:$media3_version"
|
|
// For SmoothStreaming playback support with ExoPlayer
|
|
implementation "androidx.media3:media3-exoplayer-smoothstreaming:$media3_version"
|
|
// Common functionality for reading and writing media containers
|
|
implementation "androidx.media3:media3-container:$media3_version"
|
|
// Common functionality for media database components
|
|
implementation "androidx.media3:media3-database:$media3_version"
|
|
// Common functionality for media decoders
|
|
implementation "androidx.media3:media3-decoder:$media3_version"
|
|
// Common functionality for loading data
|
|
implementation "androidx.media3:media3-datasource:$media3_version"
|
|
// Common functionality used across multiple media libraries
|
|
implementation "androidx.media3:media3-common:$media3_version"
|
|
// For extracting data from media containers
|
|
implementation "androidx.media3:media3-extractor:$media3_version"
|
|
// For building media playback UIs
|
|
implementation "androidx.media3:media3-ui:$media3_version"
|
|
|
|
// audio mixer for karaoke
|
|
implementation("com.github.ZeroOneZeroR:android_audio_mixer:v1.1")
|
|
|
|
implementation libs.androidx.core.ktx
|
|
implementation libs.androidx.appcompat
|
|
implementation libs.material
|
|
implementation libs.androidx.activity
|
|
implementation libs.androidx.constraintlayout
|
|
implementation libs.androidx.navigation.fragment.ktx
|
|
implementation libs.androidx.navigation.ui.ktx
|
|
testImplementation libs.junit
|
|
androidTestImplementation libs.androidx.junit
|
|
androidTestImplementation libs.androidx.espresso.core
|
|
} |