Fruit Fizz

PRIVACY POLICY

Privacy Policy

Fruit Fizz is an offline match-3 game. Level progress, stars and settings stay on your phone. Three things can reach the network: optional rewarded videos you open yourself (for extra hints, or for 5 more moves after a level ends without a win), Google's usage analytics and crash reports, which do not include your name, email or phone number, and Google Play Games sign-in (achievements and a total-stars leaderboard), which only happens if you turn it on. This page covers each of them.

On this page
AccountNo in-game account; Google Play Games sign-in is optional
LeaderboardOptional; shows your Play Games nickname and total stars (0–768)
On your phoneStars, current chapter, settings, the level you left halfway
Goes onlineOptional videos for +5 hints or +5 moves after a loss; usage analytics and crash reports; achievements and the leaderboard once you sign in
When analytics startsOff by default; only after the ad consent gate
PermissionsThree we declare — vibrate, network, network state; the rest come from Google's libraries
Third partyGoogle AdMob (video), UMP (consent form), Firebase (analytics, crash reports), Google Play Games (achievements, leaderboard)

Applies to the Android build distributed through Google Play.

01What this covers

This page explains what the game keeps on your device, when anything leaves it, and which fields are involved each time.

It does not describe Google's own services. Anything ad-related is handled by Google under its own policies; the links are in the fifth section below.

02No in-game account

The game has no account system of its own: no sign-up, no phone number, email or nickname required, and all 256 levels are playable without any of that.

Signing in is optional and uses Google Play Games. Only after you tap Sign in yourself and accept Google's terms does the game send your total star count (0–768) and completed achievements to Google Play Games, where your Play Games nickname and total stars appear on a public leaderboard other players can see. Without signing in, none of that happens; the game works the same, just without achievements and the leaderboard.

So on our side there is still no record that could be matched to you: no user table, no backend, no archive anyone could look up by person. Play Games nicknames and scores live with Google.

Analytics is another exception: Google assigns this installation a randomly generated app instance identifier and uses it to group events from the same device. It does not point at who you are, and we hold nothing else that could be matched to it.

03What stays on your phone

The game writes to two places on your device, both inside the app's private directory and invisible to other apps. The first is Android's SharedPreferences; it contains:

  • the best star rating for each level (unlock progress is derived from it);
  • the chapter you are currently in;
  • three switches — sound, haptics, reduced motion;
  • the unfinished level at the moment you left, including the board, moves left, objective progress and the random seed, so "Continue" works next time.

The second is the app's cache directory: ten sound-effect WAV files synthesized at runtime, each named after a checksum of its waveform. They contain no personal information, can be cleared by the system or by you at any time, and are regenerated on the next launch.

None of this crosses the network. It appears in no request and is never synced anywhere we can reach.

04The three things that leave your device

Three parts of this game send anything over the network. The first two do not ask you to sign up first.

The first is advertising, with two optional entries: each level starts with one free hint, and once that is used the hint button offers "watch a video for 5 more hints"; when a level ends without a win, the result screen offers "watch a video for 5 more moves". Neither entry does anything until you tap it: one rewarded video is requested from the ad network, played, and only if you watch it through are the hints or moves granted.

The second is usage analytics and crash reporting, provided by Google Firebase — section 6 below explains both. Analytics starts switched off; its switch is tied to the advertising consent gate. Crash reporting follows Google's default behaviour.

The third is Google Play Games, and it only works after you turn sign-in on yourself: once you are signed in, the game sends your total star count (0–768) and completed achievements to Google Play Games, and your Play Games nickname and total stars appear on a public leaderboard. Nothing is sent for achievements or scores while you are signed out.

You get nothing either way in these cases, and you lose nothing: closing the video early, no ad available, no network, or a load timeout. If you close the video early the entry stays tappable; if no ad is available or loading fails, the entry is hidden and you can still tap Try again.

Everything else stays offline: every move on the board, level selection, settings and save files are handled on the device alone. In aeroplane mode the whole game is playable; the optional video entries simply have nothing to play, and achievements and the leaderboard are unavailable.

05What the ad network receives

