An application which lets you know about the various Hotels and Restaurants in town (Belgaum). It gives you the vast details about the type of restaurant, various cuisines available there along with its proper location mentioning the landmark places nearby to it.
An application which lets you know about the various Hotels and Restaurants in town (Belgaum). It gives you the vast details about the type of restaurant, various cuisines available there along with its proper location mentioning the landmark places nearby to it.
An application which lets you know about the various Hotels and Restaurants in town (Belgaum). It gives you the vast details about the type of restaurant, various cuisines available there along with its proper location mentioning the landmark places nearby to it.
An application which lets you know about the various Hotels and Restaurants in town (Belgaum). It gives you the vast details about the type of restaurant, various cuisines available there along with its proper location mentioning the landmark places nearby to it.
It allows the user to navigate through the various details available on site. Some of its extravagant features are that it provides you with the images of the restaurants selected from the list available on the site. It allows the user with the complete food menu of that particular restaurant or hotel.
It provides the user with overall average expense of 2 persons visiting the restaurant. The user gets the complete idea of the ambience and the atmosphere of the particular selected restaurant by having a glance at the images present on site.
The most amazing feature is that the user can read the reviews of the people who have visited the place by providing a link to the blog page such as twitter and facebook, by which the user can decide whether the selected restaurant is suitable according to its needs. It also provides the contact details of the various hotels and restaurants in town, if the user is interested to reserve a table prior to the time of visit.
Literature Survey Android is a complete operating environment based upon the Linux V2.6 kernel. Initially, the deployment target for Android was the mobile-phone arena, including smart phones and lower- cost flip-phone devices. However, Android's full range of computing services and rich functional support have the potential to extend beyond the mobile-phone market. Android can be useful for other platforms and applications. In this article, get an introduction to the Android platform and learn how to code a basic Android application.
The BlackBerry and iPhone, which have appealing and high-volume mobile platforms, are addressing opposite ends of a spectrum. The BlackBerry is rock-solid for the enterprise business user. For a consumer device, it's hard to compete with the iPhone for ease of use and the "cool factor." Android, a young and yet-unproven platform, has the potential to play at both ends of the mobile-phone spectrum and perhaps even bridge the gulf between work and play.
Today, many network-based or network-capable appliances run a flavor of the Linux kernel. It's a solid platform: cost-effective to deploy and support and readily accepted as a good design approach for deployment. The UI for such devices is often HTML-based and viewable with a PC or Mac browser. But not every appliance needs to be controlled by a general computing device. Consider a conventional appliance, such as a stove, microwave or bread maker. What if your household appliances were controlled by Android and boasted a color touch screen? With an Android UI on the stove-top, the author might even be able to cook something.
A brief history of Android The Android platform is the product of the Open Handset Alliance, a group of organizations collaborating to build a better mobile phone. The group, led by Google, includes mobile operators, device handset manufacturers, component manufacturers, software solution and platform providers, and marketing companies. From a software development standpoint, Android sits smack in the middle of the open source world.
The first Android-capable handset on the market was the G1 device manufactured by HTC and provisioned on T-Mobile. The device became available after almost a year of speculation, where the only software development tools available were some incrementally improving SDK releases. As the G1 release date neared, the Android team released SDK V1.0 and applications began surfacing for the new platform. To spur innovation, Google sponsored two rounds of "Android Developer Challenges," where millions of dollars were given to top contest submissions. A few months after the G1, the Android Market was released, allowing users to browse and download applications directly to their phones. Over about 18 months, a new mobile platform entered the public arena.
The Android platform With Android's breadth of capabilities, it would be easy to confuse it with a desktop operating system. Android is a layered environment built upon a foundation of the Linux kernel, and it includes rich functions. The UI subsystem includes:
Windows, Views, Widgets for displaying common elements such as edit boxes, lists, and drop- down lists Android includes an embeddable browser built upon WebKit, the same open source browser engine powering the iPhone's Mobile Safari browser.
Android boasts a healthy array of connectivity options, including WiFi, Bluetooth, and wireless data over a cellular connection (for example, GPRS, EDGE, and 3G). A popular technique in Android applications is to link to Google Maps to display an address directly within an application. Support for location-based services (such as GPS) and accelerometers is also available in the Android software stack, though not all Android devices are equipped with the required hardware. There is also camera support.
Historically, two areas where mobile applications have struggled to keep pace with their desktop counterparts are graphics/media, and data storage methods. Android addresses the graphics challenge with built-in support for 2-D and 3-D graphics, including the OpenGL library. The data-storage burden is eased because the Android platform includes the popular open source SQLite database. Figure 1 shows a simplified view of the Android software layers.
Figure 1. Android software layers
Application architecture As mentioned, Android runs atop a Linux kernel. Android applications are written in the Java programming language, and they run within a virtual machine (VM). It's important to note that the VM is not a JVM as you might expect, but is the Dalvik Virtual Machine, an open source technology. Each Android application runs within an instance of the Dalvik VM, which in turn resides within a Linux-kernel managed process, as shown below.
Figure 2. Dalvik VM
An Android application consists of one or more of the following classifications:
Activities An application that has a visible UI is implemented with an activity. When a user selects an application from the home screen or application launcher, an activity is started.
Services A service should be used for any application that needs to persist for a long time, such as a network monitor or update-checking application.
Content providers You can think of content providers as a database server. A content provider's job is to manage access to persisted data, such as a SQLite database. If your application is very simple, you might not necessarily create a content provider. If you're building a larger application, or one that makes data available to multiple activities or applications, a content provider is the means of accessing your data.
Broadcast receivers An Android application may be launched to process a element of data or respond to an event, such as the receipt of a text message. An Android application, along with a file called AndroidManifest.xml, is deployed to a device. AndroidManifest.xml contains the necessary configuration information to properly install it to the device. It includes the required class names and types of events the application is able to process, and the required permissions the application needs to run. For example, if an application requires access to the network to download a file, for example this permission must be explicitly stated in the manifest file. Many applications may have this specific permission enabled. Such declarative security helps reduce the likelihood that a rogue application can cause damage on your device.
Required tools The easiest way to start developing Android applications is to download the Android SDK and the Eclipse IDE. Android development can take place on Microsoft Windows, Mac OS X, or Linux.
Coding in the Java language within Eclipse is very intuitive; Eclipse provides a rich Java environment, including context-sensitive help and code suggestion hints. Once your Java code is compiled cleanly, the Android Developer Tools make sure the application is packaged properly, including the AndroidManifest.xml file.
It's possible to develop Android applications without Eclipse and the Android Developer Tools plug-in, but you would need to know your way around the Android SDK. The Android SDK is distributed as a ZIP file that unpacks to a directory on your hard drive. Since there have been several SDK updates, it is recommended that you keep your development environment well organized so you can easily switch between SDK installations. The SDK includes: android.jar Java archive file containing all of the Android SDK classes necessary to build your application.
documention.html and docs directory
The SDK documentation is provided locally and on the Web. It's largely in the form of JavaDocs, making it easy to navigate the many packages in the SDK. The documentation also includes a high-level Development Guide and links to the broader Android community.
Samples directory The samples subdirectory contains full source code for a variety of applications, including ApiDemo, which exercises many APIs. The sample application is a great place to explore when starting Android application development.
Tools directory Contains all of the command-line tools to build Android applications. The most commonly employed and useful tool is the adb utility (Android Debug Bridge).
usb_driver Directory containing the necessary drivers to connect the development environment to an Android-enabled device, such as the G1 or the Android Dev 1 unlocked development phone. These files are only required for developers using the Windows platform.
Software Requirements Android SDK Eclipse ADT Plugin Tomcat Apache Server
Hardware Requirements The Intel Pentium IV processor and above Minimum of 2 GB RAM Minimum hard disk capacity of 10 GB and above Android Cell Phone
Languages
Java for Android Java Servlets Java Server Pages JDBC