林泉
Fangyi

Privacy Policy

Effective November 3, 2026 Also published in Chinese. For users of the app in English, this English version applies.

Contents
  1. 1Information that stays on your phone
  2. 2Information uploaded when you use features
  3. 3Information you send us yourself
  4. 4Anonymous usage statistics (off by default)
  5. 5Storage, retention and deletion
  6. 6Third-party services
  7. 7Legal basis and your rights
  8. 8Minors
  9. 9Changes to this policy
  10. 10Contact us

Fangyi (Android package app.linquan.fangyi, “the app”) is run by an independent developer (“we”, “us”). The app has no accounts. We designed its data flows on two rules: collect nothing we can do without, and keep on your phone anything that need not be uploaded. This policy explains what the app actually collects, where it is kept, who it is sent to, and how you can control and delete it.

In short: your constitution, dietary restrictions and location stay only on your phone by default. With your explicit consent, when the app updates this period’s food list, it uploads the minimum data that request needs. That data is used only to work out that list and is not written to the server database. Purchases are checked with Google Play from your phone alone, without going through our server. Once you have set your home, the app also uses its grid coordinates to look up the local qi reading there; that request carries no device ID. Coordinates uploaded to our server are always snapped to a grid of about 55 km, never your precise location.

1. Information that stays on your phone

The following is stored on your device and is not uploaded. It is deleted when you uninstall the app:

  • your answers, question by question, to the constitution questionnaire (called “Constitution self-check” in the app);
  • the precise coordinates of your home (called “Home” in the app) and of where you are now, used for true solar time and the calendar; when place names are looked up, only rounded coordinates are sent (see section 6);
  • the ingredients and recipes you have saved;
  • preferences such as theme, language and calendar conventions, and traces of use such as when your trial began.

Your constitution result, your dietary restriction choices and the place name of your home are also stored on your phone. Which of these are uploaded with your consent, and in what form, is set out in section 2.

2. Information uploaded when you use features

When this period’s foods are updated

The “suited” and “best suited” marks on ingredients and recipes, and the list of foods for this period, are worked out on the server for the current solar term. At each new solar term, or when your constitution, dietary restrictions, home or upload consent changes, the app asks for a new list. Once the trial has ended, if the Complete Edition has not been unlocked, the app still asks for a new list as usual, but uses it only to show, on the page of this period’s foods, each section’s name and how many ingredients and recipes it holds (see section 3 of the User Agreement).

Personal details are uploaded only with your explicit consent, given by tapping “Agree and continue” on first launch, or later by turning on “Upload wellbeing data” in Settings › Data and privacy.

  • if you have agreed to uploads, the request includes the leanings your constitution result shows (at most three, without how marked they are), your dietary restriction choices, the 0.5° grid coordinates of your home, and your device ID;
  • if you have not agreed, the request carries only your device ID, and you receive a general list containing none of your details.

The server returns the list as soon as it is worked out and does not keep the details in the request.

When the local qi reading is looked up

Once you have set your home, the app uses its 0.5° grid coordinates to ask the server for the local qi reading there, shown on the Almanac and Local qi pages. This request contains only the grid coordinates, with no device ID, and does not need your upload consent. The server answers from its tables and does not keep the coordinates of the query; only when a lookup fails does it record those grid coordinates in its error log, so that the fault can be traced. The reading is cached on your phone and, while your home stays the same, is looked up again about every 30 days.

3. Information you send us yourself

  • Feedback and suggestions: the feedback text, any contact details you choose to give, and diagnostic information such as the app version, system version and language. When the app runs into an error, it records on your phone where the error happened (the type of exception and the line of code, nothing you typed or saw, at most ten records). These are sent only if you tick the option on the Feedback and suggestions page to attach recent error records, and are cleared from your phone once sent; otherwise they are never uploaded. When you open Feedback and suggestions from the Local qi page, the text is filled in in advance with your home’s place name (or its grid coordinates if it has no name) and the current reading; you can change or delete them before sending.

This is kept until it has been dealt with. You can ask us to delete it at any time, using the contact details at the end of this policy.

4. Anonymous usage statistics (off by default)

