The User Agent String for Safari on Android
The following User Agent string is used by the web browser included with the Android operating system:
Mozilla/5.0 (Linux; U; Android 0.5; en-us) AppleWebKit/522+ (KHTML, like Gecko) Safari/419.3
As you can see from the user agent string, the web browser is Safari and the operating system is Linux (as Android itself is based on the Linux operating system).
This is based on the same open source WebKit engine used by Apple on browsers that runs on Mac, Windows, iPhone, and iPod. Following are examples of user agent strings for these Safari browsers:
Mozilla/5.0 (Macintosh; U; Intel Mac OS X; de-de) AppleWebKit/523.10.3 (KHTML, like Gecko) Version/3.0.4 Safari/523.10
Mozilla/5.0 (Windows; U; Windows NT 6.0; en) AppleWebKit/522.13.1 (KHTML, like Gecko) Version/3.0.2 Safari/522.13.1
Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3
Mozilla/5.0 (iPod; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3A100a Safari/419.3
You can see more User Agent strings for various browsers/crawlers/search engines from the following utility:
User Agent Finder
The following figure shows the User Agent Finder from this site in the Android Safari browser.
Figure 1. The Android Safari browser with User Agent string
As shown in the user agent string, this is based on the open source WebKit project. So, WebKit is the engine behind these browsers; the WebKit by itself is not the browser.
The source for the original WebKit source code is available at webkit.org. The source for the WebKit used in Android is available at Google Code:
Android Source on Google Code
At the time of this writing, WebKit 522 in the Android release m5-rc14 (webkit-522-android-m5-rc14.tar.gz) is the latest.
Figure 2. The Android Source from Google Code
The WebKit itself is written in C++ (not Java).
Figure 3. WebKit source from Android