I wrote back to explain that yes – my app is using https. They respond to say that ‘If, after making changes, you think your app is in compliance, please submit your app for another review.’

I clarify that I’m not making any changes – because none are required and resubmit.

25th May: They respond to say

Good news – I see your app, VLC Remote (com.hobbyistsoftware.android.vlcremote_us), was resubmitted earlier and has been approved.

Second Removal

29th May: A Very Similar Message

After review, VLC Remote, … has been removed from Google Play because it violates our personal and sensitive information policy … This app won’t be available to users until you submit a compliant update.

We go through the same dance. I explain that it isn’t violating their policy. It does send the user’s email to my server, but only when explicitly asked to – and over https.

They approve the resubmission.

Seriously – Again???

6th June:

After review, VLC Remote, com.hobbyistsoftware.android.vlcremote_us (Version Code: 47963), has been removed from Google Play because it violates our personal and sensitive information policy

The focus now is on ‘Prior to the collection and transmission, it must prominently highlight how the user data will be used, describe the type of data being collected and have the user provide affirmative consent for such use.’

I’m lost for words here. Supposedly, someone has reviewed the app. And they have looked setup help process. They clicked on ‘yes send me details’ then entered their email address, clicked ‘Send’ and they consider that I haven’t been clear about what is going on.

Incidentally – I had the exact same process with VLC Streamer on 20th March.

And of course my app is off the store – and not making any sales

I’ll build again, submit again and see what happens. This is getting very boring though…

Removed again – despite already being removed, and not having resubmitted yet!

13th June:

After review, VLC Remote, … has been removed from Google Play because it violates our personal and sensitive information policy

Your app is uploading users’ email information to … without posting a privacy policy in both the designated field in the Play Developer Console and from within the Play distributed app itself. Your app must also handle user data securely, … (for example, over HTTPS).

I’m guessing that my ‘this is ridiculous’ email triggered a review.

This time, the primary objection is that the app must have ‘a privacy policy in both the designated field in the Play Developer Console and from within the Play distributed app itself’

Of course – I do.

I know this because on the 29th May, VLC Remote was removed for exactly that reason.
On the 29th of May – it was correct. I did have a privacy policy linked in the store – but it wasn’t within the app itself. This app has been up for years, and I don’t know when the requirement came in to have the privacy policy within the app.

Anyway – after the email of the 29th of May, I sent in an update which added the privacy policy into the app within the settings page. I resubmitted and was approved.

At the time, I thought it was ridiculous that Google would remove the app from the store immediately over a violation like this. They could easily have sent me an email and given me (say) 7 days to put things right.

It was more ridiculous than removing me for the same reason _after_ I have fixed the problem.

btw; In the Apple store, when you submit an app for review, there is a ‘reviewer notes’ field. You can use this to let the reviewer know anything you think is important.

For example you might let them know where the privacy policy was shown (in the settings) – or that you always upload sensitive data over https. Google has nothing like this, and clearly doesn’t keep notes on review decisions / appeals.

I’m going to respond to the latest email with a link to this blog post. We’ll see what happens.

Update 18th June

I submitted yet another appeal. This time with a google doc to explain what was going on.

The response looked like the old rejections – but in the reviewer did helpfully highlight the version number.

It turns out this is an old build uploaded in 2016 which targets users on API level 14. There are 20 active installs.

I disabled all the old versions of the app, resubmitted, and (so far) everything is live.

(Hopefully) Final Thoughts

The Apple review process can be infuriating. Apple have some rules that seem ridiculous to me, and they’re seldom flexible about applying them. However, they communicate clearly – as real people. When there is a minor issue, they’ll ask you to fix it rather than just booting you out of the store. They also seem able to keep notes about previous discussions and if they have resolved one issue – they won’t come back to it again.

By contrast – Google make it seem like you’re dealing with a badly programmed Eliza-Bot.

There is no context in their replies – they just bang out the same template letters with no acknowledgement of any points, requests or comments you have made.

I’m wondering if they are forbidden from sending out personalised emails – and have to resort to highlighting as the only marginally personal communication method available to them.

I never got any acknowledgement that the first four removal reasons were completely without merit. But my app spent weeks out of the store because of them.

