Я пытаюсь сделать запрос POST на Android студии. Однако приложение останавливается - PullRequest
0 голосов
/ 29 февраля 2020

Я пытаюсь опубликовать, в данном случае, "ocorrencia". Я использую модификацию, чтобы сделать это. Однако каждый раз, когда я нажимаю кнопку, чтобы отправить новую «ocorrencia», приложение останавливается.
Вот что у меня есть: Это мой интерфейс

   interface Endpoint {

@GET("ocorrencias")
fun getPosts() : Call<List<Ignicoes>>

@POST("ocorrencias")
fun postIgnicao(
    @Field("Latitude")
    Latitude:String,
    @Field("Longitude")
    Longitude:String,
    @Field("Estado")
    Estado:String,
    @Field("DataInicioPropostaIgnicao")
    DataInicioPropostaIgnicao: String,
    @Field("DataDecisaoIgnicao")
    DataDecisaoIgnicao:String,
    @Field("Fotografia")
    Fotografia:String,
    @Field("Azimute")
    Azimute:String

) : Call<Ignicoes>

Вот мой класс Ignicoes:

data class Ignicoes(

@SerializedName("Latitude")
var Latitude : String,
@SerializedName("Longitude")
var Longitude : String,
@SerializedName("Estado")
var Estado : String,
@SerializedName("DataInicioPropostaIgnicao")
var DataInicioPropostaIgnicao : String,
@SerializedName("DataDecisaoIgnicao")
var DataDecisaoIgnicao : String,
@SerializedName("Fotografia")
var fotografia : String,
@SerializedName("Azimute")
var azimute : String

  )

Вот мои NetworkUtils:

class NetworkUtils {

companion object {

    /** Retorna uma Instância do Client Retrofit para Requisições
     * @param path Caminho Principal da API
     */
    fun getRetrofitInstance(path : String) : Retrofit {
        return Retrofit.Builder()
            .baseUrl(path)
            .addConverterFactory(GsonConverterFactory.create())
            .build()
       }
    }
  }

Вот функция публикации в моем классе: fun postData () {

    val retrofitClient = NetworkUtils
        .getRetrofitInstance("https://localhost:44324/")

    val endpoint = retrofitClient.create(Endpoint::class.java)
    val callback = endpoint.postIgnicao(
        "40.448365",
        "-7.137882",
        "aceite",
        "2423423",
        "sfsdf",
        "fdsfds",
        "32")

    callback.enqueue(object : Callback<Ignicoes> {
        override fun onFailure(call: Call<Ignicoes>, t: Throwable) {
            Toast.makeText(baseContext, t.message, Toast.LENGTH_SHORT).show()
        }

        override fun onResponse(call: Call<Ignicoes>, response: Response<Ignicoes>) {
            if (response.isSuccessful()) {
                if (response.body() != null) {
                    Toast.makeText(this@AppFogos, "A ocorrência foi enviada", Toast.LENGTH_LONG).show()


                }
            }

        }
    })
}

Я не уверен, почему приложение перестает работать. Может кто-нибудь объяснить, почему это происходит?

...