Saturday, 2 March 2024

Apple Rejected My App as SPAM

  For the past few months I've been working on a Card Game for iOS, called Crazy Brag. The game is popular variation of the card game Brag and is usually called Bastard Brag or Stop The Bus. In my family we call it 3 Lives and we often play it when we sit down to play cards. 




After much polishing and testing I submitted the app to Apple for review, a day later my app is rejected as being spam and I received the following message:


Guideline 4.3(a) - Design


We noticed your app shares a similar binary, metadata, and/or concept as apps submitted to the App Store by other developers, with only minor differences.

Submitting similar or repackaged apps is a form of spam that creates clutter and makes it difficult for users to discover new apps.

Next Steps

Since we do not accept spam apps on the App Store, we encourage you to review your app concept and submit a unique app with distinct content and functionality.

Resources

Some factors that contribute to a spam rejection may include:

- Submitting an app with the same source code or assets as other apps already submitted to the App Store
- Creating and submitting multiple similar apps using a repackaged app template
- Purchasing an app template with problematic code from a third party
- Submitting several similar apps across multiple accounts

Learn more about our requirements to prevent spam in App Store Review Guideline 4.3(a).



So I considered what aspect of the app was similar to other apps. The source code was written from scratch in Swift and I used the SpriteKit framework, so not the same source code as any other app and I certainly did not use any app template. I have not submitted the app to any other accounts and I have not repackaged an existing app.

There are two possibilities, as I see it, that are causing the problem: the assets and/or the game itself. If it's the assets, great I can easily change them, if its the game concept, then the app is doomed unless I radically change the game. So I sent a response, asking the review team for clarity:


Hi,

I wonder if you may be able to provide further clarification about the app rejection such as:
1. Was the app rejected because it is similar to other card games such as poker? The app is based on a card game called Stop the Bus which is a popular card game in England. I do see that the App Store is choked with poker games, but apart from Cribbage I couldn't find any of the traditional family card games that I play.
2. Was the app rejected because of its grahical or audio assets, if so could you tell which assets need changing? 

Hope you can help so I can fix the app.
Regards
Mark Bailey

A day later I received this response from Apple's review team:


Hello,

Thank you for your reply. Just as we would not share information from your Apple Developer Program account with another developer, we do not share the details of apps submitted under other Apple Developer Program accounts.

During our review, we found that this app duplicates the content and functionality of other apps submitted to the App Store, which is considered a form of spam and is not appropriate for the App Store.

Since apps submitted to the App Store should be unique and should not duplicate other apps, we encourage you to create a unique app before resubmitting for review.

We look forward to reviewing your future submissions.

Best regards,

App Review


So in their reply, they state that the app duplicates content and functionality of other apps. Now before I started writing this game I did look on the app store to see if there were any Brag card games apps, I found plenty of poker and solitaire apps, but none of the family cards that I play such as Crash, Trumps, Chase the Lady (Newmarket) and Brag (of any variation). 

So was my app rejected because it is a card game and the app store has plenty of card games already?  My wife suggested that I respond back and explain to Apple that there are many different card games, but alas I fear I may as well talk to a brick wall.

Coincidentally, whilst my app was in review a new card game called Balatro was making waves all over the press. I wonder if I suffered the FlappyBird/Wordle curse - when a new sensation hits lots of developers copy the idea and rapidly submit clones to the app stores?

More depressingly I've realised the App Store (and PlayStore) is now closed to me, I would be mad to spend months writing another game only for it to be rejected as spam. My next project was to be a crossword game based on the 80's TV Show Crosswits, I was going call it CrossBits! Not a chance as there are already crossword apps and plenty of word puzzles.

Mind you though, the review team are happy to allow new word solver apps that blatantly rip off my Anagram Solver app, but hey ho. To be honest I have no problem with this, it's called competition, and it's what keeps me on my toes improving my own apps.

Word Solver+ took 'inspiration'
 from Anagram Solver

So my advice to any budding game developers out there, is don't waste your time learning Swift/SprikeKit, if you are going to write a game use a multi-platform framework such as Unity. If Apple rejects your game, there are plenty of other stores: Steam, Itch.io, Play Store, Amazon Store or your own website.



Friday, 8 December 2023

Privacy Policy

 Privacy policy for Crazy Brag iOS card game app.


The app does not collect any data.

The app does not send any data to MPD Bailey Technology or to a third party

The app contains no advertisements.

The app does not contain any analytics or tracking.


MPD Bailey Technology

December 2023

Saturday, 25 March 2023

New Dictionary Feature

Crossword Solver King iOS update with new built-in dictionary feature to look up word definitions:

Now available on the App Store





 

Thursday, 16 March 2023

Crossword Solver King & Dictionary

 Crossword Solver King now has a built-in dictionary with over 100,000 definitions:



Note if the app cannot find a definition for your word or phrase, the app will search for a definition on the web. This feature will be available in v3.32 Android and v1.09 iOS - coming soon!


