Целта на тази статия е как можем да постигнем база данни в реално време, като преобразуваме данните ви от електронната таблица в json и ги съхраним в базата данни на firebase, за да се покаже в приложението ви за Android.

Това се постига от Google AppScript за съхранение и синхронизиране на вашите данни.

Тази библиотека на AppScript е базирана на Firebase REST API.

Преди да започнете, трябва да създадете приложение във firebase

За създаване на приложение за Android във firebase отидете на



  • Въведете име на проекта и държава/регион, щракнете върху създаване на проект.
  • Въведете името на пакета на вашето приложение и щракнете върху Добавяне на приложение
  • Ще получите един файл, наречен google-services.json,запазете го и го добавете към папката app на вашия проект за Android

Сега вие сте създали вашето Firebase Android приложение на вашата конзола.

За да разрешите разрешение за четене и запис във вашата база данни на Firebase, трябва да зададете Правила. Добавете кода по-долу в раздела Правила на раздела База данни.

{
“rules”: {
“.read”: “true”,
“.write”: “true”
}
}

Сега следвайте стъпките по-долу, за да работите с AppScript

СТЪПКА 1: Добавете данни в ред, формат на колона в електронна таблица на Google

СТЪПКА 2: Създайте скрипт за данни от електронни таблици

СТЪПКА 3: Добавете URL адрес на базата данни на Firebase към App Script

СТЪПКА 4: Добавете бутон в електронната таблица, за да стартирате скрипта на приложението, така че JSON да се съхранява в базата данни на Firebase

Обяснете всяка стъпка с подробности

СТЪПКА 1: Добавете данни в ред, формат на колона в електронна таблица на Google

Отидете на https://docs.google.com и създайте една електронна таблица. Добавете някои записи във формат на ред и колона и я запазете.

СТЪПКА 2 и 3: Създаване на скрипт за данни от електронни таблици и добавяне на URL адрес на база данни на Firebase към скрипт на приложение

След като добавите данни, сега отидете на Инструменти -› Редактор на скриптове

Ще бъдете пренасочени към https://script.google.com

Тук трябва да напишете скрипт, който може да чете данните от електронната таблица. Копирайте кода и го поставете в редактора на скриптове и го запазете.

Тук можете да видите кода на Java скрипт с два метода

  • writeDataToFirebase (): Този метод се използва за запис на вашите данни от електронна таблица в базата данни на firebase като json формат
  • addNewData (): Този метод се извиква от бутона Добавяне в електронната таблица за добавяне на нови записи.

За да добавите бутон в електронната таблица
Отидете на Вмъкване -› чертеж -› Изберете AnyShape
Сега трябва да извикаме скрипта при щракване върху този бутон, така че да създадем една функция в скрипта на приложението. По-долу е функцията, наречена writeDataToFirebase()

Ще присвоите тази функция на бутона, като щракнете с десния бутон върху бутона и изберете „Присвояване на скрипт“

function writeDataToFirebase() {
var firebaseUrl ="https://musicinmymind-3579f.firebaseio.com/";
var secret = "cCDYwQGJVK1Z2sPYW4eCvvVjFjl95duf4RTrCdJ1";
var base = FirebaseApp.getDatabaseByUrl(firebaseUrl, secret);
var mySheet = SpreadsheetApp.openById("1FcJ7oyAd0mrOuq0XsB4TLxMSwJ
              tql0NPkJpF555aBXM");
var dataSheet = mySheet.getSheets()[1];
var lastRow = mySheet.getLastRow();
var lastColumn = mySheet.getLastColumn();
var data = mySheet.getSheetValues(1, 1, lastRow, lastColumn);
var dataToImport = {};
for(var i = 1; i < data.length; i++) {
    dataToImport[i] = {
       no: data[i][0],
       name: data[i][1],
       shortName: data[i][2],
       description: data[i][3],     
    };
 }
 base.setData("MusicInMyMind", dataToImport);
}
function addNewData()
{
  writeDataToFirebase();
}

Подробно описание на горния javascript код

firebaseUrl: Url на вашата база данни на firebase. Ще го намерите на вашата Firebase конзола.

тайна: Това е секретният ключ на базата данни. Ще го намерите на вашата Firebase конзола. Отидете на настройки -> Настройки на проекта -> Акаунт за услуги -> Секрети на база данни.

Ще видите, че е скрито. Кликнете върху бутона Покажи, за да го получите.

mySheet: Сега трябва да получим нашия идентификатор на Google Spreadsheet. Ще го получите от URL адреса на вашата електронна таблица.

https://docs.google.com/spreadsheets/d/‹ВАШИЯ_ID_SPREADSHEET›/edit#gid=0

Поставете идентификатора на вашата електронна таблица като аргумент във функцията openById.

lastRow: Това ще ви върне последния ред от данните в електронната ви таблица.

lastColumn: Това ще върне последната ви колона с данни в електронната ви таблица.

Сега трябва да получим всички записи на електронната таблица, така че да направим граница и да извлечем всички данни.

getSheetsValues: Този метод се използва за получаване на всички записи на електронната таблица.

Има 4 аргумента.

  • startRow : начален номер на ред
  • startColumn: начален номер на колона
  • numRow : Общ брой редове
  • numColumn : Общ брой колони

Тук в електронната таблица записите започват от A1 означава колона и първи ред, така че нашият startRow ще бъде 1, а startColumn ще бъде 1

Сега преобразуваме тези данни от ред и колона в JSON, за да можем да ги изпратим на firebase

Ще видите for цикъл, в който извличаме всички данни от редове и колони и присвояваме всяка стойност на променлива.

Можете да зададете името на вашето поле, както искате да се показва във вашия параметър на json обект на firebase. Тук съм задал име като no, name, shortName, description, така че това ще бъдат параметри на json обект и след това накрая ще съхраня този json обект в масива, наречен dataToImport.

setData: Има два аргумента. Първото е името на основния обект, а второто е масив.

Така че тук основният Json обект ще бъде MusicInMyMind с всички данни от електронни таблици като json масив.

След като направите всичко по-горе, трябва да добавите библиотеката на Firebase към вашия скрипт на приложението, така че всички данни от електронни таблици да се съхраняват в базата данни на firebase с помощта на appscript

  1. В редактора на скриптове щракнете върху Ресурси › Библиотеки
  2. Отваря се изскачащ прозорец. Вмъкнете следния проектен ключ в текстовото поле: MYeP8ZEEt1ylVDxS7uyg9plDOcoke7-2lи щракнете върху бутона Избор до него.
    Референтна връзка:
    https: //sites.google.com/site/scriptsexamples/new-connectors-to-google-services/firebase
  3. Кликнете върху полето, в което са изброени различните версии на библиотеката. Изберете най-новата публична версия.
  4. Задайте режима на разработка от изключен на включен.
  5. Натиснете OK.

Сега, когато щракнете върху бутона Добавяне от вашата електронна таблица, ще видите, че данните се съхраняват в базата данни на Firebase като JSON формат.