Rewarded video is served by Google Mobile Ads (AdMob). The app itself supplies only the ad unit identifier; the rest of the request — including the app version and device or session information — is attached by Google's SDK under its own policies.

Google's SDK attaches device and session information under its own policies — possibly including the advertising identifier, device model, OS version, approximate region derived from IP, and impression and click counts. That part is under Google's control; we neither read it nor keep it.

Our code does not read the advertising identifier, does not build profiles, and does not track you across apps or sites. We do not sell personal data; whether personalised advertising counts as "sharing" under some US state laws is covered in the last section.

Two things you can do yourself: reset or delete the advertising identifier in Android's Ads settings, or simply not tap that entry — skipping the video costs you no gameplay.

06Analytics and crash reporting

This uses two Google Firebase services: Analytics tells us which level players give up on, Crashlytics tells us which build crashed on which device model. They show us what to fix, not who you are.

We log six custom event names ourselves, and their parameters are integers and fixed strings: a level started, a level completed, a level failed, you tapped the video entry, how that video ended, and whether the 5 bonus moves were used. The fields attached are the level number, chapter number, the level's original move budget, moves left, stars earned, and one yes/no flag for whether the attempt resumed an unfinished board. The board itself, the random seed, your save file and your settings are not in the events we log.

In addition, Firebase Analytics automatically records a small set of base events under Google's default behaviour (for example first_open, session_start and user_engagement) and automatic parameters such as app version and OS version. Those are not our custom events and do not include the board or your save file.

The analytics switch is wired to the same gate as ads: users in the EEA and the United Kingdom see Google's consent form — it appears the first time they enter level 2 — and no analytics event is sent before that form has been resolved. The form result does not block the game; whether ads are shown, and whether they are personalised, is determined by the consent result. If the consent result does not permit ad requests, analytics is not switched on either. After you have made a choice, users in the EEA and the UK can reopen Google's consent form under Settings → Ad privacy settings to change or withdraw it; that entry appears only when Google says it must be offered. The form gives us a single yes/no for ad requests and no separate analytics consent, so analytics shares that one result: once withdrawn, the app stops requesting ads, any ad already loaded is not shown, and analytics is switched off at the next check. If you want to withdraw analytics only and keep ads, write to us and we will treat it as a deletion request. Events discarded before the gate opens are dropped rather than queued, so there is simply no history from before it.

Crash reporting works the way Google defaults it and is not controlled by that consent gate: when the game actually crashes, that one crash's stack trace, device model, OS version and app version number are sent. No board, no save file, and nothing is copied onto our side.

Both live on Google's servers, grouped by that random app instance identifier. We cannot see your name, phone number, email or device serial, and there is no way for us to work backwards from it to you.

Those numbers are used to decide which level's difficulty to retune and whether to keep this ad at all. No profiles, no tracking across apps or sites, and no selling of personal data; sharing is covered in the last section.

Play Games sign-in is separate from that consent gate: it is a feature you turn on yourself inside the app, and nothing is submitted for achievements or scores unless you do.

07Permissions the app requests

Only three user permissions are written into the manifest by us. Each one, with its purpose:

  • VIBRATE — one short buzz on long cascades and special detonations; can be switched off in settings.
  • INTERNET — serves the optional rewarded videos above, the analytics and crash reporting in section 6, and the optional Play Games achievements and leaderboard.
  • ACCESS_NETWORK_STATE — declared alongside Google's ads SDK, which uses it to check whether the device is online. Our own code does not read network state, and whether the entry appears depends on whether an ad has loaded.

The finished package declares more than those three. The rest are pulled in automatically at build time by Google's ads, consent-management and Firebase libraries, and our own code does not use them: com.google.android.gms.permission.AD_ID with ACCESS_ADSERVICES_AD_ID, ACCESS_ADSERVICES_ATTRIBUTION and ACCESS_ADSERVICES_TOPICS (ad-services identifier and topics capabilities — we never read them, and Firebase's advertising-identifier collection is explicitly switched off in the manifest), WAKE_LOCK, FOREGROUND_SERVICE, com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE (install-referrer lookup), and DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION, which this app declares for itself because AndroidX uses it to protect broadcast receivers.

