√MagicMath Solver

Chính sách quyền riêng tưPrivacy Policy

Có hiệu lực từ 15/09/2026Effective 15 September 2026

Tóm tắt trong bảy dòng.

  • Ứng dụng không có tài khoản. Chúng tôi không biết tên, email hay số điện thoại của bạn.
  • Ảnh bài tập được gửi lên máy chủ để giải, rồi bị bỏ đi ngay — không lưu, không ghi vào nhật ký.
  • Ảnh, lời giải và sổ tay nằm lại trên máy bạn, không đồng bộ đi đâu.
  • Máy chủ chỉ giữ một mã máy ngẫu nhiên kèm bộ đếm lượt và hạn gói.
  • Bản Android miễn phí có quảng cáo; bản iOS thì không. Bản Android vì thế có đọc mã quảng cáo của máy — xem mục 8.
  • Khi bạn bấm nút báo cáo một lời giải, phần chữ của bài đó được gửi lên và giữ 90 ngày. Ngoài lần bấm ấy ra, máy chủ không giữ bài nào cả.
  • Nút “Xoá hết và bắt đầu lại” trong Cài đặt xoá sạch mọi thứ trên máy.

1. Ai là người xử lý dữ liệu

Ứng dụng MagicMath Solver (mã gói com.mobiluck.magicmath, có trên App Store và Google Play) do CÔNG TY TNHH MOBILUCK (MOBILUCK COMPANY LIMITED, mã số doanh nghiệp 0109111491, trụ sở tại Tầng 9 Tháp C, Toà nhà Hồ Gươm Plaza, số 102 phố Trần Phú, Phường Hà Đông, Thành phố Hà Nội, Việt Nam) phát hành. Đây cũng là bên kiểm soát dữ liệu theo nghĩa của GDPR. Thông tin định danh đầy đủ ở trang Thông tin nhà cung cấp. Mọi câu hỏi về quyền riêng tư xin gửi tới congvt@mobiluck.vn (dự phòng: mobiluckvn@gmail.com).

Trang này nói về cả hai bản. Chỗ nào hai bản khác nhau thì nói rõ là khác — và có ba chỗ như vậy: cách cất mã máy, phần quảng cáo, và cửa hàng bán gói.

2. Chúng tôi không có tài khoản người dùng

Bạn không đăng ký, không đăng nhập, không cần tài khoản nào để dùng phần giải bài. Khi mở ứng dụng lần đầu, máy của bạn tự sinh một dãy ký tự ngẫu nhiên (gọi là mã máy). Đó là toàn bộ danh tính mà hệ thống này biết về bạn.

Mã máy không được tạo ra từ số IMEI, số sê-ri hay bất kỳ đặc điểm nào của thiết bị, nên nó không lần ngược ra được bạn là ai, và cũng không dùng chung với ứng dụng khác.

3. Việc gì xảy ra khi bạn chụp một bài tập

  1. Ứng dụng thu nhỏ ảnh trên máy bạn.
  2. Ảnh đã thu nhỏ, ngôn ngữ bạn chọn và mã máy được gửi tới máy chủ của chúng tôi qua kết nối mã hoá HTTPS.
  3. Máy chủ chuyển tiếp ảnh sang Google Vertex AI (mô hình Gemini) để đọc đề và dựng lời giải. Lượt gọi này đi qua điểm cuối toàn cầu của Vertex AI, nghĩa là Google có thể xử lý nó tại một trung tâm dữ liệu ngoài Singapore. Ảnh chỉ nằm trong bộ nhớ trong lượt gọi ấy: Google không dùng nó để huấn luyện mô hình, và máy chủ của chúng tôi không lưu nó lại.
  4. Lời giải quay về máy bạn. Máy chủ không lưu ảnh, không lưu đề bài, không lưu lời giải, và không ghi chúng vào nhật ký hệ thống.

Theo điều khoản của Google Cloud dành cho Vertex AI, dữ liệu khách hàng gửi qua dịch vụ này không được dùng để huấn luyện mô hình nền.

Phần hỏi đáp hoạt động theo đúng cách trên: câu hỏi của bạn đi qua máy chủ tới mô hình rồi quay về, không đọng lại ở giữa.