Get the app from:

PlayStore: https://play.google.com/store/apps/details?id=com.mpdbailey.cleverdicandroid

App Store: https://apps.apple.com/gb/app/crossword-solver-king/id1503152101

Friday, 9 November 2018

Weight Tracker User Guide

Welcome, this is the user guide for the Android Weight Tracker app. This app allows you to record you daily weight measurements and then see your progress as a chart or report.

Home Screen



The app is designed around the home screen, it is a navigation hub for the apps features. From the home screen you can:
  • Add new daily weight measurements
  • Review and edit your data
  • See a chart showing your weight versus time
  • Statistics about your weight and BMI
  • Change settings like the weight units
  • Share your readings with other devices

New Weight

Here you enter you daily weight measurements that you have taken from a bathroom scales.



The date will automatically be set to today's date, however to change the date press the - button to roll back one day, or + to roll forward one day. Pressing the date itself will pop up a date picker for you to select the date. Note that you can not enter time, the time recorded for the entry will be your device's current time.

The app will automatically set the weight to your last measurement, you can change it by pressing either the + or - buttons, or pressing the weight itself to pop up a text field where you can enter your weight via the keyboard. The + / - will change the weight by either
  • 1/2lb if your weight unit is pounds
  • 0.1kg if your weight unit is kilograms
  • 1lb if your weight unit is stones
When done, press the ADD button and the weight measurement will be recorded and you will be returned to the Home screen. 

If you wish to enter more weight readings, check the Stay on the screen check box.


Edit Readings

Here you can view a list of your readings, you can also delete and edit your readings.


You can share your readings by pressing the share button, top right. The app will export readings to other apps such as Email clients. This is useful if you want to view your data in a spreadsheet. 


Touch a reading and you will be shown a screen similar to the New Reading screen, here you can edit or delete the reading.



Chart

You can view your weight measurements as a chart showing weight vs time.


The chart will show your all your data and fit the axes accordingly. However you can change the time scale via the menu top right, 30 days, 60 days, 90 days, 1 Year or all time. 

The graph will show a red trend line, the trend will depend on the time scale you have chosen. If you are close to your target weight the app will show it as blue horizontal line.

Pressing the share button (top right) will take a screen shot and allow you to share the image via other apps.

Sync


Here you can save and restore your data from your Google Drive, this is useful for synchronising readings between your devices.

Firstly the app will need permission to access your Google Drive, it will pop up a dialog asking you to choose an account. If you do not wish to use this feature, press back several times to get back to the home screen.

If you have allowed the app permission to access your Google Drive folder, the app will search for the latest weight readings in the folder and display the date and time at the top of the screen.  Press REFRESH LATEST button to make the app search again for the latest readings as Google Drive can take several minutes to Sync across your devices.

Press SAVE TO GOOGLE DRIVE to store your readings in the Weight Tracker folder of your Google Drive.

Press RESTORE FROM GOOGLE DRIVE to load the latest the latest readings from the Weight Tracker folder on Google Drive. When loading readings, the app will synchronise them to those stored in the apps database, new readings will be added, same readings will be over written with the readings from Google Drive. 


Example 1

If you store your readings on your phone but wish to view them on your tablet, follow these steps:
  1. On your phone, SAVE TO GOOGLE DRIVE
  2. Wait a few minutes to allow Google Drive to sync
  3. On your tablet, press REFRESH LATEST until you see the latest time stamp
  4. On your tablet press RESTORE FROM GOOGLE DRIVE

Example 2

View your readings in a spreadsheet on your PC

  1. On your phone, SAVE TO GOOGLE DRIVE
  2. On your PC open the Google Drive app (or website)
  3. Wait for the readings to appear in the Weight Tracker folder
Note that Google Drive is a cloud service, so ensure you have WiFi or mobile data enabled to allow Google Drive to communicate to Google's servers.

Report 

 The report screen shows your BMI, statistics and trends.



Trends are calculated using line of best fit and are then used to work out if you are losing or gaining weight. The app will use the trend line to work out when you will reach your Goal weight.

Settings

Here are all the settings you need to configure the app for yourself, side swipe each screen to get to the next.


  • Set your weight units and target weight you are trying to achieve.
  • For BMI calculations you will need to enter your height

Auto Backups


Every seven days the app can save your readings to Google Drive, but first you will need to

  1. Allow the app permission to use your Google Drive, eg go to Sync and choose an account.
  2. On Settings, go to General Settings and check Automatic Backups
If you lose data, you can go to Sync and press RESTORE FROM GOOGLE DRIVE to recover data from your last back up.

Weight Tracker Privacy Policy

Privacy Policy, Terms of Service and Licence for the Android Weight Tracker app

Privacy Policy


The app will store your weight readings in a database stored on your device that only the Weight Tracker app can read and write to. Your settings are also stored on the device and only this app may use them.

