Не удается импортировать клиент Google после обновления Android Studio
после обновления до Android Studio 2.3 кажется, что я не могу использовать код для конечных точек облака
class EndpointsAsyncTask extends AsyncTask<Pair<Context, String>, Void, String> {
private static MyApi myApiService = null;
private Context context;
@Override
protected String doInBackground(Pair<Context, String>... params) {
if(myApiService == null) { // Only do this once
MyApi.Builder builder = new MyApi.Builder(AndroidHttp.newCompatibleTransport(),
new AndroidJsonFactory(), null)
// options for running against local devappserver
// - 10.0.2.2 is localhost's IP address in Android emulator
// - turn off compression when running against local devappserver
.setRootUrl("http://10.0.2.2:8080/_ah/api/")
.setGoogleClientRequestInitializer(new GoogleClientRequestInitializer() {
@Override
public void initialize(AbstractGoogleClientRequest<?> abstractGoogleClientRequest) throws IOException {
abstractGoogleClientRequest.setDisableGZipContent(true);
}
});
// end options for devappserver
myApiService = builder.build();
}
context = params[0].first;
String name = params[0].second;
try {
return myApiService.sayHi(name).execute().getData();
} catch (IOException e) {
return e.getMessage();
}
}
@Override
protected void onPostExecute(String result) {
Toast.makeText(context, result, Toast.LENGTH_LONG).show();
}
}
проблема возникает при импорте AndroidHttp и AndroidJsonFactory. Раньше он работал с Click-alt-enter import, а не сейчас. Я могу скопировать импорт вручную
import com.google.api.client.extensions.android.http.AndroidHttp;
import com.google.api.client.extensions.android.json.AndroidJsonFactory;
import com.google.api.client.googleapis.services.AbstractGoogleClientRequest;
import com.google.api.client.googleapis.services.GoogleClientRequestInitializer;
но он выделяет "клиент", клиент не может разрешить символ. Файл gradle имеет проект компиляции зависимостей (путь:': backend', конфигурация: 'android-endpoints'), и у меня есть синхронизированной.
вместо того, чтобы пытаться откатить версии, есть ли другой импорт, который нам нужно использовать сейчас или настроить по-другому? Является ли код на странице Google Cloud устаревшим?
2 ответов
Я добавил Эти зависимости в конечных точках сборки.файл gradle:
compile group: 'com.google.api-client', name: 'google-api-client', version: '1.22.0'
compile group: 'com.google.api-client', name: 'google-api-client-android', version: '1.22.0'
Я не знаю, почему они вдруг понадобились, но я решил это, добавив эти зависимости к отсутствующим пакетам.