Bộ dò chữ trong ảnh chạy ngay trên máy bạn. Khung cắt tự bám vào khối chữ là do ứng dụng tự đọc ảnh tại chỗ; bước đó không gọi mạng.

4. Máy chủ giữ lại đúng những gì

Chỉ năm loại bản ghi dưới đây, tất cả đều đặt khoá bằng mã máy ngẫu nhiên:

Bản ghiChứa gìGiữ bao lâu
Bộ đếm lượtSố bài đã giải trong ngày24 giờ, rồi hệ thống tự xoá
Mốc dùng thửNgày đầu tiên máy này mở ứng dụngKhông hạn — xem giải thích bên dưới
Hạn gói đã muaNgày hết hạn gói thuê baoTrong thời gian gói còn hiệu lực
Nhịp chống lạm dụngDấu thời gian của lượt gọi gần nhất1 giờ
Báo cáo nội dung Chỉ khi bạn bấm nút báo cáo: phần chữ của bài bị báo cáo, lý do bạn chọn, lời bạn tự gõ (nếu có), phiên bản ứng dụng 90 ngày, rồi hệ thống tự xoá

Vì sao mốc dùng thử không có hạn xoá. Sau đợt dùng thử, ứng dụng vẫn cho bạn một bài mỗi ngày, vĩnh viễn. Muốn giữ đúng lời hứa đó thì phải nhớ được máy này đã bắt đầu từ bao giờ. Bản ghi ấy gồm đúng hai thứ: một mã ngẫu nhiên và một ngày.

Vì sao báo cáo nội dung là ngoại lệ duy nhất của câu “máy chủ không giữ bài của bạn”. Nút báo cáo có mặt để bạn nói được rằng một lời giải sai hoặc không phù hợp. Một báo cáo không kèm chính nội dung ấy thì chúng tôi mở ra chỉ thấy một mã và không kiểm được gì — tức là một nút không dẫn tới đâu. Nên bản ghi này chỉ sinh ra khi bạn tự bấm, nó mang phần chữ của bài, không kèm ảnh bạn đã chụp, và nó tự xoá sau 90 ngày. Chính màn hình báo cáo cũng nói lại điều này trước khi bạn bấm Gửi.

Ngoài ra hệ thống giữ một bộ đếm tổng theo ngày cho toàn bộ dịch vụ (dùng cho cầu dao chống quá tải). Bộ đếm này không gắn với máy nào cả và tự xoá sau ba ngày.

5. Dữ liệu ở lại trên máy bạn

Những thứ sau không bao giờ tự rời khỏi thiết bị:

Bản ghi âm không được chép thành chữ và không được gửi đi đâu — micro chỉ ghi ra một tệp nằm trong vùng lưu trữ riêng của ứng dụng.

Đổi lại, đây là lựa chọn có giá: dữ liệu không tự sang máy mới. Muốn mang sổ tay đi thì dùng chức năng xuất tệp trong ứng dụng.

Bạn xoá chúng bất cứ lúc nào bằng Cài đặt → Xoá hết và bắt đầu lại, hoặc bằng cách gỡ ứng dụng.

6. Đo đạc và báo cáo sự cố

Ứng dụng dùng Firebase Analytics và Firebase Crashlytics của Google để biết tính năng nào được dùng và chỗ nào hay hỏng.

Ở Khu vực Kinh tế châu Âu và ở Anh, phần đo đạc hành vi bị tắt hẳn — từ bản 1.0.1 trở đi. Nói rõ số hiệu bản vì nó chưa đúng với mọi người ngay lúc này: bản 1.0 đang có trên App Store vẫn đo ở châu Âu, còn bản 1.0.1 thì chính chúng tôi đã rút khỏi hàng duyệt ngày 16/09/2026 để gộp thêm phần châu Mỹ. Nghĩa là phần tắt đo đạc ở châu Âu sẽ tới cùng bản kế tiếp, chưa phải hôm nay. Chúng tôi viết ra điều đó thay vì chờ duyệt xong mới sửa trang, vì một trang quyền riêng tư nói trước một điều chưa xảy ra thì cũng là nói sai. Từ 1.0.1: tắt sẵn, ngay từ lần mở ứng dụng đầu tiên, và không có hộp thoại nào hiện lên cả. Chúng tôi chọn cách này thay vì dựng một hộp xin đồng ý vì sản phẩm này bán bằng câu “không tài khoản, máy chủ không giữ bài của bạn”, mà một hộp xin theo dõi ở màn hình đầu tiên thì nói ngược lại đúng câu ấy. Ứng dụng nhận biết vùng qua cài đặt vùng của máy; nó không xin quyền vị trí. Máy không khai vùng thì ứng dụng coi như đang ở châu Âu và cũng tắt.