The app will not share or transmit your data without your knowledge:

  • The app will allow the user to share data with third party apps using the share functions.
  • You may opt to backup/sync your readings to your Google Drive account
If you use the Sync feature, the app will ask you to log into your Google Account so that the app can access your Google Drive storage area. When saving your files to your Google Drive, the app will store them as in a plain text format in a folder that the app creates (Weight Tracker). When restoring data from your Google Drive, the app will query the drive for all files in the Weight Tracker folder and load the the readings from the latest file.



Google Admob and Firebase


The app uses Google Admob and Firebase analytics to deliver relevant targeted ads to you, to find out more about how Google uses information from this app visit: https://www.google.com/policies/technologies/partner-sites/

Feedback Emails


I may temporarily store any emails you may send to me whilst I deal with any issues raised. Your email address will not be used for any marketing by myself or third parties.

Your email client may store sent or draft messages from yourself and replies from me.

Note that I use Yahoo! email service for my feedback, to find out more about Yahoo, an Oath company, click the link below:
https://policies.oath.com/us/en/oath/privacy/index.html


Terms of Service


By using this application you are bound by Google's Terms of Service

Using this app you agree that MPD Bailey Technology and its agents (Mark Bailey) are not liable for any information shown within the app.

MPD Bailey Technology and its agents (Mark Bailey) take no responsibility for the actions of any users of this app.

This software is provided 'as is' without warranty of any kind, either express or implied, including, but not limited to, the implied warranties of fitness for a purpose, or the warranty of non-infringement. Without limiting the foregoing, MPD Bailey Technology and its agents (Mark Bailey)  make no warranty that:

  • The software will meet your requirements
  • The software will be uninterrupted, timely, secure or error-free
  • The results that may be obtained from the use of the software will be effective, accurate or reliable
  • The quality of the software will meet your expectations
  • Any errors in the software will be corrected.

The app EXPRESSLY DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED. The app makes no warranty that (1) THE APP OR THE CONTENT WILL MEET OR SATISFY YOUR REQUIREMENTS (2) THE APP SHALL HAVE NO RESPONSIBILITY FOR ANY DAMAGE TO YOUR PHONE OR TABLET OR LOSS OF DATA THAT RESULTS FROM YOUR USE OF THE APP OR ITS CONTENT.

Licence


Weight Tracker is licensed under Apache License-2.0:

Copyright 2018 MPD Bailey Technology

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Tuesday, 25 September 2018

Privacy Policy (Food Hygiene Ratings iOS)

Privacy Policy, Terms of Service and Licence for the iOS Food Hygiene Ratings UK app

Privacy Policy


The app does not store any information except for the user settings, however the app uses third party services which may collect data and are detailed below. The app does not send any data to MPD Bailey Technology.

Google Admob


The app uses Google Admob to display banner ads on the results screen and establishment description screen. No other ads are show.

To find out more about how Google uses information from this app visit: https://www.google.com/policies/technologies/partner-sites/

Feedback Emails


I may temporarily store any emails you may send to me whilst I deal with any issues raised. Your email address will not be used for any marketing by myself or third parties.

Your email client may store sent or draft messages from yourself and replies from me.

Note that I use Yahoo! email service for my feedback, to find out more about Yahoo, an Oath company, click the link below:
https://policies.oath.com/us/en/oath/privacy/index.html

Food Standards Agency


This app will display public sector information licensed under the Open Government Licence v3.0.

All Food Hygiene Ratings information is provided by the live data feed from the Food Standards Agency. If you find any issues with the data please contact the relevant local authority. For more information visit https://www.food.gov.uk

Note that no ratings information or business information is stored in the app.

Apple Maps APIs


The app uses the Maps and Geocoding from Apple.

All map data shown is provided by Apple, using the MapKit framework.

When viewing an establishment on the map, the app will use the CoreLocation API to find the exact geo-coordinates.

Note that no Google Place information will appear on the map

Terms of Service


By using this application you are bound by Google's Terms of Service

Using this app you agree that MPD Bailey Technology and its agents (Mark Bailey) are not liable for any information shown within the app.

MPD Bailey Technology and its agents (Mark Bailey) take no responsibility for the actions of any users of this app.

The app EXPRESSLY DISCLAIMS ALL WARRANTIES OF ANY KIND, WHETHER EXPRESS OR IMPLIED. The app makes no warranty that (1) THE APP OR THE CONTENT WILL MEET OR SATISFY YOUR REQUIREMENTS (2) THE APP SHALL HAVE NO RESPONSIBILITY FOR ANY DAMAGE TO YOUR PHONE OR TABLET OR LOSS OF DATA THAT RESULTS FROM YOUR USE OF THE APP OR ITS CONTENT.

Licence


Food Hygiene Ratings UK is licensed under Apache License-2.0:

Copyright 2018 MPD Bailey Technology

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.