WMPoserUser posted some interesting stats on what capabilities applications are requesting.  Interesting stuff, but they clearly haven’t published an app, or at least not an ad supported app.

First let me say that I have only published a single app so far, so I’m not some amazing expert.  My app, Chess Tactics, doesn’t actually need any capabilities by itself.  That being said I have quite a few capabilities listed.  Most of these capabilities are required by Microsoft’s ad control, with one additional capability required by MTIKS (a utility I’m using usage and error detail).

Here’s my capabilities list and why I include it and why I think it’s required:

  • Phone Dialer
    • MS Ad Control – so you can dial a phone number direct from an advertisement
  • Networking
    • MS Ad Control – to download ads for display and report any clicks
    • MTIKS – Send data back for reporting
  • Web Browser
    • MS Ad Control – to display the ads
  • User Identity
    • MS Ad Control – to track what the users interests are across apps
    • MTIKS – Track user loyalty across app versions and user device upgrades
  • Media Library
    • MS Ad Control – No idea at all
  • Device Identity
    • MTIKS – To track what devices are using my app in case a particular one become problematic

None of these capabilities indicate an app is trying to do anything nefarious.  I would expect pretty much every app to need these capabilities.  Now if an app wants access to my microphone, it better have a damned good reason.

Between collecting stats, serving ads, and apps that use network service to provide value, I think it’s out of line to say that 95% requesting network services is “larger than necessary”.  In fact, it makes me wonder what the 5% of apps that don’t require network access are.

If you know why the MS ad control needs access to the Media Library please let me know in the comments.