У меня возникли проблемы с интеграцией диска Google в мое приложение для Android.Ошибка Google Android для Google Диска
Я хотел бы иметь возможность загружать, загружать и просматривать файлы.
До сих пор я просто пытаюсь получить список файлов с использованием Java API для диска, так как Google говорит, что он более гибкий.
Я подключение к Google Drive, как так:
googleAccountCredential = GoogleAccountCredential.usingOAuth2(getActivity(), Arrays.asList(DriveScopes.DRIVE));
googleAccountCredential.setSelectedAccountName(Arrays.asList(DriveScopes.DRIVE).get(0));
//startActivityForResult(googleAccountCredential.newChooseAccountIntent(), REQUEST_ACCOUNT_PICKER);
driveService = getDriveService(googleAccountCredential);
И после того, что я пытаюсь получить список файлов:
private List<File> retrieveAllFiles(Drive service) throws IOException {
List<File> result = new ArrayList<File>();
Files.List request = service.files().list().setQ("trashed = false");
this.logMessage("Attempting to get files");
this.logMessage("Size of reply is: "+request.size());
do {
try {
FileList files = request.execute();
result.addAll(files.getItems());
request.setPageToken(files.getNextPageToken());
this.logMessage("Got files. Size is: " + result.size());
} catch (IOException e) {
this.logMessage("Error: " + e);
request.setPageToken(null);
}
} while (request.getPageToken() != null &&
request.getPageToken().length() > 0);
return result;
}
Это ошибка дает:
Process: com.some.package, PID: 12439
java.lang.IllegalArgumentException: the name must not be empty: null
at android.accounts.Account.<init>(Account.java:48)
at com.google.android.gms.auth.GoogleAuthUtil.getToken(Unknown Source)
at com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential.getToken(GoogleAccountCredential.java:255)
at com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential$RequestHandler.intercept(GoogleAccountCredential.java:279)
at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:859)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)
at com.some.package.Thing.DriveManager.retrieveAllFiles(DriveManager.java:144)
at com.some.package.Thing.DriveManager.loadAccount(DriveManager.java:121)
at com.some.package.Thing.DriveManager.onCreateView(DriveManager.java:95)
at android.app.Fragment.performCreateView(Fragment.java:2053)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:894)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1067)
at android.app.BackStackRecord.run(BackStackRecord.java:834)
at android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1452)
at android.app.FragmentManagerImpl$1.run(FragmentManager.java:447)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:135)
at android.app.ActivityThread.main(ActivityThread.java:5289)
at java.lang.reflect.Method.invoke(Native Method)
at java.lang.reflect.Method.invoke(Method.java:372)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:904)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:699)
Я испытываю тот же вопрос, вам удалось решить эту проблему? –