【发布时间】:2020-03-13 08:07:50
【问题描述】:
我有 ApiService
interface ApiService {
@GET("customsearch/v1")
fun getTopResult(
@Query(QUERY_PARAM_API_KEY) key: String = "AIzaSyFhdJHf....7IlRcE",
@Query(QUERY_PARAM_CX) cx: String = "017576662512468239146:omuauf_lfve",
@Query(QUERY_PARAM_QUERY) q: String
) : Single<ResultInfoList>
companion object {
private const val QUERY_PARAM_API_KEY = "key"
private const val QUERY_PARAM_CX = "cx"
private const val QUERY_PARAM_QUERY = "q"
}
}
ApiFactory:
object ApiFactory {
private const val BASE_URL = "https://www.googleapis.com/"
private val retrofit = Retrofit.Builder()
.baseUrl(BASE_URL)
.addConverterFactory(GsonConverterFactory.create())
.addCallAdapterFactory(RxJava2CallAdapterFactory.create())
.build()
val apiService = retrofit.create(ApiService::class.java)
}
我尝试通过调用来获取 Json 响应 ApiFactory.apiService.getTopResult(q = "something")
但应用程序崩溃了
.baseUrl(BASE_URL)
任何帮助将不胜感激!
【问题讨论】:
-
你能发布你的错误日志吗
-
@Deepak java.lang.IllegalStateException:无法执行方法。在 com.example.googlesearchapp.api.ApiFactory.
(ApiFactory.kt:12)
标签: android kotlin google-api retrofit google-search-api