The final rejection felt like they were scraping the barrel to justify the removal – and although it was probably true (I haven’t checked) – the particular version was only used by 20 devices, and had been in place since 2016, so they could have either disabled that one version, or approved the app and asked me to do that within (say) 7 days.

This whole process was deeply frustrating – and in the end, no changes have been made to the builds which triggered the first bunch of rejections.

Towards the end of 2014, I added a feature in VLC Remote to auto-save your position in a movie, and restart at the same place if you re-loaded that movie.

Since then, VLC have built the same feature into VLC itself.

It doesn’t make sense for the remote to be battling VLC – so I’ll be removing the ‘save playback positions’ feature from the remote and letting you set your preference in VLC.

This is how to do that:

Windows

0) Open the preferences (Menu/Tools/Preferences)
1) Select ‘All’ in the bottom right ‘Show Settings’ option
2) In the left pane, select ‘Interface / Main interfaces / QT’
3) In the right pane, scroll down until you find ‘Continue playback?’ and select ‘Always’
4) Click ‘Save’ in the bottom right.

Mac OS

0) Open the preferences (Menu/VLC/Preferences)
1) Click ‘Show All’ in the bottom right button (this will show more preferences)
2) In the left pane, select ‘Interface / Main interfaces / macosx’
3) In the right pane, scroll down until you find ‘Continue playback?’ and select ‘Always’
4) Click ‘Save’ in the bottom right.

We have a handful of updates to address some minor problems with Windows 10.

VLC Streamer is now updated to 5.07, and Watchover is now at 1.20.

Windows 10 is now available for public beta – so if you’re using it, do let us know of any other issues or problems you come across. We’d love to have the kinks worked out before the official Windows 10 release.

Like many of my favourite apps – this one springs out of an annoyance that I wanted to fix.

If you have used windows, then you may well have used one of the many right click commands in the finder. Some of these are built in, and some are added by third party apps.

Two that I particularly miss are

‘Make untitled.txt here’

and ‘Open this directory in the terminal’

Mac OS has had the ability to use custom scripts as services – but they’re too far from the right click to be useful (right click, scroll down hover over services, skip right, find the command you need).

Finally – with the advent of Yosemite and finder extensions, Mac OS has an approved way for me to fix this.

Enter the Sandbox…

The app sandbox is designed to make sure that apps you download from the App Store can only interact with a limited selection of files (mostly within your own app sandbox).

The app I wanted to build lets you add, open or update files anywhere in the system.

If you want your app to be in the App Store – then it has to use the sandbox!

There is a (clunky) solution

Right click booster is a developer tool, and I wanted developers to be able to integrate their own scripts.

There is actually a way that Apple lets you do this.

Scripts can be run from the User Script Directory (every app has it’s own user script directory).

This seems like a great solution, but the app isn’t allowed to put scripts in that directory.

In my first submission, the app asks the user to open the directory – thus giving permission to the app to read and write files there. Apple didn’t like that.

In my next submission, I included the scripts in a .dmg file. My app can include the .dmg, open it and let the user drag scripts to the symbolic link to the user scripts file. Apple didn’t like that either.

In my final submission – the app takes you to my website where you can download the default scripts (as a dmg). Open that dmg, and install the scripts yourself.

There were many other issues along the way – but finally, Apple have allowed this solution.

Now you can run scripts with a right click

I use my app all the time!

The ones I use the most are Pod Update, and Update version (this runs ‘avgtool next-version -all’ which bumps the version number for all my targets in an xcode project)

My other favourites are the two I built the app for. ‘Open this directory in the terminal’ and ‘Create untitled.txt’ here.

Of course, other users will have other scripts and other ideas.

If they’re generally applicable, then I’ll add them to the default script list – so please do share them at the forum!

…it does not accurately reflect the source, functionality, capabilities or features of the app

They haven’t given me much more information than this. In fact, they seem to have made it impossible for me to even change things if I can figure out what the problem actually is.

So I’m launching a competition. If you can figure out what I did, and how to get VLC Remote published again, then you win a rubbish windows phone. (Full competition rules at the bottom!)

I’m not really expecting much – so this is probably a farewell rant as Hobbyist Software exits the windows store, with only a little regret.

The background

