Apps and websites آخر تحديث:
سياسة الخصوصية
هذه السياسة متوفرة بالإنجليزية والسويدية والفارسية. تُعرض النسخة الإنجليزية.
This policy explains how the apps and websites I publish handle personal data. The general terms come first and apply to everything. Each product then has its own tab with the details that apply only to it.
General terms
Scope
This policy applies to the apps and websites published by me, including this website. If a product works differently from what is described here, its own tab below explains how, and that description applies in addition to these general terms.
Controller
I am the data controller for personal data processed through these products. My contact details are at the end of this page.
Data minimisation
I design each product to process only the personal data it needs in order to work. Whether a product collects any data at all depends on the product, and each product's tab states what it does and why.
Consent
Where a product needs to collect personal data from you, I ask for your permission before doing so and explain what the data is used for. You can withdraw that permission at any time, in the product's settings, in your device's settings or by contacting me. Withdrawing consent does not affect processing that took place before you withdrew it. Some features may stop working if they depend on data you no longer allow.
Advertising
Depending on the product, advertising may be shown. Where it is, it is placed so that it does not get in the way of what you are doing, and your rights under this policy and under applicable law are respected. By default I do not use advertising that relies on personal data, such as an advertising identifier or tracking you across apps and websites. The exception is a product whose tab says it does, and then only according to the consent choice you make in that product, which you can change at any time.
Sharing and third parties
I do not sell, rent or give your personal data to anyone. If a product collects personal data, it is used only for you and only to serve you better. The one exception is where the law requires me to disclose it. Products may run on third-party infrastructure such as hosting, app stores or font delivery, and, where a product's tab says so, payment, integrity-check and advertising services. Those services handle the technical data of the request itself, such as your IP address, under their own policies, and the tab of each product names the ones that apply to it. Links that open outside a product are covered by the policies of the sites they lead to.
Retention and security
Personal data is kept only for as long as it is needed for the purpose it was collected for. I take reasonable technical and organisational measures to protect it, but no method of storage or transmission is completely secure.
Your rights
Depending on where you live, and in particular under the EU General Data Protection Regulation (GDPR), you may have the right to access your personal data, have it corrected or deleted, restrict or object to its processing, receive a copy of it in a portable format, and withdraw consent you have given. To use any of these rights, contact me. You also have the right to lodge a complaint with your local data protection authority.
Children
My products have no general age limit. If a product has one, its tab states it. Where the law requires a parent's or guardian's consent before a child's personal data is collected, I ask for that consent. If you believe a child's personal data has been provided without the consent the law requires, contact me and I will delete it.
Acceptable use
You may use my products for lawful purposes and in line with their intended use. You must not copy, resell, redistribute or pass off my apps or their content as your own, bypass any technical protection or licence limit, reverse engineer them except where the law expressly allows it, disrupt how they work, or use them to harm, harass or deceive others or to break the law.
Misuse and piracy
If a product is used in breach of these terms, including through unauthorised copies or distribution, I may restrict or end your access, remove the content concerned, and take the legal steps available to me to stop it and to recover any loss it causes. Nothing here limits the rights the law gives me.
Responsibility for your use
You are responsible for how you use my products and for what you do with the results. If you use a product to cause loss or harm to another person, that responsibility lies with you and not with me. My products are provided as they are, and I do not promise that they are free of errors or always available. To the extent the law allows, I am not liable for indirect or consequential loss arising from their use. This does not limit any liability that cannot be excluded by law, or any rights you have as a consumer.
Changes
I may update this policy, for example when a product is added or changes how it works. The current version is always published on this page together with the date it was last updated. Where a change affects how your personal data is used, I will ask for your consent again if the law requires it.
Contact
Questions, requests and complaints about privacy: [email protected]
Apps
Details that apply to one product only. They add to the general terms above.
The toyfox site at toyfox.app. It presents our apps and is meant to be read, not used as a service.
What I collect
The site has no accounts, comment fields or forms, and it does not use cookies, analytics or advertising. I do not collect personal data through it.
What is stored in your browser
If you switch between the light and dark theme, the site remembers your choice in your browser's local storage so it is still there on your next visit. This stays on your device, is not sent to me, and is not used for tracking. You can remove it at any time by clearing the site data in your browser.
Hosting and fonts
The site is served from a server through Cloudflare. Like any web request, loading a page exposes your IP address and basic browser information to these providers, which may keep it in their logs under their own policies. The fonts are loaded from Google Fonts, so your browser also contacts Google, which handles that request under Google's privacy policy. I do not receive this information.
Contacting me
If you email me, I use your address and message only to reply to you and do not share them.
Android app for engineering measurement and calculation. Package: com.civildesk.app
Permissions and why
The app asks for each permission when the feature that needs it is first used. You can decline, and you can withdraw a permission later in Android's settings. A feature that needs a permission you have not given simply stays unavailable.
- Camera: to take photos for the measurement, AR and annotation tools. Images are processed on your device.
- Photos and media: to save and open pictures you captured with the app.
- Motion sensors (accelerometer, gyroscope): for the level, plumb and slope tools. Readings are used live and are not stored or sent.
- Internet: to load small public files, such as news about other apps or an update notice, from
norollah.com. As with any web request, the host (GitHub Pages) can see your IP address and basic device information. I do not receive that information.
Data stored on your device
Calculation history, saved photos and annotations, and your settings are stored on your device and are not uploaded. You can clear the history and the gallery, or export them, from Settings. Uninstalling the app removes them as well.
Sharing
Export and sharing only happen when you choose them. The file goes to the app you pick in Android's share sheet, and that app's own policy applies from then on.
Results and professional judgment
civilDesk is an aid for measurement and calculation. Its results depend on the values you enter, your device's camera and sensors, and the conditions you measure in, and they can be inaccurate. Check anything that matters, and do not rely on the app alone for structural, safety or legal decisions. Those remain with you and the qualified professionals responsible for the work.
If this changes
If a future version collects any other personal data or adds a third-party service, this tab will be updated first and the app will ask for your consent before collecting anything.
Android app with board and strategy games: Snakes & Ladders, Ludo, Dots & Boxes, Connect Four, Mill, Mirage and Lemon Rush. Package: com.laddergo. This tab covers the app and the game server that belongs to it. Unlike my other products, LadderGo has an account, ads and purchases, so it collects more than the general terms assume, and what it collects is listed here. There is no sign-up: the app sets up an account for your device by itself.
The short version
- There is no sign-up and no login: no email, no password and no Google sign-in.
- Offline games are played entirely on your device. The first time the app is online, it creates an account for your device on my server, so your stars, items and friends are kept.
- The account is tied to your device by a hashed device identifier. A personal account key lets you get it back on a new phone.
- The app shows ads from Google AdMob. Where the law asks for it, you are asked for consent first, and you can change your choice in Settings.
- Purchases go through Google Play. I never see your payment details.
- I do not sell your data. If you are inactive for 6 months, your account is deleted.
Your account
You do not register. When the app first connects, it creates an account for your device and gives it a random playful player name, which you can change. If you are offline at that moment, the app keeps working and finishes the setup later. Rewards from games you played in the meantime wait on your device and are sent afterwards. There is no logout. If you want a fresh start, delete your account and a new one is created.
Stored on your device
Your settings, language, saved games, replays, the items you wear and your How to play progress are stored only on your device. They are not sent to me. Your statistics and achievements are also kept on your device, but they are sent to my server together with the player name you chose, so that players can be ranked against each other. They are not important data in themselves and are kept only for a short time. Clearing the app's data or uninstalling the app removes what is on your device.
What I store on my server
- an account ID, the date it was created and its status (active or suspended);
- a trust status, verified or unverified, from the Play Integrity check described below;
- a hash of your account key, never the key itself;
- the player name, character (avatar) and language you choose;
- your star balance, win count, the items you own and the look you have equipped;
- your statistics and achievements, with your player name, for ranking among players, kept for a short time;
- your friend code, friend list and friend requests;
- a record of the star rewards your games paid (game, difficulty, stars, date), so the same reward is never paid twice;
- a login session per device: a hashed token, its expiry date and a short device label;
- a device record, described below.
I use this to run your account, keep your balance and purchases, and prevent cheating and double rewards. The legal basis is performing the service you asked for and my legitimate interest in keeping the game fair.
Your player name, avatar and star count are visible to your friends and, if your account is verified, to other players on the leaderboard. Player names are content you or the app create, so they are checked: offensive, misleading and reserved names are not accepted. Do not use your real name if you do not want it shown.
Device identifier
To recognise your phone after you reinstall the app, the app reads the Android ID of your device. Android makes this value for each combination of app signing key, user and device, so other apps see a different one. The app never sends it as it is. It first makes a hash on your device, and my server hashes that again with a secret key and stores only the result, so I cannot read your Android ID from what I keep. It is not your advertising ID, and the advertising ID is not used for this.
The device record holds that hash, the date a starting bonus was paid, the latest result of the integrity check, the app version, and the first and last time the device was seen. If you reinstall the app or clear its data on the same phone, your account comes back by itself. A factory reset gives a different value, and so does an install signed with a different key, for example one from outside Google Play. The legal basis is performing the service (restoring your account) and my legitimate interest in preventing abuse.
Account key
The app shows you an account key, a long code. It works like a password: anyone who has it can take over the account, so keep it private. On my server I store only a hash of it. You can use it to get your account back on a new phone or after a reset, to sign out of your other devices, and to delete your account on the web. You can make a new key at any time, which stops the old one working. If you lose your phone, have no backup and have not saved the key, I cannot recover the account for you, including what you bought.
Android backup
If you have backup switched on in Android, Android's Auto Backup may save the app's data from your device to your Google account: settings, statistics, saved games and your account key. It restores them when you set up a new phone. Login tokens are left out of the backup. This is done by Google under its own policy, and you control it in your Android backup settings.
Integrity check
When a device is registered or an account is recovered, the app asks Google Play Integrity for a signed confirmation that the app came from Google Play, is unmodified and runs on a genuine device. The app sends it to my server, which has Google check it. I only use the verdict. The purpose is to stop mass creation of accounts to collect free stars. The legal basis is my legitimate interest in keeping the game fair.
If the check passes, the account is verified: it gets the starting stars, the normal daily reward limit and a place on the leaderboard. If it does not pass (for example an app from outside Google Play, a rooted or modified device, or a phone without Google Play), the account is unverified: no starting stars, a lower daily reward limit and no place on the leaderboard. The games and the shop still work with the stars you have. These limits are a technical safeguard. They do not make use on a rooted or modified device allowed, which is covered under Fair play below.
Friends
You add friends with a friend code that you find in your profile. Accounts have no email address, so there is no search by email.
Ads
This is the one place where my products use advertising that relies on personal data, so it is described in full. The app uses Google AdMob to show ads: a video you can choose to watch for free stars, ads between games or when you return to the app, and small banners at the bottom of some screens such as the menu, shop, leaderboard and friends (never over a game board). AdMob may collect and use your device's advertising ID, IP address and data about how you interact with ads, to show and measure ads, including personalised ads. The legal basis is your consent.
- Where the law requires it (for example in the EU, the UK and Switzerland), the app shows Google's consent form before the first ad. You can say no, and you can change your choice later in Settings → Privacy options. Without consent you may see ads that are not personalised.
- You can also reset or turn off personalised ads in your Android settings (Settings → Privacy → Ads).
- When you start a rewarded ad, the app gives AdMob your account ID and a one-time code. When you finish the ad, Google uses them to tell my server that it was completed, so the right account gets the stars. I do not receive your advertising ID.
- How Google handles data: policies.google.com/technologies/partner-sites
Purchases
Star packs and bundles are bought through Google Play. Google handles the payment, and I never see your card or payment details. My server checks each purchase with Google Play and stores the product, the purchase token, the order ID and what the purchase granted, so that it is granted once and can be restored. I keep purchase records as long as needed for accounting and refunds.
Where the data is kept and for how long
Account data is kept in a database on a server run by me. The connection to it is encrypted. Server logs may hold your IP address for a short time for security and fault-finding. A nightly backup keeps the last 7 copies of the database. Unused sessions and expired ad records are removed automatically every day.
I keep your account data until you delete your account. An account that has not been used for 6 months is deleted.
Deleting your data
You can delete your account at any time in the app, in your profile or in Settings, or on a web page that is linked from the app's Google Play listing, where you prove the account is yours with your account key. You can also write to me, and I may ask for the account key to confirm it is yours. Deleting an account removes your profile, balance, items, friends, sessions, account key hash and reward and purchase records from the live database. Copies in backups disappear when those backups are replaced (at most 7 days). Data stored only on your device is removed by clearing the app's data or uninstalling the app.
One thing stays after deletion: the device record, which is no longer linked to any account. It holds only the device hash and the date a starting bonus was paid, and I keep it so that deleting an account and registering again does not pay the starting stars a second time. The legal basis is my legitimate interest in preventing abuse.
Permissions
- Internet: to reach the account server, ads and Google Play, and to check for a required update. Offline games work without it.
- Network state: to know whether you are online, so the app can hide features that need a connection.
- Advertising ID and ad services: used by Google AdMob as described above, and only according to your consent choice.
- Vibration: touch feedback in the games, if you leave it switched on in Settings.
- Keep awake (wake lock) and foreground service: to keep the screen on during a game and to play game music and sounds. Nothing is recorded.
Reading the Android ID and the integrity check need no extra permission. The app does not use your camera, microphone, contacts, photos or location.
Who receives data
I do not sell, rent or give away your personal data. It is processed on my behalf or by independent providers only as follows: Google (AdMob ads, Google Play Billing and purchase checks, Play Integrity checks and Android backup), under Google's own privacy policy; and the hosting provider that runs the server. The law may also require me to disclose data to authorities. Some of these providers may process data outside your country, including in the United States, under the safeguards the law requires, such as standard contractual clauses.
Your rights
The rights in the general terms apply, and you can use some of them yourself in the app. To use the rest, write to me. Because accounts have no email address, I may ask for your account key before I act on a request, to confirm the account is yours. In Sweden the data protection authority is IMY.
Age limit
The app is meant for people aged 13 and over. It is not directed at younger children, and I do not knowingly collect data from them. If you are a parent and think a child has made an account, write to me and I will delete it.
Fair play
Use the app lawfully and fairly: no cheating, hacking, abuse of the reward system, mass creation of accounts or offensive player names. I may suspend accounts that do. This does not limit your rights as a consumer.
Hacking the app or the server, tampering with or modifying the app, bypassing its technical protections, cheating in any way, and using the app on a rooted or modified device are breaches of these terms. The game is meant to be played fairly. Hacking and bypassing protections can also be offences under the law that applies, for example unauthorised access to computer systems and circumvention of technical protection measures. If you do any of this, I may suspend or delete your account, remove what you gained, report the matter to the authorities and take the legal steps open to me, including claiming compensation for the loss it causes. You are responsible for the consequences under applicable law.