Java.lang.NoClassDefFoundError: com.google.api.services.drive.Drive

When trying to use any function of a disk class:

Drive service = new Drive.Builder(AndroidHttp.newCompatibleTransport(),new GsonFactory(), credential).build(); 

I have included the right jar in the libs folders:

Google-API-Services-disk-v2-rev123-1.18.0-rc.jar

and import is ok:

import com.google.api.services.drive.Drive; Import com.google.api.services.drive.DriveScopes;

But he continues to show an error:

 05-07 11:54:37.865: E/AndroidRuntime(25824): FATAL EXCEPTION: AsyncTask #1 05-07 11:54:37.865: E/AndroidRuntime(25824): java.lang.RuntimeException: An error occured while executing doInBackground() 05-07 11:54:37.865: E/AndroidRuntime(25824): at android.os.AsyncTask$3.done(AsyncTask.java:299) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.FutureTask.setException(FutureTask.java:124) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.FutureTask.run(FutureTask.java:137) 05-07 11:54:37.865: E/AndroidRuntime(25824): at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.lang.Thread.run(Thread.java:838) 05-07 11:54:37.865: E/AndroidRuntime(25824): Caused by: java.lang.NoClassDefFoundError: com.google.api.services.drive.Drive$Builder 05-07 11:54:37.865: E/AndroidRuntime(25824): at com.example.googledrivetest.MainActivity$getAccountDetails.doInBackground(MainActivity.java:138) 05-07 11:54:37.865: E/AndroidRuntime(25824): at com.example.googledrivetest.MainActivity$getAccountDetails.doInBackground(MainActivity.java:1) 05-07 11:54:37.865: E/AndroidRuntime(25824): at android.os.AsyncTask$2.call(AsyncTask.java:287) 05-07 11:54:37.865: E/AndroidRuntime(25824): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305) 05-07 11:54:37.865: E/AndroidRuntime(25824): ... 5 more 
0
source share
1 answer

I believe that you did not include the google-api-client-1.18.0-rc.jar , which is why you get the exception.

Once you download and unzip the Drive API library , read drive/readme.html . He listed the dependent jars for google-api-services-drive-v2-rev123-1.18.0-rc.jar that he needed to enable. Dependent banks may be located in the drive/libs folder.

Below is a complete set of banners that must be included in the Android application:

  • Google-API-Services-disk-v2-rev123-1.18.0-rc.jar
  • Google-api-client-1.18.0-rc.jar
  • Google-OAuth-client-1.18.0-rc.jar
  • Google-client-client-1.18.0-rc.jar
  • jsr305-1.3.9.jar
  • Google-client-client-gson-1.18.0-rc.jar
  • Google-api-client-android-1.18.0-rc.jar
  • Google-http-client-android-1.18.0-rc.jar
+2
source

All Articles