Crashlytics thì vẫn chạy ở mọi nơi, vì báo cáo sập là thứ giữ cho ứng dụng dùng được, và nó không mang danh tính của bạn — mã máy không bao giờ được gửi sang Crashlytics.

Những gì thực sự được gửi: màn hình nào được mở, một lượt giải thành công hay thất bại, có bấm mua gói hay không, báo cáo sập kèm dòng mã gây lỗi, và một mã cài đặt do Firebase sinh cho mỗi lần cài đặt. Danh mục sự kiện là một danh sách đóng, có kiểm thử tự động khoá lại: không sự kiện nào mang theo ảnh, đề bài, lời giải hay câu hỏi của bạn.

7. Mua gói

Chúng tôi không nhìn thấy và không lưu số thẻ, địa chỉ hay tên chủ thẻ. Sau khi bạn mua, cửa hàng trả về một chứng từ đã ký; ứng dụng gửi chứng từ đó lên máy chủ để mở quyền cho mã máy của bạn. Chứng từ chứa mã sản phẩm và ngày hết hạn — không chứa thông tin thanh toán.

8. Quảng cáo — chỉ có ở bản Android

Bản Android miễn phí có quảng cáo. Bản iOS không có quảng cáo dưới bất kỳ hình thức nào. Đây là khác biệt có chủ ý giữa hai bản, không phải phần chưa làm.

Người đã mua gói không thấy quảng cáo ở bất kỳ chỗ nào, và với họ bộ thư viện quảng cáo không được khởi động — nghĩa là không có lượt đọc mã quảng cáo nào cả.

Với người dùng bản Android miễn phí, quảng cáo do Google AdMob phân phối. AdMob đọc mã quảng cáo của máy (Advertising ID) để chọn quảng cáo và đo lượt hiển thị, và mã ấy được chia sẻ với mạng quảng cáo. Đó là dữ liệu duy nhất trong cả hệ thống được chia sẻ ra ngoài theo nghĩa ấy, và chúng tôi khai đúng như vậy ở mục An toàn dữ liệu trên Google Play.

Chính sách quyền riêng tư của Google, áp dụng cho phần quảng cáo và phần đo đạc: policies.google.com/technologies/partner-sites.

9. Trẻ em

Người dùng dự kiến của ứng dụng là học sinh phổ thông. Trên Google Play chúng tôi khai đối tượng từ 13 tuổi trở lên. App Store không có ô khai tương tự: ở đó ứng dụng mang xếp hạng 4+, nghĩa là nội dung không có gì không phù hợp với trẻ nhỏ — chứ không có nghĩa nó nhắm tới trẻ 4 tuổi. Chúng tôi nói rõ chỗ khác nhau này vì trang trước đây viết “khai 13+ trên cả hai gian hàng”, mà với App Store thì câu ấy không đúng. Dù ở gian hàng nào, ứng dụng cũng:

Nếu con bạn dưới 13 tuổi, chúng tôi đề nghị dùng bản iOS — bản đó không có quảng cáo — hoặc mua gói ở bản Android, vì người đã mua gói không thấy quảng cáo ở bất kỳ chỗ nào.

Việc mua gói do phụ huynh kiểm soát được: Hỏi khi mua (Ask to Buy) trong Chia sẻ trong Gia đình của Apple, và Yêu cầu xác thực trong Google Play.

Nếu bạn là phụ huynh và muốn chúng tôi xoá bản ghi gắn với máy của con mình, xin xem mục 11.

10. Chúng tôi chia sẻ dữ liệu với ai

