Работа с базой данных Firebase Cloud Firestore - PullRequest
0 голосов
/ 11 февраля 2019

Я создаю API с использованием Firebase Function & Firebase Cloud Firestore.

Я пытаюсь использовать Firestore для хранения данных о различных пользователях, на основе которых API будет определять результаты.API будет использоваться для обнаружения мошенничества в моем приложении.Для этой же цели я буду использовать несколько идентификаторов, таких как номер IMEI, идентификатор Android, UUID и еще один идентификатор, который будет назначен приложением mu.

Я использую несколько идентификаторов, поскольку пользователь может легко изменить AndroidID на рутированном устройстве.Следовательно, я буду использовать несколько идентификаторов для обнаружения конкретного пользователя.

Но проблема Как я могу использовать Firestore для хранения данных для пользователя, чтобы можно было найти пользователя и использовать его / ее данные в Firestore?чтобы делать прогнозы.

Я хочу добиться следующего:

User(Collection)

|

|-->(IMEI, Android ID, UUID, ID)(Should be searchable using all the IDs)

         |

         |--> (A)Other Data Such As Activity ETC

         |--> (B)Other Data such as Session ETC.

Я знаю, что могу создать коллекцию (например, пользователей) и в дальнейшем использовать документы с любым из идентификаторов пользователей, нокак можно будет создать документ, к которому можно получить доступ, используя любой идентификатор пользователя?Я не хочу создавать несколько документов для одной и той же базы пользователей, поскольку это займет мою квоту хранилища.

Любая помощь будет благодарна.Спасибо!

1 Ответ

0 голосов
/ 11 февраля 2019

Просто добавьте свой различный IDs в (уникальный) документ User (как различные поля), а затем определите различные запросы в зависимости от ID, который вы хотите использовать для запросов.Что-то вроде:

boolean imeiId = false;
boolean androidId = false;
....

//Set the desire ID to true

CollectionReference usersRef = db.collection("users");

Query query = null;
if (imeiId) {
    query = usersRef.whereEqualTo("imei_Id", ".....");
} else if (androidId) {
    query = usersRef.whereEqualTo("android_Id", ".....");
} else if (uuId) {
    ...
} 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...