Why do some apps with no internet features require internet access? A couple of apps I've installed or considered say they require internet access even though they have no obvious internet features.  One of the most surprising ones was a simple compass app.

Why is this?
Usually apps require internet access for ads, analytical data, or for sending bug reports/stack traces back to the developer.

Other reasons might include using Google's licensing servers to validate legitimate copies of apps with Android market purchases (Google's licensing servers use the CHECK_LICENSE permission).  Similarly, some developers produce their own keys and license servers (prior to Google's implementation).

For instance, I am the developer of a tipping calculator app.  It requires the internet permission to send analytical data back to me via Flurry.  One day I plan to add this remote stack tracing program for more detailed errors (but I haven't yet because so far my app hasn't really generated any bugs/errors).  But the value of this information is worth asking for the internet permission.  I can see exactly how many users of what Android OS are using my app and what are the most popular phones using my app.  However, I also give users an "opt out" in the settings if they choose to not send me this information.