Chúng tôi không bán và không cho thuê dữ liệu. Danh sách đầy đủ những nơi dữ liệu đi tới:

Bên nhậnNhận gìĐể làm gì
Google Cloud — Vertex AIẢnh bài tập, câu hỏiĐọc đề và dựng lời giải
Google Cloud — Firestore, Cloud RunMã máy, bộ đếm lượt, hạn gói, báo cáo nội dungChạy máy chủ, đếm lượt, nhận báo cáo
Google — Firebase Analytics, CrashlyticsSự kiện dùng ứng dụng, báo cáo sậpSửa lỗi và cải thiện sản phẩm
Google AdMob (chỉ bản Android miễn phí)Mã quảng cáo của máyChọn và đo quảng cáo
Apple (bản iOS) · Google Play (bản Android)Giao dịch mua góiThanh toán và quản lý thuê bao

Chúng tôi cũng có thể tiết lộ dữ liệu nếu pháp luật buộc phải làm vậy — nhưng phần lớn thứ người ta hay yêu cầu (nội dung bài tập, lịch sử học) thì chúng tôi không có để mà đưa.

11. Quyền của bạn

Chúng tôi không thể xác minh danh tính bạn theo cách thông thường (vì không có tài khoản), nên mã máy chính là thứ duy nhất chứng minh yêu cầu đến từ đúng thiết bị đó.

12. Nếu bạn ở Hoa Kỳ, Brazil hay Canada

Các mục trên áp dụng cho mọi người dùng. Mục này nói thêm ba điều mà luật ở ba nơi ấy đòi phải nói rõ.

Hoa Kỳ — COPPA. Luật này đòi có sự đồng ý của cha mẹ trước khi thu thập thông tin cá nhân của trẻ dưới 13 tuổi, kể cả định danh bền vững như mã thiết bị dùng cho đo đạc. Ứng dụng không hỏi tên, tuổi, trường lớp hay địa chỉ của ai, và bản iOS không có quảng cáo. Nhưng ở Hoa Kỳ phần đo đạc hành vi (Firebase Analytics) hiện vẫn bật, và ứng dụng chưa hỏi tuổi người dùng — nên chúng tôi chưa thể nói là đã có đồng ý của phụ huynh. Chúng tôi đang làm hai việc để đóng chỗ này: thêm một câu hỏi tuổi lúc mở ứng dụng, và tắt đo đạc cho ai khai dưới 13 — đúng cơ chế đã dùng cho châu Âu. Trong lúc chờ, phụ huynh viết thư tới địa chỉ ở mục 15 là chúng tôi xoá bản ghi gắn với máy của con mình.

Brazil — LGPD. Cơ sở pháp lý của chúng tôi là lợi ích chính đáng cho phần vận hành ứng dụng, và là thực hiện hợp đồng cho phần mua gói. Điều 14 của LGPD đòi sự đồng ý riêng và rõ ràng của cha mẹ đối với dữ liệu trẻ em; chỗ này giống hệt phần COPPA ở trên và cùng chờ một bản sửa. Người ở Brazil có quyền biết, sửa, xoá và mang dữ liệu đi — thực hiện qua mục 11. Đầu mối phụ trách dữ liệu là địa chỉ ở mục 15.

Canada — PIPEDA và Luật 25 của Québec. Chúng tôi không bán và không trao đổi dữ liệu cá nhân, không có quyết định tự động nào ảnh hưởng tới bạn, và không có hồ sơ người dùng nào ở máy chủ để mà hợp nhất. Bản tiếng Pháp của trang này và của ứng dụng đang được làm; tới khi xong, người ở Québec đọc bản tiếng Anh hoặc viết thư cho chúng tôi bằng tiếng Pháp — chúng tôi trả lời bằng tiếng Pháp.

Chúng tôi viết ra cả phần chưa làm xong thay vì chỉ liệt kê tên luật, vì một trang quyền riêng tư kể tên một đạo luật mà không nói mình đứng ở đâu so với nó thì không giúp được ai.

13. Dữ liệu được lưu ở đâu

