Я использую Kotlin и AWS Amplify, чтобы сделать простое мобильное приложение. Я начну с демонстрации того, что у меня настроено. My schema.graphql:
type OfferGQL @model {
id: ID!
name: String!
description: String!
address: String!
price: Float!
}
Мои AWS плагины настроены следующим образом:
Amplify.addPlugin(AWSCognitoAuthPlugin())
Amplify.addPlugin(AWSS3StoragePlugin())
Amplify.addPlugin(AWSDataStorePlugin())
Amplify.configure(applicationContext)
Вот как я пытаюсь сохранить свои данные в DataStore:
// Create a new offer object
val newOffer = OfferGQL.builder()
.name(textFieldOfferName.text.toString())
.description(textFieldOfferDescription.text.toString())
.address(textFieldOfferAddress.text.toString())
.price(textFieldOfferPrice.text.toString().toFloat())
.build()
// Put it in the DataStore
Amplify.DataStore.save(newOffer,
{result ->
runOnUiThread{Toast.makeText(this,"Offer added successfully", Toast.LENGTH_LONG).show()}
},
{error ->
println(error.message)
println(error.localizedMessage)
println(error.cause)
println(error.recoverySuggestion)
})
Проблема в том, что когда я вызываю Amplify.DataStore.save (), все приложение зависает. Я следил за документацией, чтобы настроить все, поэтому я не совсем понимаю, почему это происходит.