Search code examples
androidgoogle-playapp-id

Allowed Android application IDs (when not controlling a domain)


I was, until now, under the false impression that Android application IDs have to be of the form tld.domain.[...], and hence that you should control a domain to publish an application.

Apparently it is possible to publish applications on Google Play Store without a domain, so I wonder what the App ID would be set to in that case:

  • Can I just "assume" a domain? Could I publish com.google.myapp? com.microsoft.myapp? com.example.myapp? This doesn't seem right because it would make it too easy to "impersonate" established domains. I imagine there would at least be a blacklist in place for some of the "biggest" domains including Google domains, but can everything else really just be "snatched" in terms of App ID?
  • If I can't assume a domain, how should the App ID be constructed instead? Should an "invalid" TLD be used? I see suggestions ranging from using real names to nicknames to email addresses.

This is effectively a follow-up of Do I must own a domain when I publish an android app to Google Play?


Solution

  • Ids are just strings. There's no requirement on them being in any particular format. There's no requirement for them to start with com or similar, and owning XXX does not prevent another app from having XXX.YYY. Using a doman in merely a convention, taken from the convention of Java package names. And it's not required there either. What using it does do is ensure you don't have a name collision, as many people may want the string "calendar", but only you would use "com.mydomain.calendar".

    Play may or may not blacklist certain patterns, but if so it would be an ever changing list and their policies would be out of scope of questions here. But since there's no real way of proving that you own domain XXX, there's no general enforcement.