4 ms·
URL schemes are not the most comprehensive (and likely, in my opinion) way of accomplishing this tracking. Most apps do not have any kind of URL scheme. Here's
by ryanworl 12y ago
URL schemes are not the most comprehensive (and likely, in my opinion) way of accomplishing this tracking. Most apps do not have any kind of URL scheme.
Here's how you do it for any app on the system, with or without a URL scheme:
1. Use sysctl to get the list of active processes.
2. Filter out all system processes
3. Upload to the server for further processing.
Combine this with a silent background refresh push notification, and you can have this run ~3 times per hour without Apple throttling you!
Source: I have shipped an iOS app for a client that does exactly this, although not Twitter.
- sekasi 12y agoQuestion: don't process names usually change between versions of individual apps? Seems a large task to keep all that updated.
- ryanworl 12y agoNot that I've noticed. There is a character limit on the process names, so sometimes the names get truncated, though. This can all be done server side as well if you're just sending up a raw list every time. No need for an app update.
- micheljansen 12y agoQuestion: what made you cooperate in building this for a client and how did you feel about this then vs. in retrospect?
- ryanworl 12y agoThe app I built actually says right in the description what it does: it is parental control software. I don't feel bad about developing it at all. Parents use it to track what their children do with their devices and have to explicitly opt-in to the tracking before it starts.
- micheljansen 12y agoI see, that's quite a different scenario indeed. I think the fact that in this case it is not disclosed up front is where it stings.
- benguild 12y agoYup. This is similar to how App Map works. http://appmap.io http://appmap.io