No runtime permissions — the kind that prompt you — are requested at all: no location, camera, microphone, contacts, call log, SMS, calendar, and no storage read access.

08What the app never does

No in-game account, no push notifications, no social features, no cloud saves, and no in-app purchases of any kind. The leaderboard is optional: it exists only after you sign in to Google Play Games, and it shows your Play Games nickname and total stars.

Nothing leaves the device except the custom event parameters, Firebase's automatic base events covered in section 6, a crash stack trace, and — once you sign in — the achievements and total stars submitted to Play Games: no board contents, no save file, no settings, and there is nowhere in the game for you to type text in the first place (your Play Games nickname is set on Google's side).

It does not collect a device identifier to recognise you, does not read the list of installed apps and does not touch the clipboard. The app itself does not start business requests in the background; Google's SDKs may finish uploads or refreshes under their own schedules (section 6).

Beyond Google's advertising, consent-management (UMP), Firebase and Play Games libraries, the package contains no third-party networking library — no analytics platform besides the one described, no attribution SDK, no backend of ours.

09Removal

Everything about your play sits on the device. Uninstall the app to clear it, or use "Reset progress" in settings to clear stars, unlocks and the saved chapter while keeping the app.

We run no server and keep no record filed per person, so "look you up", "export mine" and "delete mine" have no object on our side — there is nothing here for us to act on.

Ad, analytics and crash data are held by Google; deletion requests go through Google's channels — see https://policies.google.com/privacy and https://firebase.google.com/support/privacy. You can also write to us and we will forward the request and report back.

Play Games achievements and scores are held by Google too. To clear them, delete this game's play data in Google Play Games or use the channels above; uninstalling the app does not remove them.

After you uninstall, that app instance identifier stops receiving new events, but achievements and scores already in Play Games remain. The history Google keeps expires on its own under the project's retention setting, which we have not extended. The periods are listed in the last section.

10Children

The app is not designed for, or declared as, child-directed; its target audience on Google Play is 13 and over, and there is no age check in the app or any request for your age. The game collects nothing that identifies a person directly: no name, phone number or email, and analytics is grouped only by that random instance identifier from section 6.

Rewarded video and analytics are both served by Google under its policies. If you install this for a child, you can disable personalised ads at the system level. Analytics contains no name, email or phone number and is grouped only by the random instance identifier from section 6. Level content is unaffected.

The leaderboard is optional in the same way: it appears only when signed in to Google Play Games and shows the Play Games nickname and total stars; without signing in, the game never appears on any board.

11Third-party components

  • Google Mobile Ads SDK (com.google.android.gms:play-services-ads, Google LLC) — rewarded video only. Policy: https://policies.google.com/privacy
  • Google User Messaging Platform (com.google.android.ump:user-messaging-platform, Google LLC) — the consent form for ads and data use in the EEA and the UK.
  • Firebase Analytics (com.google.firebase:firebase-analytics, Google LLC) — usage analytics, switched off by default and opened only after the consent gate; advertising-identifier collection is explicitly disabled in the manifest.
  • Firebase Crashlytics (com.google.firebase:firebase-crashlytics, Google LLC) — crash stack reporting.
  • Google Play Games Services (com.google.android.gms:play-services-games-v2, Google LLC) — optional sign-in, 12 achievements and the total-stars leaderboard. Policy: https://policies.google.com/privacy
  • AndroidX, Jetpack Compose and the Kotlin runtime — platform components that collect nothing themselves.

Everything else was written for this project: the board and match rules, special blocks and cascade resolution, level generation and difficulty calibration, all rendering, and the audio synthesis.

Pieces, UI and sounds are all drawn or synthesized in code at runtime; the only image in the package is the launcher icon, with no other image, audio or font assets.

12EEA, UK and US

