Mam skrypt PHP, który uruchomi zestaw poleceń na moim Raspberry Pi (takich jak włączanie / wyłączanie diody LED) po otwarciu w przeglądarce internetowej. Chcę uruchomić ten skrypt po naciśnięciu przycisku w aplikacji na Androida za pomocą metody onClick ().
Jak wywołać HTTP w Android Studio bez ładowania strony internetowej?
1 odpowiedź
Wygląda na to, że jesteś nowy na Androidzie lub Android Studio, sugeruje się, aby spróbować publikować z trochę większym wyjaśnieniem, aby wszyscy mogli lepiej zrozumieć.
Zacznijmy
W Androidzie jest kilka bibliotek, które wysyłają żądania sieciowe. Zamierzam opublikować losowy kod i zadać ci kilka pytań, podam ci trochę zasobów i sugeruję, abyś poszedł i poszukał ich, ponieważ zajmą ci trochę czasu, Oto losowy kod:
I nie martw się, jeśli jest w kotlinie
interface ApiService {
@GET("popular")
suspend fun getApi(
@Query("query") id: String
) : Response<Movie>
companion object RetrofitRequest {
private val interceptor = Interceptor { chain ->
val url = chain.request()
.url()
.newBuilder()
.addQueryParameter("access_key", API_KEY)
.build()
val request = chain.request().newBuilder().url(url).build()
return@Interceptor chain.proceed(request)
}
private val okHttpClient = OkHttpClient
.Builder()
.addInterceptor(interceptor)
.build()
@Volatile
private var instance: ApiService? = null
fun getInstance(): ApiService = instance ?: synchronized(this) {
instance ?: fullResponse().also {
instance = it
}
}
private fun retrofitBuild(): Retrofit =
Retrofit.Builder()
.client(okHttpClient)
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.build()
private fun fullResponse(): ApiService {
return retrofitBuild().create(ApiService::class.java)
}
}
}
Pytanie 1 -> Co to jest Interceptor?
Pytanie 2 -> Co to jest Okhttp?
Pytanie 3 -> Co to jest modernizacja(Retrofit2)?
Oto kilka zasobów:
https://square.github.io/retrofit/
https://androidclarified.com/okhttp-interceptor-retrofit2-example/ < br/> Wskazówka: Aby dowiedzieć się więcej o pełnym wyposażeniu aplikacji Network, wyszukaj coś takiego: Modernizacja za pomocą rxjava (rxjava to framework) lub modernizacja za pomocą kotlin Współprogramy (jeśli planujesz używać kotlin)
Podobne pytania
Nowe pytania
java
Java to język programowania wysokiego poziomu. Użyj tego tagu, jeśli masz problemy z używaniem lub zrozumieniem samego języka. Ten tag jest rzadko używany samodzielnie i jest najczęściej używany w połączeniu z [spring], [spring-boot], [jakarta-ee], [android], [javafx], [hadoop], [gradle] i [maven].