When Microsoft launched windows phone, I assumed they had enough money and commitment to make the ecosystem work, so I had VLC Remote ported to run on windows phone.

The OS has some great design features, and we tried to make use of them to build a great remote.

Sadly, the store has not delivered in terms of revenue. VLC Remote has earned slightly less than £2000 over it’s lifetime, which makes it a pretty rubbish investment for me.

Nonetheless, I like the app, and while it is live, then I want it to be good. A month or so ago, we kicked off a smallish project to support windows 8.1 and the new larger screen sizes. This was triggered by an invitation by myappfree.it to be their free app for a day.

Updating was unexpectedly painful, and came with minor annoyances and ‘windows-isms’ such as some disappearing core http support which only shows on the device (fortunately, I had bought a new windows 8 device to test on), and requirements like the app tile called SquareTile71x71 which of course has to be 170px by 170px.

Adding the new version to the store seems to delete all saved app information and screenshots requiring an annoying re-uploading of images and text – but all that can be overcome, and I finally pressed submit.

Importantly – when I submitted the new version, I set things so that the new version would not be automatically published. I wanted to wait until myappfree were ready before releasing the new version.

Within 24 hours, the new version was approved.

Congratulations! VLC Remote app has successfully passed certification to be included in the Windows Phone Store.

I wrote to myappfree to tell them I was ready.

Note that at this stage, the new version is still waiting in the wings ready for me to click ‘make it so’. The version in the store is the one that has been there since August 2014.

Unfortunately the day after VLC Remote was approved, I got an email to say that the existing app had been unpublished.

Microsoft has unpublished one or more of the apps registered to your account as they do not comply with Windows Phone and WindowsStore Policy Requirement 10.1. The app metadata does not accurately represent the features, functionality, and capabilities of the app.

Section 10.1 in full:

Your app and its associated metadata must accurately and clearly reflect the source, functionality, and features of your app.

The screenshots, app name, developer name, tile, category and app description, and any other related metadata you provide with your app, should make it easy for a user to understand the functions, features, and any important limitations of your app.

Your app may not use a name or icon similar to that of other apps.

You should not represent your app to be from a company, government body, or other entity if you do not have permission to make that representation.

If your app contains content or features restricted to certain languages, markets or geographies or has other important limitations, they should be clearly described.

If your app declares an association with a given file type or extensibility point, it must provide the functionality that a customer would expect, given that association. For example, if your app declares an association with the .jpg file type, the app should be able to open the image for viewing or editing.

I’m not sure which of these I have broken.

My first version of VLC Remote was released on iOS in 2008.

It is a remote control for VLC, and the description in the store is more or less exactly the same as the description I use on iOS and Android.

The 5 star reviews seem to support the notion that it works.

My first assumption was that this was a stupid error, so I wrote back in perhaps not the most conciliatory of tone.

I am extremely unimpressed.

Why has my app been unpublished?

You say that the metadata is inaccurate, but I can’t see any inaccuracy – and you have given no specific details.

This app has been active and in good standing in the windows phone store for years without issue. The last update was in August last year (although I have a new update which I have not yet chosen to publish).

I lose money on the Windowsstore – I keep my app here because I have already invested the time to build it, and hope that some day Microsoft will make a go of Windows Phone. This kind of treatment doesn’t encourage me to continue investing.

You can call me on [xxx] to put things right and apologise.

Rob Jonson

Needless to say, I didn’t receive the hoped-for apology.

Hello Rob,

Thank you for your reply.

The app was unpublished from the Store because it does not accurately reflect the source, functionality, capabilities or features of the app. Please refer to the related guidelines in this blog.

Best Regards,

Windows Phone and Windows Store Team

I challenge you to figure out from the blog post where my mistake lies.

A final insult

When I log in to the store, I now see the two versions (the current, and pending release), with all key functions hyperlinked to this generic contact page.

As far as I can tell: Even if I can figure out why Microsoft have unpublished my app – there is no way for me to edit it and resubmit!

The competition

So – here is the challenge:

If you can figure out what I need to do to get VLC Remote published again, then email me and let me know.

The winner will win a somewhat rubbish second hand windows phone.

In the spirit of windows rubbish-ness, I will pay for postage only if you are in the UK.

