java - Upload file to existing Google Drive Folder - Android -


i want upload file existing google drive folder.

i using how upload image android app specific folder on google drive folder name not sure how implement (smokybob's answer)

 //search name , type folder  string qstr = "mimetype = 'application/vnd.google-apps.folder' , title = 'myfolder'";   //get list of folders  filelist flist=service.files().list().setq(qstr).execute();   //check result 1 folder  file folder;   if (flist.getitems().lenght==0){  folder=flist.getitems()[0];   }   //create insert request in sample   file file = service.files().insert(body, mediacontent);   //set parent   file.setparents(arrays.aslist(newparentreference().setid(folder.getfolderid())));   //execute request    file.execute(); 

i getting cannot resolve symbol errors filelist, body, mediacontent. getting cannot resolve method .files, getitems(), setparents, newparentsreference, , execute.

class:getfile.java https://github.com/googledrive/android-demos/blob/master/src/com/google/android/gms/drive/sample/demo/createfileactivity.java

     public class getfile extends uploaddrive {  private static final string tag = "createfileactivity";  @override public void onconnected(bundle connectionhint) {     super.onconnected(connectionhint);     // create new contents resource     drive.driveapi.newdrivecontents(getgoogleapiclient())             .setresultcallback(drivecontentscallback); }  final private resultcallback<drivecontentsresult> drivecontentscallback = new         resultcallback<drivecontentsresult>() {             @override             public void onresult(drivecontentsresult result) {                 if (!result.getstatus().issuccess()) {                     showmessage("error while trying create new file contents");                     return;                 }                 final drivecontents drivecontents = result.getdrivecontents();                  // perform i/o off ui thread.                 new thread() {                     @override                     public void run() {                         // write content drivecontents                         outputstream outputstream = drivecontents.getoutputstream();                         writer writer = new outputstreamwriter(outputstream);                         try {                             writer.write(mainactivity.drivetext); //what problem?                             writer.close();                         } catch (ioexception e) {                             log.e(tag, e.getmessage());                         }                          metadatachangeset changeset = new metadatachangeset.builder()                                 .settitle("new file")                                 .setmimetype("text/plain")                                 .setstarred(true).build();                          // create file on root folder                         drive.driveapi.getrootfolder(getgoogleapiclient())                                 .createfile(getgoogleapiclient(), changeset, drivecontents)                                 .setresultcallback(filecallback);                     }                 }.start();             }         };  final private resultcallback<drivefileresult> filecallback = new         resultcallback<drivefileresult>() {             @override             public void onresult(drivefileresult result) {                 if (!result.getstatus().issuccess()) {                     showmessage("error while trying create file");                     return;                 }                 showmessage("created file content: " + result.getdrivefile().getdriveid());             }         }; } 

when folder created under gdaa, produces driveid.

/**************************************************************************    * create file/folder in goodrive    * @param prnid  parent's id, (null or "root") root    * @param titl  file name    * @param mime  file mime type    * @param file  file (with content) create (optional, if null, create folder)    * @return      file id  / null on fail    */   static string create(string prnid, string titl, string mime, java.io.file file) {     driveid did = null;     if (mgac != null && mgac.isconnected() && titl != null) try {       drivefolder pfldr = (prnid == null || prnid.equalsignorecase("root")) ?       drive.driveapi.getrootfolder(mgac):       drive.driveapi.getfolder(mgac, driveid.decodefromstring(prnid));       if (pfldr == null) return null; //----------------->>>        metadatachangeset meta;       if (file != null) {  // create file         if (mime != null) {   // file must have mime           drivecontentsresult r1 = drive.driveapi.newdrivecontents(mgac).await();           if (r1 == null || !r1.getstatus().issuccess()) return null; //-------->>>            meta = new metadatachangeset.builder().settitle(titl).setmimetype(mime).build();           drivefileresult r2 = pfldr.createfile(mgac, meta, r1.getdrivecontents()).await();           drivefile dfil = r2 != null && r2.getstatus().issuccess() ? r2.getdrivefile() : null;           if (dfil == null) return null; //---------->>>            r1 = dfil.open(mgac, drivefile.mode_write_only, null).await();           if ((r1 != null) && (r1.getstatus().issuccess())) try {             status stts = file2cont(r1.getdrivecontents(), file).commit(mgac, meta).await();             if ((stts != null) && stts.issuccess()) {               metadataresult r3 = dfil.getmetadata(mgac).await();               if (r3 != null && r3.getstatus().issuccess()) {                 did = r3.getmetadata().getdriveid();               }             }           } catch (exception e) {             ut.le(e);           }         }        } else {         meta = new metadatachangeset.builder().settitle(titl).setmimetype(ut.mime_fldr).build();         drivefolderresult r1 = pfldr.createfolder(mgac, meta).await();         drivefolder dfld = (r1 != null) && r1.getstatus().issuccess() ? r1.getdrivefolder() : null;         if (dfld != null) {           metadataresult r2 = dfld.getmetadata(mgac).await();           if ((r2 != null) && r2.getstatus().issuccess()) {             did = r2.getmetadata().getdriveid();           }         }       }     } catch (exception e) { ut.le(e); }     return did == null ? null : did.encodetostring();   }  

(must run on non-ui thread)
id used in subsequent calls "parent id". if have questions unresolved methods, please refer github project. btw (as mentioned before), you're trying accomplish (creates folders, creates text files, reads contents back, deletes files/folders, ...)

good luck


Comments

Popular posts from this blog

IF statement in MySQL trigger -

c++ - What does MSC in "// appease MSC" comments mean? -

javascript - Blogger related post gadget image Resize s72-c [ Need Expert Help ] -