Máy chủ và cơ sở dữ liệu đặt tại vùng asia-southeast1 (Singapore) của Google Cloud — đây là nơi duy nhất chúng tôi lưu dữ liệu, và dữ liệu được lưu là những thứ liệt kê ở mục 4.

Mô hình thì khác: lượt gọi mô hình đi qua điểm cuối toàn cầu của Google Vertex AI, nên phần xử lý ấy có thể diễn ra ngoài Singapore. Nó là xử lý tức thời — không có gì được lưu lại ở bước này, kể cả ảnh và lời giải. Chúng tôi nói rõ điều này thay vì nói gọn "mọi thứ ở Singapore", vì câu gọn ấy sẽ không còn đúng.

14. Thay đổi chính sách

Khi có thay đổi đáng kể, chúng tôi cập nhật ngày hiệu lực ở đầu trang và ghi rõ điều gì đã đổi.

Bản 15/09/2026 — phần đo đạc hành vi nay tắt hẳn ở Khu vực Kinh tế châu Âu và ở Anh, ngay từ lần mở đầu tiên, và không có hộp xin đồng ý nào (mục 6). Crashlytics giữ nguyên.

Bản 09/09/2026 — sửa lại chỗ nói về nơi mô hình chạy. Bản trước viết rằng máy chủ, cơ sở dữ liệu và mô hình đều ở Singapore. Nay lượt gọi mô hình đi qua điểm cuối toàn cầu của Google Vertex AI, nên phần xử lý ấy có thể diễn ra ngoài Singapore (mục 4 và mục 13). Nơi lưu dữ liệu không đổi: vẫn chỉ Singapore, và vẫn chỉ những thứ liệt kê ở mục 4.

Bản 08/09/2026 — bản này mô tả cả bản Android bên cạnh bản iOS. Ba điều được thêm vào: phần quảng cáo của bản Android (mục 8), bản ghi báo cáo nội dung (mục 4), và cách mã máy được cất trên Android (mục 2). Bản trước, ngày 27/08/2026, chỉ nói về bản iOS.

15. Liên hệ

MOBILUCK COMPANY LIMITED
Email: congvt@mobiluck.vn
Dự phòng: mobiluckvn@gmail.com

The whole thing in seven lines.

  • The app has no accounts. We don't know your name, email or phone number.
  • Photos of problems go to our server to be solved and are thrown away immediately — not stored, not written to logs.
  • Photos, solutions and notebooks stay on your device and sync nowhere.
  • The server keeps only a random device code with a usage counter and a plan expiry date.
  • The free Android app shows ads; the iOS app does not. That is why the Android app reads your device's advertising ID — see section 8.
  • When you tap the report button on a solution, the text of that problem is sent to us and kept for 90 days. Apart from that tap, the server keeps no homework at all.
  • “Erase everything and start over” in Settings wipes everything on the device.

1. Who processes your data

MagicMath Solver (package com.mobiluck.magicmath, on the App Store and Google Play) is published by CÔNG TY TNHH MOBILUCK (MOBILUCK COMPANY LIMITED, company registration number 0109111491, registered at Floor 9, Tower C, Ho Guom Plaza, 102 Tran Phu Street, Ha Dong Ward, Hanoi, Vietnam). This is also the data controller within the meaning of the GDPR. Full provider identification is on the Provider information page. Privacy questions go to congvt@mobiluck.vn (backup: mobiluckvn@gmail.com).

This page covers both versions of the app. Where they differ, it says so — and there are three such places: how the device code is stored, advertising, and the store that sells plans.

2. There are no user accounts

You don't register, don't sign in, and don't need any account to solve problems. The first time you open the app your device generates a random string (we call it the device code). That is the entire identity this system has for you.

The device code is not derived from an IMEI, a serial number or any device characteristic, so it cannot be traced back to you, and no other app shares it.

3. What happens when you photograph a problem

  1. The app shrinks the photo on your device.
  2. The shrunken photo, your chosen language and the device code are sent to our server over HTTPS.
  3. The server forwards the photo to Google Vertex AI (Gemini models) to read the problem and build a solution. This call goes through Vertex AI's global endpoint, which means Google may process it in a data centre outside Singapore. The photo only exists in memory for that call: Google does not use it to train models, and our server does not keep it.
  4. The solution comes back to your device. The server does not store the photo, the problem or the solution, and does not write them to system logs.