If multiple people figure it out, then I shall capriciously pick a winner based on criteria which I shall not disclose.

Until then, this is Hobbyist Software signing off from Windows Phone.

PS – No Microsoft rant would be complete without referencing the importance of developers to their flagging platform

Update 1 – Sunday 1 Feb 2015

Most of the emails I have had from users suggest that the issue is probably with the name VLC Remote or the icon.

That certainly seems like the best guess.

Of course, if Microsoft were to tell me what the problem is and how to fix it, then that would be best. Moreover:

The app has been live in the Windows Phone store since 2012 – they could have emailed me to request a change rather than simply ‘unpublishing’ the app without warning.

They have not told me what is wrong, or what I would need to change.

There is no way for me to make any changes. The app is locked, and the links where you would normally edit things simply link to the generic contact page.

If Microsoft were to contact me with details, I could let them know my thoughts.

I have been using the name VLC Remote since 2008 across various mobile platforms. It has generated millions of downloads (mostly for the free versions sadly!).

I have been using the name VLC Remote on the Windows Phone platform since 2012 without issue.

The logo incorporates the VLC cone which is itself released under GPL. There is no formal approval process from Videolan, but I did ask some key people before I started using it in 2008. As far as I am aware, there has been no complaint from Videolan (and I’m a moderately active member of the Videolan community)

Hobbyist Software owns the UK trademark for VLC Remote.

The succession of 5* reviews don’t indicate a set of users who feel misled about the apps functionality.

No word from Microsoft, but it is a weekend.

Update 2, Monday 2 Feb, 5pm 2015

One of my emails generated a response:

Thank you for your email. I see that you are inquiring why your app VLC Remote was removed from the Windows Phone Store without being given a clear description of why it has been removed. I understand your concerns and I wanted to inform you that I have proactively began the process to investigate this issue with our policy team. You will receive direct communication from the policy team in regards to the status of your app and what steps you may need to take to get your app back in to the Windows Phone store. Once you have communicated with the policy team you should be able to make changes to your app based on their instructions. I ensure you I will continue to monitor your app and will let you know of any new information until your app is placed back in the Windows Phone Store.

In the meantime, please let me know if you have any additional questions.

The app is still unpublished, and un-editable in my developer account.

Update 3, Tuesday 3 Feb 2015

This morning, I got a very polite email from a program manager at Windows.

VLC Remote is back on the store.

I am a program manager on the Windows Developer Platform team and came across your blog on Reddit.

I had the store team look into what happened and they confirmed that your app has been restored.

I do not have the details of what led to this but will share once I have them. Please let me know if you are still running into issues.

We do care about our developers! Don’t hesitate to contact me if you have any question or concerns!

This gentleman is of course the competition winner, and is now entitled to a second hand blue Nokia 800! I don’t know if he’ll chose to pay the shipping…

The 8.1 update is now ready to go and will go live on the 18th February.

Update 4, Tuesday 24 Feb 2015

I submitted an update on Monday to remove a single line from the app description

VLC Remote is App of The Day on myAppFree, don't miss your daily deals http://get.myappfree.it

This seems to have triggered the same problem again.

App Policies: 10.1 Metadata

Your app and its associated metadata must accurately and clearly reflect the source, functionality, and features of your app.

<snip – list of policies>

Notification/Action Requested:

The app and its associated metadata do not accurately represent its source, functionality, or features. Please refer to the blog post for additional policy guidance: http://blogs.windows.com/windows/b/buildingapps/archive/2014/05/13/enhanced-windows-store-app-discoverability-refreshed-user-experience-and-policy-updates.aspx.

I’ll email back and copy in the chap who helped out last time.

This will be my last update to VLC Remote on Windows Phone, it simply isn’t worth it for me to carry on.

Update 5, Wed 25th Feb 2015

Things are moving much more quickly this time. The chap who helped me last time bounced my email onto somebody else who first offered to try to create an exception, then wrote again instructing me:

I got some help from one of our certification experts. Please prepare your re-submission and include the text below in your ‘Tester Notes’.

“Do not fail for 10.1 – please escalate to <named person>”

(<named person> is going help us get your app approved. )

Unfortunately, unless I’m missing something – there isn’t a tester notes field available when I submit an update.