Updated AGP to 8.0
The itemlist amount updating works Started work on the item edit.
This commit is contained in:
2
.idea/compiler.xml
generated
2
.idea/compiler.xml
generated
@@ -1,6 +1,6 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="CompilerConfiguration">
|
<component name="CompilerConfiguration">
|
||||||
<bytecodeTargetLevel target="11" />
|
<bytecodeTargetLevel target="17" />
|
||||||
</component>
|
</component>
|
||||||
</project>
|
</project>
|
||||||
6
.idea/kotlinc.xml
generated
Normal file
6
.idea/kotlinc.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="KotlinJpsPluginSettings">
|
||||||
|
<option name="version" value="1.8.10" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
2
.idea/misc.xml
generated
2
.idea/misc.xml
generated
@@ -1,7 +1,7 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<project version="4">
|
<project version="4">
|
||||||
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
<component name="ExternalStorageConfigurationManager" enabled="true" />
|
||||||
<component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="Android Studio default JDK" project-jdk-type="JavaSDK">
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" project-jdk-name="jbr-17" project-jdk-type="JavaSDK">
|
||||||
<output url="file://$PROJECT_DIR$/build/classes" />
|
<output url="file://$PROJECT_DIR$/build/classes" />
|
||||||
</component>
|
</component>
|
||||||
<component name="ProjectType">
|
<component name="ProjectType">
|
||||||
|
|||||||
@@ -65,10 +65,12 @@ dependencies {
|
|||||||
// ViewModel
|
// ViewModel
|
||||||
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1"
|
implementation "androidx.lifecycle:lifecycle-viewmodel-compose:2.6.1"
|
||||||
implementation("androidx.lifecycle:lifecycle-runtime-compose:2.6.1")
|
implementation("androidx.lifecycle:lifecycle-runtime-compose:2.6.1")
|
||||||
|
implementation("androidx.compose.runtime:runtime-livedata:1.4.2")
|
||||||
|
|
||||||
|
|
||||||
implementation 'androidx.core:core-ktx:1.10.0'
|
implementation 'androidx.core:core-ktx:1.10.0'
|
||||||
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.6.1'
|
implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.6.1'
|
||||||
implementation 'androidx.activity:activity-compose:1.7.0'
|
implementation 'androidx.activity:activity-compose:1.7.1'
|
||||||
implementation "androidx.compose.ui:ui:$compose_version"
|
implementation "androidx.compose.ui:ui:$compose_version"
|
||||||
implementation "androidx.compose.ui:ui-tooling-preview:$compose_version"
|
implementation "androidx.compose.ui:ui-tooling-preview:$compose_version"
|
||||||
implementation 'androidx.compose.material3:material3:1.0.1'
|
implementation 'androidx.compose.material3:material3:1.0.1'
|
||||||
|
|||||||
@@ -17,6 +17,7 @@ import com.mitchelbv.thuis_c.ui.theme.ThuisTheme
|
|||||||
import com.mitchelbv.thuis_c.views.feyenoord.MatchesScreen
|
import com.mitchelbv.thuis_c.views.feyenoord.MatchesScreen
|
||||||
import com.mitchelbv.thuis_c.views.freezer.FreezerScreen
|
import com.mitchelbv.thuis_c.views.freezer.FreezerScreen
|
||||||
import com.mitchelbv.thuis_c.views.freezer.item_list.FreezerItemListScreen
|
import com.mitchelbv.thuis_c.views.freezer.item_list.FreezerItemListScreen
|
||||||
|
import com.mitchelbv.thuis_c.views.freezer.item_list.edit_item.FreezerItemEditScreen
|
||||||
import com.mitchelbv.thuis_c.views.home.HomeScreen
|
import com.mitchelbv.thuis_c.views.home.HomeScreen
|
||||||
import com.mitchelbv.thuis_c.views.recipe.RecipeScreen
|
import com.mitchelbv.thuis_c.views.recipe.RecipeScreen
|
||||||
|
|
||||||
@@ -88,6 +89,7 @@ class MainActivity : ComponentActivity() {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Items list
|
||||||
composable(route = "${FreezerItemListDestination.route}/{freezer_id}", arguments = listOf(
|
composable(route = "${FreezerItemListDestination.route}/{freezer_id}", arguments = listOf(
|
||||||
navArgument("freezer_id") {
|
navArgument("freezer_id") {
|
||||||
this.type = NavType.IntType
|
this.type = NavType.IntType
|
||||||
@@ -95,10 +97,21 @@ class MainActivity : ComponentActivity() {
|
|||||||
})
|
})
|
||||||
) {
|
) {
|
||||||
FreezerItemListScreen(
|
FreezerItemListScreen(
|
||||||
onEditItem = {
|
onEditItem = {freezerItem ->
|
||||||
// I want onEditItem to open a modal dialog, so not sure if this is needed here...
|
// I want onEditItem to open a modal dialog, so not sure if this is needed here...
|
||||||
|
navController.navigate("${FreezerItemDetail.route}/${freezerItem}")
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Edit items
|
||||||
|
composable(route = "${FreezerItemDetail.route}/{freezer_id}", arguments = listOf(
|
||||||
|
navArgument("freezer_id") {
|
||||||
|
this.type = NavType.IntType
|
||||||
|
this.nullable = false
|
||||||
|
}
|
||||||
|
)) {
|
||||||
|
FreezerItemEditScreen()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,7 +44,7 @@ interface ThuisService {
|
|||||||
suspend fun getFreezerItems(): FreezerItems
|
suspend fun getFreezerItems(): FreezerItems
|
||||||
|
|
||||||
@GET("api/FreezerItem/{id}")
|
@GET("api/FreezerItem/{id}")
|
||||||
suspend fun getFreezerItem(id: Int): FreezerItem
|
suspend fun getFreezerItem(@Path("id") id: Int): FreezerItem
|
||||||
|
|
||||||
@GET("api/FreezerItem/InFreezer/{id}")
|
@GET("api/FreezerItem/InFreezer/{id}")
|
||||||
suspend fun getFreezerItemsInFreezer(@Path("id") id: Int): List<FreezerItem>
|
suspend fun getFreezerItemsInFreezer(@Path("id") id: Int): List<FreezerItem>
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import androidx.compose.material.icons.Icons
|
|||||||
import androidx.compose.material.icons.filled.*
|
import androidx.compose.material.icons.filled.*
|
||||||
import androidx.compose.material3.*
|
import androidx.compose.material3.*
|
||||||
import androidx.compose.runtime.*
|
import androidx.compose.runtime.*
|
||||||
|
import androidx.compose.runtime.livedata.observeAsState
|
||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.res.stringResource
|
import androidx.compose.ui.res.stringResource
|
||||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
@@ -20,7 +21,9 @@ fun FreezerItemListScreen(
|
|||||||
onEditItem: (Int) -> Unit
|
onEditItem: (Int) -> Unit
|
||||||
) {
|
) {
|
||||||
val freezerItemListUiState by freezerItemListViewModel.uiState.collectAsStateWithLifecycle()
|
val freezerItemListUiState by freezerItemListViewModel.uiState.collectAsStateWithLifecycle()
|
||||||
freezerItemListUiState.items.forEach { freezerItem ->
|
val itemObserver = freezerItemListUiState.items.observeAsState()
|
||||||
|
|
||||||
|
itemObserver.value?.forEach { freezerItem ->
|
||||||
FreezerItemElement(freezerItem = freezerItem, arrowPressed = { item_id: Int, newAmount: Int ->
|
FreezerItemElement(freezerItem = freezerItem, arrowPressed = { item_id: Int, newAmount: Int ->
|
||||||
freezerItemListViewModel.UpdateItemAmount(
|
freezerItemListViewModel.UpdateItemAmount(
|
||||||
item_id,
|
item_id,
|
||||||
@@ -28,26 +31,8 @@ fun FreezerItemListScreen(
|
|||||||
)
|
)
|
||||||
}, onEditItem = onEditItem)
|
}, onEditItem = onEditItem)
|
||||||
}
|
}
|
||||||
// FreezerItemList(
|
FloatingActionButton(onClick = { /*TODO*/ }) {
|
||||||
// freezerItemListUiState.items,
|
|
||||||
// arrowPressed = { kaas: Int, baas: Int ->
|
|
||||||
// freezerItemListViewModel.UpdateItemAmount(
|
|
||||||
// kaas,
|
|
||||||
// baas
|
|
||||||
// )
|
|
||||||
// },
|
|
||||||
// onEditItem = onEditItem
|
|
||||||
// )
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
|
||||||
fun FreezerItemList(
|
|
||||||
freezerItems: List<FreezerItem>,
|
|
||||||
arrowPressed: (Int, Int) -> Unit,
|
|
||||||
onEditItem: (Int) -> Unit
|
|
||||||
) {
|
|
||||||
freezerItems.forEach { freezerItem ->
|
|
||||||
FreezerItemElement(freezerItem, arrowPressed = arrowPressed, onEditItem = onEditItem)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -90,19 +75,3 @@ fun FreezerItemElement(
|
|||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
//@Preview
|
|
||||||
//@Composable
|
|
||||||
//fun FreezerItemElementPreview() {
|
|
||||||
// val freezerItem = FreezerItem(
|
|
||||||
// freezerItemId = 1,
|
|
||||||
// item = "Kip",
|
|
||||||
// amount = 5,
|
|
||||||
// drawer = 1,
|
|
||||||
// dateTimeAdded = "now",
|
|
||||||
// freezerId = 1
|
|
||||||
// )
|
|
||||||
// FreezerItemElement(freezerItem = freezerItem)
|
|
||||||
// FreezerItemElement(freezerItem = freezerItem)
|
|
||||||
// FreezerItemElement(freezerItem = freezerItem)
|
|
||||||
//}
|
|
||||||
@@ -15,8 +15,7 @@ import java.net.ConnectException
|
|||||||
import java.net.SocketTimeoutException
|
import java.net.SocketTimeoutException
|
||||||
|
|
||||||
data class FreezerItemListUiState(
|
data class FreezerItemListUiState(
|
||||||
var items: List<FreezerItem> = listOf(),
|
val items: MutableLiveData<List<FreezerItem>> = MutableLiveData<List<FreezerItem>>(),
|
||||||
// val items: MutableLiveData<List<FreezerItem>> = MutableLiveData<List<FreezerItem>>(),
|
|
||||||
var error: String = ""
|
var error: String = ""
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -33,7 +32,7 @@ class FreezerItemListViewModel(savedStateHandle: SavedStateHandle) : ViewModel()
|
|||||||
try {
|
try {
|
||||||
val apiResponse =
|
val apiResponse =
|
||||||
ThuisRetrofitHelper.thuis.getFreezerItemsInFreezer(id = freezer_id)
|
ThuisRetrofitHelper.thuis.getFreezerItemsInFreezer(id = freezer_id)
|
||||||
_uiState.value = FreezerItemListUiState(apiResponse)
|
_uiState.value = FreezerItemListUiState(MutableLiveData(apiResponse))
|
||||||
|
|
||||||
} catch (e: ConnectException) {
|
} catch (e: ConnectException) {
|
||||||
// _uiState.value = FreezerItemListUiState(listOf(FreezerItem(item = )))
|
// _uiState.value = FreezerItemListUiState(listOf(FreezerItem(item = )))
|
||||||
@@ -46,16 +45,16 @@ class FreezerItemListViewModel(savedStateHandle: SavedStateHandle) : ViewModel()
|
|||||||
fun UpdateItemAmount(item_id: Int, newAmount: Int) {
|
fun UpdateItemAmount(item_id: Int, newAmount: Int) {
|
||||||
viewModelScope.launch(Dispatchers.IO) {
|
viewModelScope.launch(Dispatchers.IO) {
|
||||||
try {
|
try {
|
||||||
val itemList = _uiState.value.items.toMutableList()
|
val itemList = _uiState.value.items.value!!.toMutableList()
|
||||||
val indexFreezerItem =
|
val indexFreezerItem =
|
||||||
itemList.indexOf(uiState.value.items.find { a -> a.freezerItemId == item_id })
|
itemList.indexOf(uiState.value.items.value!!.find { a -> a.freezerItemId == item_id })
|
||||||
val freezerItemToUpdate = itemList[indexFreezerItem]
|
val freezerItemToUpdate = itemList[indexFreezerItem]
|
||||||
freezerItemToUpdate.amount = newAmount
|
freezerItemToUpdate.amount = newAmount
|
||||||
// itemList[indexFreezerItem] = freezerItemToUpdate
|
// itemList[indexFreezerItem] = freezerItemToUpdate
|
||||||
val apiResponse =
|
val apiResponse =
|
||||||
ThuisRetrofitHelper.thuis.putFreezerItem(item_id, freezerItemToUpdate)
|
ThuisRetrofitHelper.thuis.putFreezerItem(item_id, freezerItemToUpdate)
|
||||||
_uiState.update { currentState ->
|
_uiState.update { currentState ->
|
||||||
currentState.copy(items = apiResponse)
|
currentState.copy(items = MutableLiveData(apiResponse))
|
||||||
}
|
}
|
||||||
} catch (e: HttpException) {
|
} catch (e: HttpException) {
|
||||||
// TODO Display a snackbar...
|
// TODO Display a snackbar...
|
||||||
|
|||||||
@@ -0,0 +1,77 @@
|
|||||||
|
package com.mitchelbv.thuis_c.views.freezer.item_list.edit_item
|
||||||
|
|
||||||
|
import androidx.compose.foundation.layout.Arrangement
|
||||||
|
import androidx.compose.foundation.layout.Column
|
||||||
|
import androidx.compose.foundation.layout.padding
|
||||||
|
import androidx.compose.foundation.text.KeyboardOptions
|
||||||
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||||
|
import androidx.compose.material3.FloatingActionButton
|
||||||
|
import androidx.compose.material3.Text
|
||||||
|
import androidx.compose.material3.TextField
|
||||||
|
import androidx.compose.runtime.Composable
|
||||||
|
import androidx.compose.runtime.collectAsState
|
||||||
|
import androidx.compose.runtime.getValue
|
||||||
|
import androidx.compose.runtime.livedata.observeAsState
|
||||||
|
import androidx.compose.runtime.mutableStateOf
|
||||||
|
import androidx.compose.runtime.saveable.rememberSaveable
|
||||||
|
import androidx.compose.runtime.setValue
|
||||||
|
import androidx.compose.ui.Modifier
|
||||||
|
import androidx.compose.ui.res.stringResource
|
||||||
|
import androidx.compose.ui.text.input.KeyboardType
|
||||||
|
import androidx.compose.ui.tooling.preview.Preview
|
||||||
|
import androidx.compose.ui.unit.dp
|
||||||
|
import androidx.core.text.isDigitsOnly
|
||||||
|
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||||
|
import androidx.lifecycle.viewmodel.compose.viewModel
|
||||||
|
import com.mitchelbv.thuis_c.R
|
||||||
|
import com.mitchelbv.thuis_c.network.thuis.responses.FreezerItem
|
||||||
|
import com.mitchelbv.thuis_c.views.freezer.item_list.FreezerItemElement
|
||||||
|
import com.mitchelbv.thuis_c.views.freezer.item_list.FreezerItemListViewModel
|
||||||
|
|
||||||
|
@Composable
|
||||||
|
fun FreezerItemEditScreen(
|
||||||
|
freezerItemEditViewModel: FreezerItemEditViewModel = viewModel()
|
||||||
|
) {
|
||||||
|
val freezerItemUiState by freezerItemEditViewModel.uiState.collectAsStateWithLifecycle()
|
||||||
|
|
||||||
|
freezerItemUiState.item?.let { BuildEditView(freezerItem = it) }
|
||||||
|
}
|
||||||
|
|
||||||
|
@OptIn(ExperimentalMaterial3Api::class)
|
||||||
|
@Composable
|
||||||
|
fun BuildEditView(freezerItem: FreezerItem) {
|
||||||
|
var itemText by rememberSaveable() {
|
||||||
|
mutableStateOf(freezerItem.item)
|
||||||
|
}
|
||||||
|
Column(verticalArrangement = Arrangement.SpaceBetween) {
|
||||||
|
TextField(
|
||||||
|
label = { Text(stringResource(id = R.string.freezer_item_edit_description)) },
|
||||||
|
// value = "${freezerItem.item}",
|
||||||
|
value = "${itemText}",
|
||||||
|
onValueChange = {
|
||||||
|
freezerItem.item = it
|
||||||
|
itemText = it
|
||||||
|
})
|
||||||
|
TextField(
|
||||||
|
label = { Text(stringResource(id = R.string.freezer_item_edit_amount)) },
|
||||||
|
value = "${freezerItem.amount}",
|
||||||
|
onValueChange = { value ->
|
||||||
|
if (value.isDigitsOnly()) {
|
||||||
|
freezerItem.amount = value.toInt()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
keyboardOptions = KeyboardOptions(keyboardType = KeyboardType.Number)
|
||||||
|
)
|
||||||
|
TextField(
|
||||||
|
label = { Text(stringResource(id = R.string.freezer_item_edit_drawer)) },
|
||||||
|
value = "${freezerItem.drawer}",
|
||||||
|
onValueChange = {})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Preview
|
||||||
|
@Composable
|
||||||
|
fun EditViewPreview() {
|
||||||
|
val test = FreezerItem(freezerItemId = 1, item = "Kip", 5, 5, "12-01-01", 1)
|
||||||
|
BuildEditView(freezerItem = test)
|
||||||
|
}
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
package com.mitchelbv.thuis_c.views.freezer.item_list.edit_item
|
||||||
|
|
||||||
|
import androidx.lifecycle.MutableLiveData
|
||||||
|
import androidx.lifecycle.SavedStateHandle
|
||||||
|
import androidx.lifecycle.ViewModel
|
||||||
|
import androidx.lifecycle.viewModelScope
|
||||||
|
import com.mitchelbv.thuis_c.network.thuis.ThuisRetrofitHelper
|
||||||
|
import com.mitchelbv.thuis_c.network.thuis.responses.FreezerItem
|
||||||
|
import com.mitchelbv.thuis_c.views.freezer.item_list.FreezerItemListUiState
|
||||||
|
import kotlinx.coroutines.Dispatchers
|
||||||
|
import kotlinx.coroutines.flow.MutableStateFlow
|
||||||
|
import kotlinx.coroutines.flow.StateFlow
|
||||||
|
import kotlinx.coroutines.flow.asStateFlow
|
||||||
|
import kotlinx.coroutines.launch
|
||||||
|
import java.net.ConnectException
|
||||||
|
|
||||||
|
data class FreezerItemEditUiState(
|
||||||
|
val item: FreezerItem? = null,
|
||||||
|
var error: String = ""
|
||||||
|
)
|
||||||
|
|
||||||
|
class FreezerItemEditViewModel(savedStateHandle: SavedStateHandle) : ViewModel() {
|
||||||
|
private val _uiState = MutableStateFlow(FreezerItemEditUiState())
|
||||||
|
val uiState: StateFlow<FreezerItemEditUiState> = _uiState.asStateFlow()
|
||||||
|
|
||||||
|
init {
|
||||||
|
savedStateHandle.get<Int>("freezer_id")?.let { fillEditBoxes(it) }
|
||||||
|
}
|
||||||
|
|
||||||
|
fun fillEditBoxes(freezer_id: Int) {
|
||||||
|
viewModelScope.launch(Dispatchers.IO) {
|
||||||
|
try {
|
||||||
|
val apiResponse =
|
||||||
|
ThuisRetrofitHelper.thuis.getFreezerItem(id = freezer_id)
|
||||||
|
_uiState.value = FreezerItemEditUiState(item = apiResponse)
|
||||||
|
|
||||||
|
} catch (e: ConnectException) {
|
||||||
|
// _uiState.value = FreezerItemListUiState(listOf(FreezerItem(item = )))
|
||||||
|
_uiState.value = FreezerItemEditUiState(error = "Oeps")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -8,8 +8,14 @@
|
|||||||
<string name="home_card_cards">Cards</string>
|
<string name="home_card_cards">Cards</string>
|
||||||
<string name="home_card_freezer">Freezers</string>
|
<string name="home_card_freezer">Freezers</string>
|
||||||
|
|
||||||
|
<!-- Freezer item list -->
|
||||||
<string name="freezer_list_empty">No freezer(s)</string>
|
<string name="freezer_list_empty">No freezer(s)</string>
|
||||||
<string name="edit_freezer">Edit freezer</string>
|
<string name="edit_freezer">Edit freezer</string>
|
||||||
<string name="freezer_item_count_partial">items</string>
|
<string name="freezer_item_count_partial">items</string>
|
||||||
<string name="freezer_item_drawer_partial">Drawer</string>
|
<string name="freezer_item_drawer_partial">Drawer</string>
|
||||||
|
|
||||||
|
<!-- Freezer item edit view -->
|
||||||
|
<string name="freezer_item_edit_description">Description</string>
|
||||||
|
<string name="freezer_item_edit_amount">Amount</string>
|
||||||
|
<string name="freezer_item_edit_drawer">Drawer</string>
|
||||||
</resources>
|
</resources>
|
||||||
@@ -1,10 +1,10 @@
|
|||||||
buildscript {
|
buildscript {
|
||||||
ext {
|
ext {
|
||||||
compose_version = '1.4.1'
|
compose_version = '1.4.2'
|
||||||
}
|
}
|
||||||
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
}// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
||||||
plugins {
|
plugins {
|
||||||
id 'com.android.application' version '7.4.2' apply false
|
id 'com.android.application' version '8.0.0' apply false
|
||||||
id 'com.android.library' version '7.4.2' apply false
|
id 'com.android.library' version '8.0.0' apply false
|
||||||
id 'org.jetbrains.kotlin.android' version '1.8.10' apply false
|
id 'org.jetbrains.kotlin.android' version '1.8.10' apply false
|
||||||
}
|
}
|
||||||
@@ -20,4 +20,7 @@ kotlin.code.style=official
|
|||||||
# Enables namespacing of each library's R class so that its R class includes only the
|
# 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,
|
# resources declared in the library itself and none from the library's dependencies,
|
||||||
# thereby reducing the size of the R class for that library
|
# thereby reducing the size of the R class for that library
|
||||||
android.nonTransitiveRClass=true
|
android.nonTransitiveRClass=true
|
||||||
|
android.defaults.buildfeatures.buildconfig=true
|
||||||
|
android.nonFinalResIds=false
|
||||||
|
org.gradle.unsafe.configuration-cache=true
|
||||||
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
@@ -1,6 +1,6 @@
|
|||||||
#Mon Oct 31 14:59:45 CET 2022
|
#Mon Oct 31 14:59:45 CET 2022
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.0-bin.zip
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
zipStorePath=wrapper/dists
|
zipStorePath=wrapper/dists
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
|
|||||||
Reference in New Issue
Block a user