Dokumentacja dla Google Cloud MBS stwierdza, że dostęp do przechowywanych encji może być kontrolowany poprzez prefiksowanie nazwy KindName tego obiektu za pomocą ciągów "[public]" lub "[private] " (lub nic).Zakres dostępu z użyciem nazwy Kodu w Google Cloud/Android Mobile Backend Rozrusznik
https://cloud.google.com/developers/articles/mobile-backend-starter-api-reference#acfce
Jednakże próby włożenia CloudEntities do magazynu danych za pomocą KindNames które zaczynają [publiczną] lub [prywatny] spowoduje wyjątek/błąd, w szczególności, że KindName jest nieprawidłowy.
Jest to przypadek zarówno dla backend systemem otwartym i w trybie zabezpieczone (za pomocą danych logowania Google, aby czerpać z boiska _owner)
np tutaj używam KindName "[public] TestDB", który zawiedzie, natomiast "TestDB" nie wyrzucił żadnego wyjątku.
04-22 19: 57: 54,132: E/Android Runtime (4690) Sposób: com.example.package PID: 4690
04-22 19: 57: 54,132: E/Android Runtime (4690): java.lang.IllegalArgumentException: Nielegalna nazwa rodzaju: [publiczny] TestDB
04-22 19: 57: 54.132: E/AndroidRuntime (4690): na com.google.cloud.backend.core.CloudEntity. (CloudEntity.java:86)
04-22 19: 57: 54,132: E/Android Runtime (4690) w com.example.package.CloudUtil.convertUpdatesToCEList (CloudUtil.java:252)
22/04 19: 57: 54,132: E/Android Runtime (4690) w com.example.package.CloudUtil.checkSync (CloudUtil.java:199)
odpowiedniej części kodu editted/skompresowany za zwięzłość jest:
CloudBackendMessaging cbm=_cloudfrag.getCloudBackend();
List<CloudEntity> entries=new ArrayList<CloudEntity>();
while (...) {
CloudEntity ce=new CloudEntity(_CLOUD_DB_KIND);
ce.put("fieldname", devID);
entries.add(ce);
}
_countActivity.runOnUiThread(new Runnable() {
@Override
public void run() {
cbm.updateAll(entries, handler);
}
});
Gdzie obsługi jest zwrotna i _cloudfrag jest CloudBackendFragment z przykładowego kodu.
Ten sam efekt uzyskuje się przy użyciu zarówno wstawek, jak i aktualizacji, dla pojedynczego lub wielokrotnego, tj. List podmiotów na raz.
Mogę tylko myśleć, że nie rozumiem dokumentacji - ale wydaje się dość jednoznaczne, że KindNames może zaczynać się od [public] [private] etc?