Under Google Cloud's terms for Vertex AI, customer data sent through the service is not used to train foundation models.

The question-and-answer feature works the same way: your question passes through the server to the model and back, leaving nothing in between.

Text detection in photos runs on your device. The crop frame snapping to blocks of text is the app reading the image locally; that step makes no network call.

4. Exactly what the server keeps

Only these five kinds of record, all keyed by the random device code:

RecordContainsKept for
Usage counterProblems solved today24 hours, then deleted automatically
Trial startThe first day this device opened the appNo expiry — see below
Plan expiryWhen the subscription runs outWhile the plan is active
Anti-abuse pacingTimestamp of the most recent call1 hour
Content report Only when you tap the report button: the text of the reported problem, the reason you picked, anything you typed, and the app version 90 days, then deleted automatically

Why the trial start has no expiry. After the trial, the app still gives you one problem a day, forever. Keeping that promise means remembering when this device started. That record holds exactly two things: a random code and a date.

Why content reports are the single exception to “the server keeps no homework”. The report button exists so you can tell us a solution is wrong or inappropriate. A report without the content itself would arrive as a bare code with nothing to check — a button that leads nowhere. So this record is created only when you tap it, it carries the text of the problem, it does not include the photo you took, and it deletes itself after 90 days. The report screen says all of this before you press Send.

The system also keeps a service-wide daily counter (for the overload circuit breaker). That counter is not tied to any device and deletes itself after three days.

5. Data that stays on your device

These never leave the device on their own:

Recordings are not transcribed and are not sent anywhere — the microphone only writes a file into the app's private storage.

That choice has a price: your data does not follow you to a new device. To carry your notebook across, use the export feature in the app.

You can erase all of it at any time with Settings → Erase everything and start over, or by uninstalling the app.

6. Analytics and crash reporting

The app uses Google's Firebase Analytics and Firebase Crashlytics to learn which features get used and where things break.

In the European Economic Area and in the United Kingdom, behavioural analytics is switched off entirely — from version 1.0.1 onwards. We name the version because it is not yet true for everyone: version 1.0, the one currently on the App Store, still collects in Europe, and 1.0.1 was withdrawn from the review queue by us on 16 September 2026, to fold in the Americas work. The European analytics switch-off therefore arrives with the next version, not today. We say so rather than waiting for approval before updating this page, because a privacy policy that describes something which has not happened yet is also saying something untrue. From 1.0.1: off from the very first launch, with no dialog shown at all. We chose this over building a consent prompt because this product is sold on the promise of “no account, the server keeps none of your work”, and a tracking-consent box on the first screen contradicts exactly that promise. The app reads your device region setting to tell where it is; it does not ask for location permission. If the device reports no region, the app assumes Europe and switches analytics off too.

Crashlytics keeps running everywhere, because crash reports are what keep the app usable, and they carry no identity of yours — your device code is never sent to Crashlytics.

What is actually sent: which screens were opened, whether a solve succeeded or failed, whether the purchase screen was tapped, crash reports with the failing line of code, and an installation ID that Firebase generates per install. The event catalogue is a closed list, locked down by an automated test: no event carries your photos, problems, solutions or questions.

7. Purchases

We never see or store card numbers, addresses or cardholder names. After you buy, the store returns a signed receipt; the app sends that receipt to our server to unlock the plan for your device code. The receipt contains a product ID and an expiry date — no payment details.

8. Advertising — Android only

The free Android app shows ads. The iOS app contains no advertising of any kind. This is a deliberate difference between the two, not an unfinished port.

People who bought a plan see no ads anywhere, and for them the ads library is never initialised — meaning no advertising ID is read at all.

For users of the free Android app, ads are served by Google AdMob. AdMob reads the device's advertising ID to select ads and measure impressions, and that ID is shared with the ad network. It is the only piece of data in the whole system that is shared in that sense, and we declare it exactly that way in the Google Play Data safety section.

Google's own privacy policy, which covers the advertising and analytics parts: policies.google.com/technologies/partner-sites.

9. Children

