Upload Gambar di Android Menggunakan Google Sheets

Membuat Aplikasi Android Upload Gambar dengan API Google Sheets

Halo semua! kali ini saya akan membuat tutorial mengenai membuat aplikasi android dengan API yang dibuat dari Google Sheet dan Google Apps Script untuk meng-upload gambar yang nantinya gambar tersebut akan otomatis masuk ke Google Drive dengan Google Sheet sebagai database-nya. sebelum ke sini sebaiknya membaca terlebih dahulu artikel  ini dan ini lalu ikutin tutorial ini untuk upload gambar :

  1. Buka Google Apps Script kalian lalu gunakan code berikut :
    function doPost(e) {
      var id = e.parameters.id;
      var nameImage = e.parameter.nameImage;
      var image =  e.parameter.image;
      var sheetSpreadsheet = e.parameter.sheet;
      var doc     = SpreadsheetApp.openById(id);
      var sheet   = doc.getSheetByName(sheetSpreadsheet);
      var directoryImage = "Tutorial Image";
      var folder, folders = DriveApp.getFoldersByName(directoryImage);
      if (folders.hasNext()) {
        folder = folders.next();
      } else {
        folder = DriveApp.createFolder(directoryImage);
      }
      var fileName = nameImage+".png";
      var contentType = 'image/png';
      var data = Utilities.base64Decode(image);
      var blob = Utilities.newBlob(data, contentType, fileName);
      var file = folder.createFile(blob);
      file.setSharing(DriveApp.Access.ANYONE_WITH_LINK,DriveApp.Permission.VIEW);
      var fileId=file.getId();
      var fileUrl = "https://drive.google.com/uc?export=view&id="+fileId;  
      sheet.appendRow([nameImage,fileUrl]);
      return ContentService.createTextOutput(JSON.stringify({status: 'Success'})).setMimeType(ContentService.MimeType.JAVASCRIPT);
    }
    

    Karena untuk upload gambar kita menggunakan method POST maka function yang digunakan doPost(e). dari code diatas, file yang telah kita buat akan masuk ke directory di Google Drive sesuai dengan nama yang kita buat. dari contoh atas saya menamakan folder nya :

     var directoryImage = "Tutorial Image";

    Parameter untuk Body-nya yaitu :

     var id = e.parameters.id;
     var nameImage = e.parameter.nameImage;
     var image =  e.parameter.image;
     var sheetSpreadsheet = e.parameter.sheet;

    Sesuai dengan code diatas berarti field body-nya adalah id, nameImage, image, dan sheet.

  2. Setelah kita buat API Upload gambar tersebut sekarang kita masuk ke sisi android nya yang telah saya buat di sini https://github.com/tommyputranto/Upload
  3. Dari code android itu ada beberapa yang teman – teman harus edit yaitu :
    public static final String BASE_URL = "https://script.google.com/macros/s/YOUR_ID_APPS_SCRIPT/";

    yang berada pada CoreApi.java.

    lalu yang diganti sesuai punyamu adalah di MainActivity.java ini :

    private String id = ""; // ID KEY GOOGLE SHEET
    private String sheet = "Sheet1"; // NAME SHEET
  4. Setelah itu build ke android mu dan cek yang berhasil kamu buat 🙂
  5. Jika berhasil maka, gambar yang telah kamu upload akan masuk ke Drive kamu di folder yang kamu buat di Google Apps Script sebelumnya . ini contohnya :
  6. lalu yang di google sheet akan muncul nama gambar dengan url ke gambarnya seperti ini :

Jika masih ada pertanyaan bisa langsung comment dibawah ini dan nantikan tutorial – tutorial menarik lainnya ! 🙂

Happy Coding !

Leave a Reply

Your email address will not be published. Required fields are marked *