Browse Source

Подключили Retrofit, разрешили интернет подключения

loparev@kansk-tc.ru 3 years ago
parent
commit
b90a903d52

+ 1 - 0
app/src/main/AndroidManifest.xml

@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="com.example.myapplication">
+    <uses-permission android:name="android.permission.INTERNET" />
 
     <application
         android:allowBackup="true"

+ 28 - 2
app/src/main/java/com/example/myapplication/MainActivity.kt

@@ -1,8 +1,15 @@
 package com.example.myapplication
 
-import androidx.appcompat.app.AppCompatActivity
 import android.os.Bundle
+import android.util.Log
+import androidx.appcompat.app.AppCompatActivity
+import retrofit2.Call
+import retrofit2.Callback
+import retrofit2.Response
 import retrofit2.Retrofit
+import retrofit2.converter.gson.GsonConverterFactory
+import retrofit2.http.GET
+
 
 class MainActivity : AppCompatActivity() {
     override fun onCreate(savedInstanceState: Bundle?) {
@@ -10,6 +17,25 @@ class MainActivity : AppCompatActivity() {
         setContentView(R.layout.activity_main)
         val retrofit = Retrofit.Builder()
             .baseUrl("http://cinema.areas.su")
-            .addConverterFactory()
+            .addConverterFactory(GsonConverterFactory.create())
+            .build()
+        val getUsers = retrofit.create(APIService::class.java)
+        val call: Call<List<Users>> = getUsers.users
+        call.enqueue(object : Callback<List<Users>> {
+            override fun onResponse(p0: Call<List<Users>>, p1: Response<List<Users>>) {
+                val users: List<Users>? = p1.body()
+                Log.d("TAG1", users.toString())
+            }
+
+            override fun onFailure(p0: Call<List<Users>>?, p1: Throwable?) {
+                Log.d("TAG1", p0.toString())
+            }
+        })
+
+    }
+
+    interface APIService {
+        @get:GET("user")
+        val users: Call<List<Users>>
     }
 }

+ 9 - 0
app/src/main/java/com/example/myapplication/Users.kt

@@ -0,0 +1,9 @@
+package com.example.myapplication
+
+data class Users(
+    val userId: Int,
+    val firstName: String,
+    val lastName: String,
+    val email: String,
+    val avatar: String
+)