The app is meant for school students. On Google Play we declare an audience of 13 and over. The App Store has no equivalent field: there the app carries a 4+ rating, which means the content holds nothing unsuitable for young children — not that it is aimed at four-year-olds. We spell out the difference because this page used to say “13 and over on both stores”, and for the App Store that was not true. On either store, the app:

If your child is under 13, we suggest the iOS version — it has no ads — or a paid plan on Android, since anyone with a plan sees no ads anywhere.

Purchases stay under a parent's control: Ask to Buy in Apple Family Sharing, and Require authentication in Google Play.

If you are a parent and want the record tied to your child's device deleted, see section 11.

10. Who we share data with

We do not sell or rent data. This is the complete list of where data goes:

RecipientReceivesPurpose
Google Cloud — Vertex AIPhotos of problems, questionsReading problems and building solutions
Google Cloud — Firestore, Cloud RunDevice code, usage counters, plan expiry, content reportsRunning the server, counting usage, receiving reports
Google — Firebase Analytics, CrashlyticsUsage events, crash reportsFixing bugs and improving the product
Google AdMob (free Android app only)The device's advertising IDSelecting and measuring ads
Apple (iOS) · Google Play (Android)Purchase transactionsPayment and subscription management

We may also disclose data where the law requires it — but most of what people ask for (homework content, study history) we simply do not have.

11. Your rights

We cannot verify your identity the usual way (there are no accounts), so the device code is the only thing that shows a request comes from that device.

12. If you are in the United States, Brazil or Canada

Everything above applies to everyone. This section adds three things the law in those places asks us to state plainly.

United States — COPPA. The law requires a parent's consent before collecting personal information from a child under 13, including a persistent identifier such as the device id used for analytics. The app never asks for anyone's name, age, school or address, and the iOS version carries no advertising. But in the United States behavioural analytics (Firebase Analytics) is still switched on, and the app does not ask the user's age — so we cannot claim to have a parent's consent. Two changes are underway to close this: an age question at first launch, and analytics switched off for anyone who says they are under 13, using the same mechanism already built for Europe. Until then, a parent who writes to the address in section 15 can have the record tied to their child's device deleted.

Brazil — LGPD. Our legal basis is legitimate interest for running the app, and performance of a contract for purchases. Article 14 requires specific, prominent parental consent for children's data; this is the same gap described under COPPA above and waits on the same fix. People in Brazil may access, correct, delete and port their data through section 11. The contact point responsible for data is the address in section 15.

Canada — PIPEDA and Québec's Law 25. We do not sell or trade personal data, no automated decision affects you, and there is no server-side user profile to combine with anything. A French version of this page and of the app is in progress; until it ships, people in Québec can read the English version or write to us in French — we will answer in French.

We describe the parts that are not finished rather than just listing statute names, because a privacy page that names a law without saying where it stands against that law helps nobody.

13. Where data is stored

Servers and database sit in Google Cloud's asia-southeast1 (Singapore) region. That is the only place we store data, and what we store is the list in section 4.

Models are different: model calls go through Google Vertex AI's global endpoint, so that processing may happen outside Singapore. It is transient processing — nothing is kept at this step, not the photo and not the solution. We spell this out rather than saying "everything is in Singapore", because that shorter sentence would no longer be true.

14. Changes to this policy

When something material changes we update the effective date at the top and say what changed.

15 September 2026 — behavioural analytics is now switched off entirely in the EEA and the UK, from first launch, with no consent dialog (section 6). Crashlytics is unchanged.

9 September 2026 — corrects what we say about where the model runs. The previous version said servers, database and models were all in Singapore. Model calls now go through Google Vertex AI's global endpoint, so that processing may happen outside Singapore (sections 4 and 13). Where data is stored has not changed: still Singapore only, and still only the items listed in section 4.

8 September 2026 — this version describes the Android app alongside the iOS one. Three things were added: advertising in the Android app (section 8), the content report record (section 4), and how the device code is stored on Android (section 2). The previous version, dated 27 August 2026, covered only the iOS app.

15. Contact

MOBILUCK COMPANY LIMITED
Email: congvt@mobiluck.vn
Backup: mobiluckvn@gmail.com