This section adds the points that EU GDPR, UK GDPR and California law normally expect to see spelled out. Where this version cannot give a definite answer, it says so plainly instead of filling in a guess; the answer is added in the next revision.

  • EU/EEA and UK representative: not yet confirmed. Under Article 27 GDPR and Article 27 UK GDPR, a controller offering services in those regions normally has to appoint a local representative. Whether we have appointed one, who it is, and its address and email are all unconfirmed. Until then, please use the address at the end of this page.
  • What is processed, and why: on-device data is in section 3, advertising in section 5, analytics and crashes in section 6, and optional Play Games sign-in in section 4. We collect no name, email or phone number, and there is no in-game account; Play Games nicknames and scores are processed by Google.
  • Legal basis: not yet confirmed. Advertising and analytics sit behind Google's consent gate, but which of consent, legitimate interests and contract applies to which purpose has not been settled for this version. We do not use "you consented" to cover everything.
  • Retention: the retention period for Firebase Analytics is not yet confirmed; for Crashlytics, not yet confirmed; for AdMob, not yet confirmed. We hold no copy on our side and have not extended any of them. Exact periods are added here once settled.
  • International transfers: ad, analytics and crash data are stored and processed by Google, on servers that may be in the United States or elsewhere. The safeguards for those transfers follow Google's published data processing terms; entry point: https://firebase.google.com/support/privacy
  • Your rights: within the scope of applicable law you may ask what data about you is held, ask for correction or deletion, ask for processing to be restricted, object to processing, ask for portability, and withdraw consent at any time. We hold no server-side copy, so these requests usually go to Google; we forward them and report back.
  • Channel and response time for data subject requests: use the address at the end of this page. Our response time is not yet confirmed and will be stated here once it is. Say which right you are exercising; we will not ask for information beyond what the request needs.
  • Complaints: if you believe our processing of personal data breaks the law where you live, you can complain to your local data protection authority. The operator is based in China, which does not prevent you from going to the authority where you are.
  • Sale and sharing (California CCPA/CPRA): we do not sell personal data, and we do not trade it for money. Personalised advertising is delivered by Google under its own policies; whether that counts as "sharing" (cross-context behavioural advertising) under California law, and how opt-out is configured for US states, are both unconfirmed. What you can do now: delete or reset the advertising identifier in Android's Ads settings; users in the EEA and the UK can also change or withdraw consent under Settings → Ad privacy settings.
  • Age of consent: the target audience on Google Play is 13 and over; the app is not designed for, or declared as, child-directed. There is no age check in the app and we do not ask for age. If your member state sets a higher age for consenting to data processing on one's own, that point is not yet confirmed.

13Changes

If a later version adds a third-party component or a new network behaviour, this page is updated before release and the "last updated" date changes.

This revision (1.5) adds optional Google Play Games sign-in: 12 achievements and total stars (0–768) synced to Play Games, with a public leaderboard showing your Play Games nickname and total stars; sections 2, 4, 8, 9, 10, 11 and 12 have been updated accordingly, and the third-party list in section 11 now includes Play Games Services. It also corrects one statement in section 11: the launcher icon in the package is now a bitmap, so the page no longer claims there are no image assets.

The previous revision (1.4) added section 12: the EU and UK representative, legal basis, retention, data subject rights and complaints, international transfers, the California sale/sharing position, and the age of consent. Facts we cannot yet answer are marked plainly as not confirmed and filled in next time; the exact entry for Ad privacy settings is now named in section 6, along with the fact that analytics and ads share a single consent result.

Earlier versions: 1.3 aligned the page with the build of the time — the synthesized-audio cache, Firebase's automatic base events, and the real purpose of the network-state permission; it also added the current chapter to the on-device save, described the hint ad placement, and added the consent-withdrawal entry in settings. Version 1.1 added section 6: Google Firebase usage analytics and crash reporting.

A material change in what is collected is announced in the app or in the store listing rather than quietly edited into this page.

14Contact

Operator: Beijing Blue Ocean Xinfan Technology Co., Ltd
Privacy and user support: howoo.bluesail@gmail.com

Mention Fruit Fizz in your message. For ad issues, naming the date, the level and what you saw makes it far easier to trace than a general report.

Requests to look up, export or delete analytics or crash data can go to the same address. We hold no server-side copy ourselves, so we forward them to the matching Google channel and tell you what came back.

We will not ask for personal information unrelated to your request in order to answer an ordinary question.

Last updated: October 31, 2026 · 1.5
Effective: October 31, 2026