The app uses Firebase Analytics to collect anonymous usage statistics. This is off by default and works only after you turn on “Anonymous usage statistics”:

  • what is recorded: how often the page of this period’s foods and the unlock page are opened, whether you chose to take the constitution self-check on first launch, the state of your trial and unlock (in trial, unlocked or ended), whether you have taken the constitution self-check, whether upload consent is on, how often the home-screen widget and pentad cards are used, whether notifications are allowed, and session and device information that Firebase records automatically (such as device model, system version and app instance ID), along with in-app purchases completed through Google Play (the product, price and currency);
  • statistics events contain no location coordinates, constitution result or dietary restriction choices; your region is inferred by Firebase from where network requests come from;
  • the statistics do not read your device’s advertising ID and are not used for advertising;
  • you can turn them off at any time in Settings › Data and privacy. Doing so also resets the statistics ID on your phone, and statistics collected before then are no longer linked to your device.

5. Storage, retention and deletion

  • Our server is in the United States and hosted by Google Cloud. While data is stored or processed in the United States, it is subject to its laws and may be accessed lawfully by its courts, law enforcement or national security authorities.
  • Details used to work out this period’s foods: the server returns the list as soon as it is worked out; the details are not written to the database or kept in memory.
  • Device registration: the device ID, a hash of the access credential, the platform, the app version, and when the device registered and last connected. Kept until you ask us to delete it.
  • Feedback: kept until dealt with; deleted on request.
  • Server logs: used to trace faults and prevent abuse. They record the device ID, the time of each request and its outcome, and, when a local qi lookup fails, the 0.5° grid coordinates. They do not record whole copies of the details uploaded. Logs are overwritten as they reach their size limit (about 30 MB in total), and older entries are deleted as they are.
  • Data on your phone: deleted when you uninstall the app. If Android system backup is turned on, the app’s data on your phone may be included in the system backup stored in your own Google account, which Google keeps under its own policies; uninstalling the app does not affect that backup, which you can manage or delete in your system settings. The device ID and access credential are not included in system backup; after a restore to a new phone, the app registers as a new device.
  • Database backups: the server database (device registrations and feedback) is backed up once a day on Google Cloud (United States). Backups are deleted automatically after 14 days. Server data you ask us to delete is cleared from the older backups within the 14 days that follow.
  • You can ask us, using the contact details at the end of this policy, to delete all server data linked to your device ID.

6. Third-party services

ServicePurposeData involved
Google Cloud Compute EngineServer hostingAll the data kept on the server listed in section 5, including server logs
Firebase AnalyticsAnonymous usage statistics (off by default)See section 4
OpenStreetMap Nominatim; the system geocoding serviceSearching for places and looking up place namesThe place names you search for. When the app looks up the name of a located position (using your current location to set your home, and showing the name for “Where you are now”), the coordinates are first rounded to about 5 km (0.05°). Normally they are sent only to the system geocoding service (provided by Google on most Android devices); they are sent to Nominatim instead only when you act yourself (tapping search, using your current location, locating again and the like) and the system geocoding service finds nothing
CloudflareWebsite and content delivery; network access to the APIMetadata of the network connection itself (such as your IP address), kept briefly in connection logs as is its practice
Google PlayApp distribution and in-app purchasesPurchases, payment and refunds are handled by Google under its policies; we cannot see your payment information or your Google account. The app checks whether you have made the purchase directly with Google Play from your phone; the purchase token is not sent to our server

The app contains no advertising SDK, does no cross-app tracking, and does not sell or share data with any data broker.

For the personal details listed in section 2 that are uploaded with your consent (constitution result, dietary restriction choices, approximate location), the basis for processing is your express consent. You can withdraw it at any time by turning off “Upload wellbeing data” in Settings › Data and privacy. Withdrawal takes effect at once: the app stops uploading that data, and this period’s foods become a general list containing none of your details. Anonymous usage statistics also rest on your consent (see section 4). For device registration and local qi lookups, the basis is that they are needed to provide the features you ask for.

Wherever you are, you have the right to access your data (the data on your phone is the master copy of all your personal data), to correct it (edit it directly in the app), to delete it (see section 5) and to withdraw consent (the switch in the app takes effect at once). If you are in the European Economic Area, the United Kingdom or another place with a data protection authority, you also have the right to complain to that authority.

8. Minors

The app is meant for adults aged 18 and over. It is not directed at minors, and we do not knowingly collect personal information from minors.

9. Changes to this policy

If this policy changes in substance, we will say so in a notice banner in the app and update the effective date on this page. If a change involves uploading a new kind of data, or using data for a new purpose, we will ask for your consent first; if you do not agree, the features you already have keep working.

10. Contact us

For privacy questions or deletion requests, write to: [email protected]

You do not need to write to withdraw consent: the switches in Settings › Data and privacy take effect at once. When asking us to delete server data, please include your device ID in your email (you can see it in Settings › Data and privacy in the app, and tap it to copy). We use it to find and delete all records linked to your device.