title: Google drive as service in Android
body: <p>I am trying to implement to upload some files to google drive via some service in google drive   to a particular google account from multiple users of  my application .How can i do it.</p>
  
  <pre><code>private void UploadToDrive(final String  filename){
       final GoogleAccountCredential credential;
       credential = GoogleAccountCredential.usingOAuth2(this, DriveScopes.DRIVE);
  
       Thread t = new Thread(new Runnable() {
            @Override
            public void run() {
               Drive service = new Drive.Builder(AndroidHttp.newCompatibleTransport(), new GsonFactory(), credential)
               .build();
               try {
                // File's binary content
                java.io.File fileContent = new java.io.File(filename);
                FileContent mediaContent = new FileContent("application/xml", fileContent);
                com.google.api.services.drive.model.File body = new com.google.api.services.drive.model.File();
                body.setTitle(fileContent.getName());
                body.setMimeType("application/xml");
              //  Log.v("GoogleVideo1",fileUri.getPath());    
                com.google.api.services.drive.model.File file = service.files().insert(body, mediaContent).execute();
           //     Log.v("GoogleVideo2",fileUri.getPath());
                if (file != null) {
                //  showToast("Photo uploaded: " + file.getTitle());
             //     startCameraIntent();
                }
              } catch (UserRecoverableAuthIOException e) {
                  Log.v(TAG,"rECOVERABLE AUTH");
                  e.printStackTrace();
  //            startActivityForResult(e.getIntent(), 1);
              } catch (IOException e) {
               // Log.e("GoogleVideo",fileUri.getPath());
                System.out.println("HIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII");
                e.printStackTrace();
              }
            }
          });
          t.start();
  
   }
  </code></pre>
  
  <p>But when i am executing execute() of service i get this error:</p>
  
  <pre><code>01-31 16:03:17.975: I/dalvikvm(23567): Could not find method com.google.android.gms.auth.GoogleAuthUtil.invalidateToken, referenced from method com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential$RequestHandler.handleResponse
  01-31 16:03:17.975: W/dalvikvm(23567): VFY: unable to resolve static method 1536: Lcom/google/android/gms/auth/GoogleAuthUtil;.invalidateToken (Landroid/content/Context;Ljava/lang/String;)V
  01-31 16:03:17.975: D/dalvikvm(23567): VFY: replacing opcode 0x71 at 0x0015
  01-31 16:03:17.975: W/dalvikvm(23567): VFY: unable to resolve exception class 143 (Lcom/google/android/gms/auth/GooglePlayServicesAvailabilityException;)
  01-31 16:03:17.975: W/dalvikvm(23567): VFY: unable to find exception handler at addr 0x25
  01-31 16:03:17.975: W/dalvikvm(23567): VFY:  rejected Lcom/google/api/client/googleapis/extensions/android/gms/auth/GoogleAccountCredential$RequestHandler;.intercept (Lcom/google/api/client/http/HttpRequest;)V
  01-31 16:03:17.975: W/dalvikvm(23567): VFY:  rejecting opcode 0x0d at 0x0025
  01-31 16:03:17.980: W/dalvikvm(23567): VFY:  rejected Lcom/google/api/client/googleapis/extensions/android/gms/auth/GoogleAccountCredential$RequestHandler;.intercept (Lcom/google/api/client/http/HttpRequest;)V
  01-31 16:03:17.980: W/dalvikvm(23567): Verifier rejected class Lcom/google/api/client/googleapis/extensions/android/gms/auth/GoogleAccountCredential$RequestHandler;
  01-31 16:03:17.980: W/dalvikvm(23567): threadid=11: thread exiting with uncaught exception (group=0x40fc92a0)
  01-31 16:03:17.995: E/AndroidRuntime(23567): FATAL EXCEPTION: Thread-2472
  01-31 16:03:17.995: E/AndroidRuntime(23567): java.lang.VerifyError: com/google/api/client/googleapis/extensions/android/gms/auth/GoogleAccountCredential$RequestHandler
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at com.google.api.client.googleapis.extensions.android.gms.auth.GoogleAccountCredential.initialize(GoogleAccountCredential.java:124)
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at com.google.api.client.http.HttpRequestFactory.buildRequest(HttpRequestFactory.java:109)
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:404)
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:328)
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:449)
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at com.example.googledrivetest.LocationService$1.run(LocationService.java:183)
  01-31 16:03:17.995: E/AndroidRuntime(23567):    at java.lang.Thread.run(Thread.java:856)
  01-31 16:03:18.025: I/Process(23567): Sending signal. PID: 23567 SIG: 9
  </code></pre>