magnify
formats

The Success of Android platform in Mobile App Development

Published on April 9, 2012 by in Android

Android OS powered devices are dominating the smart phone and tablet device market and this is proof of the popularity of Android open source platform. The Android platform is getting strong in the mobile application development market, while software development companies are getting much advantage through android application development.

Smart phones work these days as pouch fit PCs as the android app development and its operating system offered by Google is bendy and is based on Linux Kernel. Apps can be simply created for smart phones without having to go through difficult measures and offers a great deal of profits on investment. There are many mobile application development companies which have approach to the front and are offering tremendously profitable and gainful android application development services. The android application development facilitates the business with many options for the making of apps. This is sure to increase the business and create more revenues. Android is an open source. The system of Android market facilitates free use of capital for programming the different app.

Android Versions so far:

Android has been updated many times since its release, these updates were to fix bugs and add new functionalities and facilities. The latest is Ice Cream Sandwich which is just release with some innovative features. One can see that each Android update is names after dessert.

Android 1.5 (Cup Cake)
Android 1.6 (Donut)
Android 2.0/2.1 (Eclair)
Android 2.2 (Froyo)
Android 2.3 (Gingerbread)
Android 3.0 (honeycomb)
Android 4.0 (Ice Cream Sandwich)

Benefits with Android Platform:

Android apps development is lucrative because it is open source.
Android Application developers are permitted to let their imagination untamed on Android SDK for developing original Android apps.

Android app developers have in the recent years, successfully created original app within the Android framework and also build third party mobile app, for Pocket PCs and other gadgets.
Java programming and C/C++ languages are used in Android apps development. Hence android developers find it easy who have skill working in these languages.
Android facilitates fast information gather and correct information.
You can hire android app developer and get your apps created with the professional android developers. But in that case be careful when you choose who you are hiring as average mobile app developer might result in total loss of money time and resources. So always choose experience android app Developer Company.
Testing and quality promise for Android app projects
Utilises its design

Mobile app developers working for the Android platform have an opportunity to publish their mobile solutions in Android Market, an application store launched by Google for mobile developers to distribute their Android-based apps. At the moment there are approximately 200,000 products available for sale in Android Market, which proves that Android platform is at the top of mobile application development market. There are many who are experienced in using Android SDK for gathering their client necessities. Many have even formed 2D and 3D apps with the help of Open GL technology. Some of the general applications consist of:

Games

Business apps

Security apps

Communication apps with location-based service

Utilities

Social Networking Apps

Barcode Scanning systems

Travel apps

Multimedia apps

The future of the Android platform looks bright for Android application developers who love to have access to everything. We can expect to see some interesting innovations both from Google and from the public as Android gains popularity. Every now and again new Android application development teams are showing up, and people are diverting to the Android phones because of its innovative design and capacity for game-changing applications.

Read more here: The Success of Android platform in Mobile App Development

Top SEO Tools

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

New Android 4.0 Ice Cream Sandwich Features That Make Your Phone a Joy to Use

Published on April 9, 2012 by in Android

A complete and harmonious combination of two substances can create a complete and beautiful result. In like manner, the natural sweetness of Android 3.x Honeycomb and the crispy layers of Android 2.3 Gingerbread have resulted in a new, tastier treat for Android smartphones and Android tablets–Android 4.0 Ice Cream Sandwich.

Google has been aiming to unite the multiple Android versions into just one version so that one and only one Android runs on whatever device–be it an Android smartphone, Android tablet, Android portable media player, Android TV, Android watch, or wherever else the little green robot can make waves.

What glad tidings does Android 4.0 Ice Cream Sandwich (ICS) bring to its users? What better experiences can we expect from it? Read on to know more about how Android 4.0 Ice Cream Sandwich is being true to Google’s description of it: “the best Android we’ve ever made yet.”

Multi-tasking Button

Android 4.0 includes a virtual button that allows you to browse and instantly switch to apps you recently used. The list displays thumbnail images of apps–instead of just icons–so you can see which part of the apps are currently working in the background.

And, if you want to throw away or discard an item on the list, simply flick the thumbnail in order to remove it from the list.

Instant Screenshots with Button Press

There are many instances in which you’d like to share to others what is currently displayed on your screen. There are also times when you just need to save a screenshot for later use. In previous versions of Android, you could take screenshots by installing apps for that purpose. In Android 4.0, it’s a built-in feature.

By holding the Power and Volume Down buttons together, your Android smartphone lets you capture screen images instantly.

Improved Notification Bar

There are several improvements that Google has done to the Notification Bar in Android 4.0. For instance, it can now be pulled down from the Lock Screen. Another is that you can discard items from the list of notifications by simply flicking an item to the right. This means that you can remove items on the Notification Bar one by one.

In previous versions of Android, it’s either you clear all notifications with one tap or you leave all of them untouched.

The Notification Bar no longer shows a grid layout of recently used apps. Instead, in Ice Cream Sandwich, those apps are shown as a vertical-scrolling strip of app thumbnails. You can also directly control music playback right on the Notification Bar.

Improved Text and Voice Input

The stock keyboard in Android 4.0 has been given more love. It is now faster and more responsive compared to previous versions of Android. The suggestion strip is more accurate now and also includes an in-line spell checker. With one tap, you can select suggested words or add new words to the dictionary.

Copy-and-paste functionality has also been made easier. Just tap and hold down on the selected word, and drag the handles to highlight the selected words. Then you can select “Copy and Paste” from the popup menu, or simply drag the highlighted chunk of text to wherever you wish to insert it.

Google has also incorporated voice-to-text input in Ice Cream Sandwich. Just speak, and the phone converts your spoken words into text. It’s a great way to easily and effortlessly “type” text. With Ice Cream Sandwich, voice input is more accurate and can also translate expressions into symbols.

It also accounts for pauses, so you donu2019t have to press anything while thinking of an appropriate response.

Face Unlock

Say goodbye to passwords, PIN codes, and patterns. Android 4.0 Ice Cream Sandwich has personalized phone unlocking much further. With the new Face Unlock feature, an Android smartphone or tablet can now recognize the face of its owner.

Just by focusing your face clearly on the secondary front-facing camera of your device, you can unlock your phone instantly. No typing needed. No need to remember passwords. Just look into the camera and let the device recognize you.

Data Usage Monitoring

Android 4.0 Ice Cream Sandwich also includes a new graphical display of the data your Android phone is using. You can set warnings for exceeding data usage limits, as well as set how much background data each app can use. Users can have more control over their Android device with this neat option in ICS.

Android 4.0 also comes with improved apps, which can be categorized into three: the core apps (i.e., Google mobile apps such as Android Browser, Gmail, and Calendar), Photos, and People.

Android Beam

Support for Near Field Communication (NFC) is baked into Android 4.0, and Google has made sure that Ice Cream Sandwich has a ready app to leverage the technology.

Called Android Beam, the app revolutionizes the way that people share files and data among one another. With NFC and Android Beam, one can send a file to another user simply by bringing two Android phones close to each other and tapping the phones against each other. Any file can be shared in this manner–photos, documents, maps, apps, bookmarks, and so on.

Android 4.0 Ice Cream Sandwich surely packs a fresh new look and exciting new features that will truly make your device perform better as a smartphone. With Android 4.0 Ice Cream Sandwich soon replacing the older versions of Android on recent Android smartphones, these new features will eventually start a new wave of more convenient and more efficient use of Android smartphones and Android tablets.

View post: New Android 4.0 Ice Cream Sandwich Features That Make Your Phone a Joy to Use

Clean My PC

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

How does an iPhone web development company benefits your business?

Published on April 9, 2012 by in iPhone

 

Previously, the most essential thing in a business man’s life was having a website of his own. However, the scenario has changed on a wider scale. You may say that the change has come with a flash of rays in the world of Internet. Now the most required element of a website is the compatibility with iPhone. This smartphone has entirely changed the demographics of web requirements by providing the latest application development to the business. This has actually made life more easier in terms of business. You can say that with time iPhone web development has become almost ineluctable.

Say you are having an e-commerce store or a website, iPhone web development is must for your site. You, being an online entrepreneur, it is necessary to understand the latest web development in terms of your business thereby taking to a height of success. We all know that web business owners use their individual websites for various business projections and promotions. Their high success rates in this web development field have resulted in several ingenious advancements. If you are an iPhone lover and want to see your business grow higher then why not try your luck by taking help from iPhone website development company. May be this is the ideal time for you to plunge into such iPhone apps development business. As it is just a beginning for you, it will always be wise enough to appoint a web development company to guide you with latest iPhone applications. If you are looking for great iPhone apps developed in an affordable way then look for the best offshore iPhone web application development company.

It is true that technology has walked a long way in offering us the supreme freedom to experience the most sophisticated and unique gadgets. No wonder one such gadget that really made paths exciting and easy is none but the iPhone itself. With time iPhone has made a new way to the mobile industry with its innovative features and technologies. It has dynamic features in it like Hd video recording and editing, multitasking, high resolution, impressive video calling, accelerometer, iBooks, iTunes, GPS navgation, App store, multi-touch screen, integrated online browser, virtual keyboard, wi-fi connectivity and so on. There are several tremendous features that make iPhone stand out from others in the mobile industry. With this there has been a high demand in iphone web developers due to large use of applications and new series as well. In fact there are many creative and skilled developers in the market to create dynamic applications for this unique device. Make sure you hire iPhone web developerfrom a renowned company to avail the best services. The developer should have an extensive knowledge about all the latest iPhone applications and software.

The developers of iPhone aims at making things easier and comfortable for every single users. To use this hi-tech smartphone one truly needs a good helping hand. Its quite obvious that a novice will not be informed about the latest applications and inbuilt features and thus needs a proper guidance to handle it. There has been an increasing demand for these iphone developers in the industry. Almost every business organizations are looking for professional from a good iphone development company who can create magic for them. No wonder, the cool and latest iPhone applications would have not been possible without the presence of these excellent iphone developers.

Go here to see the original: How does an iPhone web development company benefits your business?

Article Spinner

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Android apps

Published on April 9, 2012 by in Android

Which Are The Best Free Android Apps?
Android apps are applications developed for Android OS based devices to extend the functionality of the devices. There is large number of android apps available in the android market. Let us identify some of the best free android apps that can be installed on your android mobile or tablet.
Google Maps: Google Maps is an application you will find useful while travelling. With its navigation feature, it shows your current location on the map, making it easy for you to reach the destination. It has lot more features like directions, which shows the route map from source to destination, distance and time required. ‘Places’ feature allows you to find nearby places like restaurants, gas stations, ATM etc. 3D Maps, Traffic, Street View are some more advanced features which you might find useful, but they may or may not be available for you yet, based on your country or location. Overall Google Maps is a good android app that you must have on your android phone.
Opera Mini web browser: Opera web browser for android is a fast, reliable browser. It uses Opera’s servers to compress web pages so that they load faster. Since the data transferred is also less compared to other browsers, you can save on your data usage charges also. It is a popular, widely used browser on the android mobiles and this app is downloaded more than 10million times from the android market.
Dictionary.com App: This app makes it easy to reference a word and get the details from the dictionary.com website. It also has voice search, audio pronunciation and popular word of the day features. This one is a handy tool for anyone who wants to refer dictionary & thesaurus to get the meaning, synonym, antonym of word anytime you wish.
IMDB Movies App: IMDB is the world’s largest database of Hollywood movie and TV shows. This android app makes it easy to access all these content on your android phone easily. You can find movie show times, view trailers, search movies, get TV listing, rate movies and sign in using your IMDB account. IMDB is one of the free android apps for daily entertainment.
Color note App this one is a simple to-do list management, notes management app. It is simple and easy to use. You can save different notes in different colors. It also has features like reminder and pin to status bar. Color note is a cool & best android app that you must install on your android phone.
A.O.R (A Online Radio)A.O.R is one of the best free android apps for listening to online radios. It plays MP3/M3U/P.L.S/A.A.C/A.A.C.P channels, shout cast/ice cast. You can search channels, manually add a radio channel, create favorite list, view recently played channels list etc. The streaming is very good and the interface also is nice. This is a must have android app for your phone to listen to music from various genre available from free online radios.

Interested in finding more apps for your android phone? Visit Best Free Android Apps site.
http://best-free-android-apps.com

Free Android Apps
The best part of owning a android mobile is there are large number of free android apps available for your mobile. There are cool and geeky apps that are free and quick to install. Many independent developers have contributed thousands of free apps to the android market. We will go through some of the popular free android apps that you can download.
Picsey Photo Editor
Add fun to the photos you have clicked on your phone. This app allows you to add word balloons, titles, graphics like hair, cap and effects like spotlight, distort etc. It has a easy to use interface. Use the simple tools and use your imagination to create coo, funny photos of your friends within minutes and share it with others or post on social networking sites!
Expense Manager
Expense Manager is a great app for managing your expenses and income. It allows to track income/expense by week, month and yearly. Expense categories are supported. Recurring payments & alerts, multiple accounts, chart, import/export features are available.
Mobo Task Killer v2
This apps helps in managing the running apps on your mobile. When you have an app running and go back to home screen, the app continues to run in the background. This way too many apps may be running on your mobile, making to slower and consuming more battery. Killing unwanted processing will release memory and cpu usage, making your phone run smoother and faster. This apps has features like Shake phone to optimize, auto optimize, Memory meter, task widget, task manager, ignore list etc. This one is a must have app for android devices.

King Kong Lock
Because your android phone looks cool everyone want to see it! But you have some private data, you don’t want others to see. King Kong Lock helps you in protecting privacy. With King Kong lock you can lock apps, photos, files with password. First test the functionality once on your phone before trying to encrypt folders etc. Due to large number of android devices there are possibilities that some app may not work as expected on a particle mobile model. An application lock is essential in preventing some apps or your messages or files being accessible to everyone who is using your phone, like your children at home or spouse!
MP3 Music Download – V7 NO ADS
Search and download your favorite songs for free. Play music, set as ringtone etc. This app also supports multi-threaded downloaded making it easy to download multiple music files at a time. MP3 Music Download – V7 No Ads app is very good and you can quickly search and download the music you want any time. It’s ability to search very large number of music titles and easy interface makes it one of the must have free android apps for music lovers.
Tiny Flashlight + LED
Now you don’t need a torch, use your phone as torch. This simple app is very useful. It uses your phone camera flash light to emit bright light which you can use as torch. Also has other features like warning light, police light, color light, strobe light etc.

Interested in finding more free apps? Check Best Free Android Apps.
http://best-free-android-apps.com/

Android Apps: Best of 2011
Android apps download is increasing at a rapid rate and around 10 billion apps are downloads per month! Among the downloads Games contribute 25.6%, Entertainment apps 12.2%, Tools 11.17%, Communication apps 6.45%, Productivity apps 4.67%, followed by personalization apps, music and audio, social apps, media & video apps. Let us have a look at the Best Android apps of the year 2011.

Fruit Ninja (Game)
Type: Paid

The Worldwide smash hit game Fruit Ninja is now available on Android! Fruit Ninja is a juicy action game with squishy and satisfying fruit carnage! Become the ultimate bringer of sweet, tasty destruction with every slash.
Swipe up across the screen to deliciously slash fruit like a true ninja warrior. With three games modes in single player and worldwide leader-boards using Open-feint, the addictive game play will keep you coming back for even higher scores.
Fruit Ninja features three packed game play modes – Classic, Zen and the new Arcade, featuring power ups including Freeze, Frenzy and Double Score! The bonus Dojo section includes unlockable blades and backgrounds, and you can also unlock achievements and post scores to the online leader-boards with Open-feint.

Can Knockdown 2 (Game)
Type: Paid

Millions of players can’t be wrong! The most addicting title of 2010 strikes back with new astonishing levels and even more precise sniper action! Once again your aiming skills will be put to test but this time more challenges await! Can Knockdown 2 is the ultimate sequel you’ve been wishing for – 3 amazing and rewarding game modes which will keep you playing all night long, high-resolution eye-catching gorgeous 3D graphics, full Open Feint support, true to life physics, realistic sounds and so much more!
Fight against your own weaknesses while aiming and throwing balls at piles of cans in the improved and polished all time classic Can Knockdown! Prove your accuracy by destroying popping-up moving targets and fight against time in the new “hit-the-target” mode! Show off your skills and impress your friends while collecting bonuses and knocking down cans moving on a conveyor! Can Knockdown 2 is like three top-notch games in one – it will keep you, your family and friends hooked for months to come! Get this new iDreams title now and lose yourself in a world of addictive gameplay, amazing physics and global competition! Definitely a must have in your games collection!

Apparatus (Puzzle)
Type: Paid

Build a complex machine to perform a simple task. Apparatus is a game about setting up simple mechanical structures to move one or several marbles to the goal.

Racing Moto (Game)
Type: Free

Fast paced racing game! You never dare drive so fast in the real world! Racing Moto is a fast paced racing game. You never dare drive so fast in the real world! Control your moto with incredible fast speed during traffic rush time! Also enjoy beautiful view during the journey – desert, city, bridge, sea and forest!

Paper Toss (Game)
Type: Free

The hit game has finally arrived for Android! Have you ever been bored at work, crumpled up a piece of paper and counted how many times you can make it in a small trash can? Has your boss ever gone out for a quick bite while you and your co-workers see how far you can move the trash can away and still make the paper shot? Have you ever brought in electric fans to make the shot even harder? Back flip Studios is happy to announce that we have brought this amazing and hilarious experience to Android.
This game is oddly satisfying . . . much like tossing a real ball of crumpled paper into a metal trash basket. So realistic, you will think you are stuck in an office killing time.
Amaze, share and compare your scores with friends and others on the online global scoreboard.

Guitar : Solo Lite
Type: Free

Get Solo, Android’s most popular phone guitar and start jamming wherever you are. Solo is Android’s most popular virtual guitar. Use it to play to your favourite songs, or create some of your own…It’s ideal for jamming sessions when you don’t have your guitar with you, or an excellent reference for when you do!

Photo Warp
Type: Free

This app will melt your face! Just take a picture then warp, bend and distort it to your heart’s content. Make yourself skinnier, buff yourself up or enlarge any body parts that might need some enlargement ;) Or go crazy and have fun putting several pounds of fat on your friends or giving them the biggest cheese-eating grin you can imagine. With Photo Warp, you too can be an instant, super-cheap plastic surgeon! How hilarious can you be?

Wallpapers HD
Type: Free

Get the best HD Wallpapers and Backgrounds! “Wallpapers HD” is a cool new app that brings all the best HD wallpapers and backgrounds to your Android device.
Add the innovative Colors function, and you have the best free wallpaper app for your Android phone!
Wallpapers HD is the ideal solution to get free high resolution wallpapers, thanks to its unique features:
- All the best HD wallpapers and backgrounds! Free? Yes, that’s right!
- The innovative, unprecedented “Colors” function allows you to sort the beautiful wallpapers based on your favourite color!
Get your black wallpaper or pink background, choose from amazing blue, black and white, green, dark wallpapers, get thousands of cool red, yellow, colorful backgrounds. Free on your Android phone!

MyBackup Pro
Type: Paid

The easiest backup for Android. Supporting the most content and the most devices. MyBackup Pro is the easiest backup for Android. Supporting the most content, and the most Android devices.
Backup (with schedule option) to our online secure servers, or SD card, your Applications, Photos, Contacts, Call log, Browser Bookmarks, SMS (text messages), MMS (message attachments), Calendar, System Settings, Home Screens (including shortcut positions), Alarms, Dictionary, Music Playlists, and more…

App 2 SD (move app to SD)
Type: Free

App 2 SD helps you to get more free internal phone storage space. Are you running out of application storage?
Do you hate having to check each and every app if it supports moving to the SD card? Do you want an app that automatically does this for you and can notify you when an app can be moved?
App 2 SD streamlines the movement of applications to on your device’s external or internal storage through your device’s Settings. With this handy app, you’ll have more control over your ever expanding collection of apps. This app is crucial to anyone who has memory management issues.

View original post here: Android apps

Anti Aging Products

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

The Top 30 Android Apps And Games Of 2011

Published on April 9, 2012 by in Android

Android apps come in all shapes and sizes – literally.

Unlike iOS applications, which are basically created for two form factors, Android apps need to be developed with dozens (if not hundreds) of device-types in mind. This is on top of the inconsistent operating system releases still mucking things up. While all of this fragmentation is a headache for developers, ignoring a platform with 50 percent market share would ultimately lead to their peril.

The best Android apps are thus the ones that can both push the technological envelope while also remaining accessible to the vast majority of users. This is no easy feat.

We divided our list of the best 30 Android apps into four distinct categories. The top ten apps come from third-party developers, and, if not exclusive to Android, were created primarily for the platform. Additional sections include the best new or significantly updated apps from Google, as well as the best apps and games that appeared first on iOS but later arrived to Android in 2011.

As is the case with our lists of best iOS apps and games of 2011, hundreds of additional titles are worthy of consideration. Our top 30 showcase the growth and maturation of Android apps over the last year. They are also worthy downloads.

1. Any.DO: To Do List | Task List
Funded by Google Executive Chairman Eric Schmidt, Any.DO is the best productivity and to-do application tailored specifically for Android devices. The app’s elegant interface is optimized to limit actual typing through voice-driven commands. Users can swipe each task when complete, and shake their phones to clear them from the screen. The app also offers (mostly) seamless integration with Google accounts.

2. Lightbox – Photos & Effects
More than just an Instagram for Android, Lightbox offers features like photo journals and the ability to arrange pictures by personal timelines that make it unique and, to some, indispensable. The app’s stunning visual display and compatibility on multiple Android devices set the standard moving forward for photo-sharing apps on the platform.

3. Amazon MP3
Along with Google Music (see below), Amazon MP3 is the best way for an Android smartphone and tablet owner to kick an iTunes habit. The app provides access to a library of nearly 20 million songs, 5GB of free storage, and reliable offline listening. Subscriptions to Amazon’s Cloud Drive service start at a reasonable $20/year for 20GB of storage, but you can store as much of your own music as you like with that subscription.

4. AirDroid
Android devices offer so many customization features that sometimes using a larger screen, mouse and full-sized keyboard will help you get the most out of your smartphone or tablet device. This free app lets users operate their smartphones from a PC with a Wi-Fi connection. Additionally, AirDroid emphasizes privacy protection with password changes for each use.

5. SwiftKey X Keyboard
After launching a beta app last year, SwiftKey X arrived on Android smartphones and tablets in 2011. The app has larger keys as well as superior word and sentence prediction algorithms than what is typically found on Androids. SwiftKey also learns from previously typed emails and messages, and offers three color schemes to simplify the process and brighten things up.

6. Skitch
Acquired by Evernote, Skitch lets users annotate photos with sketches, images and words. The app has dead simple editing tools and the ability for users to draw with multi-colored crayons. Skitch is a great app for kids in addition to serving as a functional and unique photo-sharing service.

7. BlueStacks Cloud Connect
While still in Alpha, BlueStacks is demonstrating how Android applications can run on Windows-based PCs. The Android app works in concert with the Windows-based BlueStacks App Player to run mobile applications on PCs. The venture-backed company and application, which has attracted more than 500,000 early adopters since launch, expects to debut a Mac OS version in 2012.

8. Qello
Available as separate applications for Android smartphones and tablets, Qello offers a great catalog of high definition concerts (mostly rock, but with other genres sprinkled in). Users can sample the 500+ titles for free, or lease any of them on a weekly ($1.99) or monthly basis ($4.99).

9. AccuWeather for Honeycomb
Developed specifically for Honeycomb-based tablet devices, this all-inclusive weather application showcases the beauty and utility of Android on larger form factors. The Lifestyle section, which informs users on things like whether it is a good day for biking or bad day for allergies, is a nice humanized touch.

10. HD Widgets
Android is all about customization, and there is no better and more comprehensive widget app available than this one. Optimized for Android tablets and smartphones, HD Widgets is great for Android experts and first-timers alike. Users will also appreciate the “fanatical” customer service of the developers.

Here are the five best Android apps developed by Google that were released or received significant updates in 2011.

11. Google Currents
As long as Flipboard remains exclusive to iOS devices, this new release from Google serves as the premier news reader on Android smartphones and tablets. More of a fast and elegant aggregator than social magazine, Google Currents benefits from an organized layout and dead simple third-party publisher platform. There is also — shockingly — nice integration with Google+, including curated content from the likes of Robert Scoble and Guy Kawasaki.

12. Google+
Google became a relevant player in social networking this year with the successful launch of Google+. While the service is also available as an iPhone app as well as a web app through BlackBerry, Windows and Symbian platforms, Google understandably treats its own platform as first among equals. Check-ins for business, for instance, rolled out first on the Android app.

13. Google Maps
A November update to this trailblazing application introduced indoor mapping functionality to mobile devices. Google Maps 6.0 helps users more easily navigate within airports, shopping malls and other locations where GPS technology is spotty.

14. Google Docs
While no mobile application matches the utility of Google Docs on a desktop or laptop, this official version for Android is pretty close. If you’re a hardcore Google Docs user, this app will help you break free from your desk and still read and edit docs and spreadsheets on the fly.

15. Google Music
Like Amazon MP3 cited above, Google Music is a way for Android users to comfortably cut the cord (or cloud) on iTunes (at least on their mobile devices). The app lets users store up to 20,000 songs for free in the cloud, with a portion available for offline access.

These next 10 apps were initially released for iOS devices. They are included here for their utility, entertainment value and impact on the Android ecosystem.

16. Price Check by Amazon
When Amazon unveiled this price-comparison app to Android devices just before Black Friday, the company’s retail Death Star became fully operational. Sure, Price Check was available to iPhone owners a year earlier, and there are similar apps across all major mobile platforms. But having an Android app gives Amazon critical mass in this category, and allows the company to (again) upend physical retail as we know it. This includes offering discounts to consumers on their phones during the point of comparison.

17. Netflix
There were a lot of things that Netflix did horribly wrong in 2011. Releasing a killer Android app for smartphones and tablet devices was not one of them. As Android tablets become ready for prime time and more plausibly compete against the iPad, entertainment apps like Netflix will flourish.

18. SoundTracking
The most innovative music detection and discovery app of the year finally arrived to Android in December. SoundTracking not only identifies a song a user is listening to, but shares it with Facebook, Twitter and foursquare friends and followers. The advantage of the Android app, relative to the iOS version which launched earlier this year, is that users with Spotify and Rdio can listen to entire tracks (as opposed to 30-second snippets from iTunes).

19. Hipmunk Flight Search
Hipmunk differentiates from the run-of-the-mill flight search applications by predicting how painful your traveling might be. The app’s “Agony Index” takes into account factors beyond price including flight duration, Wi-Fi access and other variables. Once users choose the least painful flight, the app accommodates direct booking and provides access to third-party services.

20. Fooducate Shopping Scanner
This app translates nutritional information found on food packaging into plain English, and offers a letter grade as to how healthy or harmful an item can be. The app offers comprehensive coverage of both mainstream brands and niche delicacies via the scanning of barcodes. Best of all? The app suggests healthier, similar alternatives to the worst offenders.

21. Marvel Comics
Reading classic comics within this app works on virtually any size Android screen — which is no easy feat. Marvel Comics also offers panel-by-panel viewing that features beautiful art and more legible word balloons. While most titles require a subscription, there are an ample amount of classic comics available for free.

22. Syncplicity
For digitally promiscuous users who store and share files on multiple devices and operating systems powered by Android, iOS and Windows, Syncplicity is a useful way to manage libraries found within all of them. Unlike many cloud-based alternatives, Syncplicity uses encryption to secure files.

23. Starbucks
After launching initially on iOS and BlackBerry smartphones, the official Starbucks app finally arrived on Android earlier this year. Better late than never. The app lets users manage their Starbucks Cards and purchase coffee and the like at nearly 7,000 U.S. locations.

24. LinkedIn
After what seemed like an eternity in beta, LinkedIn finally launched an Android app ready for prime time in the spring. While not perfect, the LinkedIn app is a much better alternative than the company’s more limited mobile site. Finally, this indispensable professional networking service found a full-time gig on Android.

25. Path
A significant December update to this social blogging app on Android and iOS devices served as an early holiday present to its passionate and vocal adherents. Beyond sharing photos, users can now tell the world about what music they are listening to and other activities they are doing. The app’s new design and “Automatic” feature, which recognizes when users deviate from routine schedules, also separate Path from the pack.

And finally, we present the five best games to arrive to Android devices in 2011. Notably, they all first appeared on the iPhone, iPad and iPod Touch.

26. Cut the Rope
While not a household name like Angry Birds, Cut the Rope is among the most addictive and popular mobile games of all time. The graphics and music are superb, and Cut the Rope is optimized and plays very well on larger Android tablet devices. This is another multi-platform grand slam for (Angry Birds) publisher Chillingo.

27. World of Goo
One of the most original and well-crafted physics-based puzzle games around finally made its way to Android devices in late November. Originally an indie hit on PCs, World of Goo is a construction game in which users must connect goo balls together to build structures so that other goo balls can get to the end of each stage. The abstract art and imagery alone make it worth the five bucks to download.

28. Where’s My Water?
A clever and addictive puzzle game by Disney, Where’s My Water? combines whimsical design with killer gameplay. Players are tasked with keeping a sewer-dwelling alligator named Swampy clean and pristine while guiding him through urban terrain. Easier said than done, particularly with Swampy’s alligator buddies standing in the way.

29. Plants vs. Zombies
This classic title from PopCap, which was acquired by Electronic Arts in July, first came to Android earlier this year via the Amazon App Store. It was sold exclusively on Amazon until early December. Fans of the cartoony tower defense game will enjoy tapping into Plants vs. Zombies on Android devices.

30. Asphalt 6: Adrenaline HD
The best racing game available for Android devices, Asphalt 6: Adrenaline HD combines plenty of cars and game modes — including a psychedelic “Adrenaline” boost — with superlative visuals and gameplay. This one deserves the checkered flag.

Bluestacks is providing all latest Android and Iphone apps free for PC like Angry Bird Game Online, WhatsApp on PC, Cut The Rope For PC, Drag Racing on PC, Shazam for PC , Alchemy on PC and many more Just visit PC Download.

See the article here: The Top 30 Android Apps And Games Of 2011

Raspberry Ketones

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Acquire the best software to unlock your iphone

Published on April 9, 2012 by in iPhone, Uncategorized

Our gadgets are a major part of our every day lives in these modern times and an iPhone 3G is one of them. In common, many youthful folks promise that they are able to unlock iphone 3gs, but it is not very easy to do it really. It is very essential to know how to unlock iPhone with or without software. Initial there is hardware competent to unlock the iPhone 3G. SIM component can be installed quickly. Moreover, you do not have to mod of the SIM card or your iPhone 3G. Additionally, it can be worked on any firmware edition. Nevertheless, there is a chance to unlock your iPhone 3G using software. You can unlock iPhone 3G using the software ideal for the first generation of iPhone. In fact, it is simple to unlock iPhone 3G and then you can install any third part software onto it. Luckily, nothing will happen if you fail to install them accurately at the start; thanks to the reversibility of this process. You can find here information connected to how to unlock iPhone 3G, or how to re-lock it if you want to restore the iPhone to its factory settings.

Previously on purchasing an iPhone unlock solution, you need to make it certain that it will totally unlock iphone. In this method, your iPhone will be able to work with any Sim card and phone carrier. It should not cause your iPhone to misplace any feature of function or 3G function. It should support to permit you to use the SMS/MMS and instant messengers. Moreover, it should offer 100% approval guarantee. Normally, the same unlocking solution can be applied on other iPhone models including 2G, 3G, 3GS and 4G. It is significant to understand review prior to signing up for the iPhone unlock membership. In this way, you will be able to make sure that it does not undergo from any signal loss or problems in 3G after the iPhone is unlocked.

When penetrating around, make sure you confirm the cost of the membership. Some store need you to pay a monthly fee for using the unlock iphone 3gs software while others only need you to pay a little fee once. You must sign up with the store that requires you to pay a onetime membership fee. In totaling, you will get access to hundreds and thousands of free downloads for your iphone. It is very cost-effective because you get access to all the free downloads by paying for a one time membership fee. The entire values of the download in the membership area value thousands of dollars. Therefore, it is worth every single cent of your money to buy the onetime membership plan.

You needs to go after the directions given by the software carefully and be definite to double confirm each step of jail break with Pwnage Tool that works on firmware, install iTunes and record it step by step directions and once the software is installed, you can enjoy using your iPhone after it has restarted by itself. Once you have productively done with the unlock iphone process, freedom can be made easier with the installation of ultrasn0w with baseband. Unlocking with Pwnage Tool could be finished if the custom firmware files (. Ipsw) created by Pwnage Tool update firmware to without baseband will be updated.

See the original post here: Acquire the best software to unlock your iphone

Pet Seat Covers

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Wholesale Android Tablets In China

Published on April 9, 2012 by in Android

China android tablets are computers just like the netbook but have a full functional touchscreen. The China android tablets are portable or mobile therefore easy to use anywhere and everywhere. The China wholesale android phones and wholesale android tablets suppliers sell different varieties of the China android tablets at wholesale prices.

The wholesale android tablets dealers are the best source for all kind of China android tablets. The wholesale android tablets dealers sell their products at wholesale price and clearance price. China android tablets are very popular because of the abilities and the latest and hottest applications in the market.

The China android tablets developers are competing with other world leaders such as the iPad which have thousands of application for the user. Android that is developed has applications such as social network, Google maps and many other applications. China android tablets have to compete with other tablets such as the PlayBook for the android tablets market.

The China android tablets manufacturers are partnering with wholesale android tablets dealers and wholesale android phones dealers to market the tablets. The most popular wholesale android tablets are available in China at low prices. The wholesale android phones dealers sell both android phones and the ordinary mobile phones. Some wholesale android phones dealers concentrate on selling their products to the western markets.

The wholesale android tablets suppliers stock up a wide variety of the China android tablets which are unique and of high quality. The wholesale android tablets dealers also keep up with the innovators by stocking all the new products. For all those interested in the China android tablets the best place to be is in China wholesale android tablets supplier’s store.

The China android tablets are produced in factories found in parts of China where the wholesale android tablet dealers buy from to stock their stores. Both the wholesale android tablet dealers and wholesale android dealers are unbranded thus they can stock any China android tablet. For online orders the wholesale android suppliers ship the products using convenient courier services.

China is the place to find high quality China android tablets at favorable costs. The customer looks for the latest technology and sleek designs. The wholesale android tablets sold online have no minimum order requirement thus making it easy for a consumer to buy directly from a wholesaler. You have to research the Internet to get the best deals on China android tablets. Once you have decided on the best brand of the China android tablets it is easy to order without necessarily registering.

For quick delivery of China android tablets choose a wholesale android tablets supplier who offers safe and secure delivery services e.g. DHL, UPS and EMS to all major destinations. The delivery of the China android tablets should be fast so that it takes a maximum of 7 days to reach the destination. The transaction should be safe and free of many details that would discourage the customer from purchasing the China android tablets from the desired wholesale android tablets dealer.

Continue reading here: Wholesale Android Tablets In China

Proactol review

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Android Application Development – Easy and Fast Applications for Mobile Phones!

Published on April 9, 2012 by in Android

Produced by Android Inc. and launched by Google, Android is an superb cellular running method. This enables Android OS (Operating Method) to assistance seamless programs and software’s. Android Application Development ‘a new wave’ in the mobile marketplace is predicted to be a crowning point in the mobile earth. Android Software Development will help you to establish modern and dynamic applications for mobile customers.

Android application growth is now an individual of the important influencing aspects in the market of intelligent phones. The Android allow smart phones facilitate the user with a broad array of capabilities. Currently there are more than a hundred,000 programs accessible in android industry (an official on the net android application save supplied by Google). This availability of programs reflects the important demand of android improvement. In reality, with the start of Android OS in the marketplace, application improvement firms (delivering cellular app enhancement) soon realize the potentiality of Android for supporting quite a few apps, relevant to numerous industries and with various functionalities. Also, Android OS is integrated with OpenGL ES two. 3D graphics API (Apps Programming Interface) which enables the android developers to establish rich 3D video games as a portion of android app improvement.

The expanding quantity of wise phone customers is in continual need to have of much more efficient and centered android applications rising the amount of do the job for android application developers. Android Software Enhancement is the very best suitable selection for them as Android is a effective and instinctive platform to create cellular programs. Making use of Android, the developers can develop powerful and innovative cellular programs very quickly and immediately. Android is a cellular software platform as properly as running method developed on the Linux Kernel. Android offers assistance for Java to produce cellular apps. Hence, the cellular software developers can create third celebration programs applying Java and Android Framework. Android apps is developed in java language but even if you are not a professional in Java then also you can develop your individual Android application by subsequent some uncomplicated guidelines of Android apps improvement tutorial.

For software enhancement firms supplying android app growth companies and even for android app developers, Google has supplied a fantastic Android SDK (Computer software Development Kit), which makes it possible for them to create wonderful apps and video games for Android. Android can help the developers to arrive up with modern and usable apps with its easy framework. Android features a SDK that delivers a extensive selection of libraries and resources for Android Software Progress. The SDK includes various variations of Android platform (For instance, Android 1.one, and Android 1.5) that you can use for Android Software Improvement. A very good Android application advancement tutorial gives you thorough guideline for Android software growth.

In a lot of tactics, the Android running program and the Droid cell phone are a developer’s dream combination. API of Core application of Android OS is exact same as that are employed for its application enhancement procedure. A big collection of library assistance is there for Android Mobile OS. These libraries extend the capability of application enhancement. Android is an open-source computer software stack developed for mobile phones and other products. The Android Open Resource Job (AOSP) is tasked with the safeguarding and extra expansion of Android. Android is the important Running Process for creating apps in right now for many explanations. At any time the Android procedure may well quit or ruin your application. By providing an open enhancement platform, Android gives you developers the facility to construct awfully abundant and ground-breaking programs. The development neighborhood contributes constantly towards enhancement of significant applications.

The profitable enterprise of Android Software growth has led to its effective expansion. There are quite a few application developers in the sector that now present Android apps progress services. More importantly, android growth is not just limited to mobile mobile phone technologies. Android OS is also accessible for tablet computer system (tab). Android Application Growth is a grooming company amongst program enhancement organizations today. The developers have leveraging skills and knowledge in Android Software Enhancement.

See the article here: Android Application Development – Easy and Fast Applications for Mobile Phones!

CleanMyPC computer cleaner

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

Helpful Information on Unlocking the iPhone

Published on April 9, 2012 by in iPhone, Uncategorized

The iphone is a wonderful gadget with lots of features and applications that the owner can enjoy and benefit from. Sometimes one can find themselves needing information on how to jailbreak the iphone in order to unlock more applications to use. There are many sites on the internet claiming to offer solutions for such people. Most of these sites are not genuine and therefore will not provide the right solutions one will be looking for. In fact some of these sites are purely scams for conning naïve victims. One must be careful if they are to get the right iphone unlocking software.

First of all, it is important to know that iphone unlocking software cannot be downloaded for free and is not very cheap either. Getting this kind of software from sources with such offers will be futile since they will not work and will just end up spoiling one’s gadget. Anyone who wants to unlock their iphone and has no expertise in the field is advised to buy iphone unlock software package that is built to unlock their gadget. This iphone unlock software will jailbreak the iphone easily and safely, and can also be used for other important functions.

One should be careful with the website that claims to sell iphone unlocking software. There are sites which look hurriedly set up with simple graphics that look suspicious. One should steer clear of these sites as they most likely are out to scam unsuspecting buyers. Any user who does not understand the technical aspects of unlocking the iphone risks falling for the attractive offers from these links and sites that promise free and easy steps on how to unlock the iphone. Moreover, one should pay attention to the exact version of their gadget before buying any unlocking software; otherwise you might end up with a tool that is unable to spy the usage of your gadget.

The advantage of purchasing iphone unlocking software from a reputable website is that one will be able to use the software for a long time. The iphone will also continue to function properly without any problem if the right software is used. These proven websites that offer iphone jailbreak services also offer many great entertainment opportunities like movies, music and TV shows that can be readily downloaded by the customer. Some of these sites offer unlimited downloads and unlocking access for a small fee, which one can take advantage of.

The iphone is a wonderful gadget indeed, and great care should be taken when handling it. It is important to always use only standard iphone unlocking software that is compatible with the gadget. One can easily find a list of iphone GSM networks that are compatible with the unlocking software from many websites that deal with the same. With the right software package, one can easily learn how to jailbreak the iphone on their own. It is a simple procedure that does not require any technical knowhow or experience to carry out.

Visit link: Helpful Information on Unlocking the iPhone

Baby Car Seats

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
formats

AutoRing Android Service Creation – A Walkthrough

Published on April 9, 2012 by in Android

This paper will cover the creation of a service application and the following topics:

Service creation
Using notifications
Context menus
Battery status checks
Persisting user settings
Creating icons

The project is built using Eclipse and the Android SDK.

I created this app to simulate the ring behavior of the Motorola RAZR which would switch to loud when charging and return to vibrate-only when disconnected (no manual adjustment needed). This app also allows the reverse scenario (silent when connected otherwise ring).

This tutorial assumes you already have the Eclipse environment up and running. If you are new to Eclipse and Android development, I recommend going through the temperature converter tutorial which can be found here.

You can create the project by going through the steps listed below. If you prefer to load the entire project, downloadunzip the project file, then open Eclipse and choose File->Import..->General->Existing Projects and choose the root folder of the AutoRing project.

Let’s do it now:

Start Eclipse (I’m using Eclipse Classic version 3.6.2).

Choose File -> New -> Project -> Android -> Android Project

Click Next.

Fill in the fields as shown below. You can use any version of Android 1.5 or later.

Click Finish.

Once the project is created, add these icons to the AutoRingresdrawable folder. You can drag them directly to the folder in Eclipse or you can use Windows Explorer. If you use Explorer, right-click the folder in Eclipse and choose Refresh to see the new files. Be sure to name the files as listed below as the names will be referenced in our project. We will discuss creating your own icons at the end of this walkthrough.

 circlefill.png  circleopen.png  downarrow.png  mainicon.png

Once the icons are added, the expanded resdrawable folder should look like this:

Open AndroidManifest.xml.

Click on the last tab in the source editor to view the actual XML.

If you are using Android 1.6 or later, update the sdk version to 4. At version 3, phone and storage permissions will be required to install this application. Android 1.5 requires sdk version 3 (the application won’t start otherwise). This value could also have been set in the “New Android Project” dialog but either way works.

Update the application tag to set the application icon and title.

Add the launchMode attribute to the activity tag. Set it to singleInstance. This will prevent multiple instance of our activity from running. Without this, the user can launch our app from the home screen then another instance from the notification screen (several actually).

android:launchMode=”singleInstance”>

Add the service tag for the service we will create. Setting exported to false ensures that no other apps can talk to our service. Also add the receiver tag which is used with our RebootReceiver class to restart our service when the phone is restarted. If you prefer to restart the service manually, you can leave this part out.

Open main.xml and click on the second tab to see the actual XML.

 

Remove the existing XML in main.xml.

Add the tag for our main activity.

Add the tags for the 2 status text boxes.

Add the tags for the option buttons. The marginTop attribute will put some space above the button.

  Finally, add the tag for the service StartStop button.

This layout should create the following GUI once our application is running (the arrows are added in code):

Next, we will add the service class.

Right Click on the AutoRing project and choose New->Class.

Enter the Name, Package and Superclass as shown below:

Click Finish.

We need one more class. This will allow our service to restart automatically when the phone is restarted. If you prefer to restart the service manually after a phone restart, you can skip this step and the next coding step.

Coding the RebootReceiver

There are only a few lines of code we need to add to the RebootReceiver class to restart our service. We read the StartOnReboot preference (set in AutoRingActivity.onClick) to determine if the service should be started. There may be several services trying to start at boot time, so we’ll wait 30 seconds before starting our service. We’ll use a Timer to delay the service start. We check the preferences again in (the unlikely) case the user startedstopped the service within the 30 second delay. Update the onReceive method as follows:

@Override //this gets called after a phone reboot public void onReceive(Context context, Intent intent) { //component context not enough, get app context for preferences final Context ctxt = context.getApplicationContext(); //conditional service restart, only restart if it was running before reboot if (!ctxt.getSharedPreferences(“AutoRing”, 0).getBoolean(“StartOnReboot”, false)) return; //don’t start service //use timer to delay service start so phone remains responsive at boot (new java.util.Timer()).schedule( new java.util.TimerTask() { @Override public void run() //restart the service { //recheck in case user started and //stopped service within 30 seconds if (ctxt.getSharedPreferences (“AutoRing”, 0).getBoolean(“StartOnReboot”, false)) ctxt.startService( new Intent(ctxt, AutoRingSvc.class)); } }, 30000); //wait 30 seconds } //onReceive

getApplicationContext() is required to get the global context for our app. The context passed in toonReceive is the component context which does not contain the correct preferences.
The sleep() methods do not work here. I think the process gets dumped while sleeping.
Adding the BOOT_COMPLETED action to AndroidManifest.xml will trigger the RebootReceiver at bootup even if the appservice was never run (installed only).

Coding the AutoRingActivity Class

Open AutoRingActivity.java.

This is the class that will allow the user to set options for our service class and also to start and stop the service. Note that we’ll be coding some references to the service class even though it’s not done yet. This will produce some compile errors until we code the service.

Remove all the existing code from AutoRingActivity.java.

Add the package name and imports needed for our application.

package droid.ar; import droid.ar.R; import android.app.Activity; import android.os.Bundle; import android.view.ContextMenu; import android.view.ContextMenu.ContextMenuInfo; import android.view.MenuItem; import android.view.View.OnCreateContextMenuListener; import android.widget.TextView; import android.widget.Button; import android.widget.LinearLayout; import android.widget.Toast; import android.content.Intent; import android.view.View;

Create the AutoRingActivity class. Our class will implement 2 click listener interfaces so we can use our activity to process menu and button clicks (instead of creating a separate listener class).

public class AutoRingActivity extends Activity //implement click listeners so this class can process menu & button clicks implements MenuItem.OnMenuItemClickListener, View.OnClickListener {

Add the class level variables for our activity pointers and button objects.

//class level variables AutoRingActivity mMainActivity; LinearLayout mMainView; Button btnConnectedOption, btnDisconnectedOption, btnStartStop; private int mConnectAction = 2; //default is Ring private int mDisconnectAction = 1; //default is Vibrate

Begin the onCreate handler. Do some housekeeping, then create the button objects and set their listeners. For Android 1.5, setting listeners must be done in code. After 1.5, the listeners can be declared in main.xml. Notice that we assigned our activity instance to the static AutoRingSvc.mMainActivity. We haven’t coded the service yet, so Eclipse will give a compiler error.

@Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //housekeeping setContentView(R.layout.main); mMainView = (android.widget.LinearLayout) findViewById(R.id.main_view); AutoRingSvc.mMainActivity = this; //so service can update GUI mMainActivity = this; //for use in anonymous classes //get button objects btnConnectedOption = ((Button) findViewById(R.id.btnConnectedOption)); btnDisconnectedOption = ((Button) findViewById(R.id.btnDisconnectedOption)); btnStartStop = ((Button) findViewById(R.id.btnStartStop)); //for Android 1.5 and less, we need to add the click listeners in code //after Android 1.5, these can be declared in main.xml //(android:onClick=”onClick”) btnConnectedOption.setOnClickListener(this); btnDisconnectedOption.setOnClickListener(this); btnStartStop.setOnClickListener(this);

Add code to load the user preferences. The variables will remain unchanged if the preferences are not set. The 0(Context.MODE_PRIVATE) indicates we want to keep these preferences private to the AutoRing app.

//get user preferences – use defaults if not set mConnectAction = getSharedPreferences(“AutoRing”, 0) .getInt(“ConnectAction”, mConnectAction); mDisconnectAction = getSharedPreferences(“AutoRing”, 0) .getInt(“DisconnectAction”, mDisconnectAction);

Add the call to the GUI update method.

UpdateSvcStatus(); //update text boxes and buttons

Add the handler for the context menu. This will show the options menu when the user clicks an option button. We pass in the calling button instance as a tag to the view parameter. This will let us determine the correct heading for the menu. Each menu item is assigned the button id as the groupid so we’ll know the calling button when we process the menu item click. The checked item is determined by the current action value. The service has a string static string array (mActionList) which lists the option choices. We use that to populate the context menu.

//this is called when we pop up the context menu (openContextMenu) mMainView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() { @Override public void onCreateContextMenu( ContextMenu menu, View v, ContextMenuInfo menuInfo) { //we’re using the same context menu for the //Connect and Disconnect buttons Button btnCaller = (Button)v.getTag(); //we passed the //calling button in the view tag //set menu heading according to calling button menu.setHeaderTitle(btnCaller == btnConnectedOption ? “When Connected” : “When Disconnected”); //get action based on calling button and current setting int action = (v.getTag() == btnConnectedOption) ? mConnectAction : mDisconnectAction; //create the menu items according the mActionList string array //set the group id to the calling button id for later reference //all the menu items have the same listener for (int i=0; iThis code should produce the following context menu when our app is running.

Add the handler for the context menu selection. Remember that we set the GroupId of the context menu items to the id of the calling button. We use that to determine which option to update. We then set the option according to the menu item selected (item id). We then update the preferences collection and the GUI fields.

//this is called when the user clicks a context menu item //this is the implementation of OnMenuItemClickListener public boolean onMenuItemClick(MenuItem item) { //the calling button instance was passed to the context menu //the groupid of the menu item is the calling button id //update service option value with new setting if (item.getGroupId() == R.id.btnConnectedOption) mConnectAction = item.getItemId(); if (item.getGroupId() == R.id.btnDisconnectedOption) mDisconnectAction = item.getItemId(); //store updated settings, these are read in AutoRingSvc.onCreate() getSharedPreferences(“AutoRing”, 0).edit() .putInt(“ConnectAction”, mConnectAction) .putInt(“DisconnectAction”, mDisconnectAction) .commit(); UpdateSvcStatus(); //update GUI return true; } //onMenuItemClick

Add the handler for button clicks. There are 2 option buttons and a StartStop button on the activity screen. The start button will start the service if it’s not running, else it will be stopped. For the option buttons, we attach the button instance to the main view instance (we could also use a class variable) then manually launch the context menu. we could also attach the context menu to an GUI object (registerForContextMenu), but that would require a long press to activate the menu. We also set the StartOnReboot preference which is read in the RebootReceiver class. If the user manually stopped the service here, we don’t want to start the service at boot time.

//this is called when the user clicks a button on our GUI //OnClickListener implementation public void onClick(View view) { Button btn = (Button)view; if (btn.getId()== R.id.btnStartStop) { AutoRingSvc.mMainActivity = this; //so service can update GUI //store service state, this is read in RebootReceiver class //if user started service, we will need to restart on reboot getSharedPreferences(“AutoRing”, 0).edit() .putBoolean(“StartOnReboot”, !AutoRingSvc.mSvcStarted).commit(); //create service intent (or connect to running service) Intent svc = new Intent(mMainActivity, AutoRingSvc.class); if (!AutoRingSvc.mSvcStarted) //if not started getApplicationContext().startService(svc); //start service else //already started, so attempt stop //stopService returns true if stopped successfully AutoRingSvc.mSvcStarted = !getApplicationContext().stopService(svc); UpdateSvcStatus(); //update GUI } //if user clicked on an option button if (btn.getId()== R.id.btnConnectedOption || btn.getId()== R.id.btnDisconnectedOption) { mMainView.setTag(btn); //pass calling button to context menu //so we get button id back openContextMenu(mMainView); //start option menu } } //onClick

Add the method to update the GUI objects. There are 2 text fields to show service and connection status. If the service is running, disable the option buttons. Set the option button text to the selected option value. For Android 1.6 and above, we’ll add the arrow icon to the buttons so users will know they are option buttons. It seems that Android 1.5 and earlier don’t support button icons. We remove the icon when the button is disabled because the icon will not turn light gray like the button, which looks odd.

public void UpdateSvcStatus() { //update the GUI text fields with the battery and service status ((TextView) findViewById(R.id.txtBattStatus)).setText(AutoRingSvc.mBatteryStatus); ((TextView) findViewById(R.id.txtStatus)).setText (“AutoRing is “+(AutoRingSvc.mSvcStarted? “running”: “stopped”)); //set text of StartStop button btnStartStop.setText((AutoRingSvc.mSvcStarted? “Stop”: “Start”) + ” AutoRing”); //if service is running disable the option buttons, else enable them btnConnectedOption.setEnabled(!AutoRingSvc.mSvcStarted); btnDisconnectedOption.setEnabled(!AutoRingSvc.mSvcStarted); //update option button text with current settings btnConnectedOption.setText(“When Connected: ” + AutoRingSvc.mActionList[mConnectAction]); btnDisconnectedOption.setText(“When Disconnected: ” + AutoRingSvc.mActionList[mDisconnectAction]); //must be Android 1.6 or higher to add arrow icon to buttons if (Integer.parseInt(android.os.Build.VERSION.SDK) > 3) { //add arrow icons to option buttons when enabled btnConnectedOption.setCompoundDrawablesWithIntrinsicBounds (0,0, btnConnectedOption.isEnabled()? R.drawable.downarrow: 0, 0); btnDisconnectedOption.setCompoundDrawablesWithIntrinsicBounds (0,0, btnDisconnectedOption.isEnabled()? R.drawable.downarrow: 0, 0); } } //UpdateSvcStatus

Add the following methods to finish off our activity class. onPause is called when our activity is moved to the background (user started another app) so we can disconnect from the service. onResume is called when the app is moved back to the foreground, so can reconnect to the service for updates. onDestroy is called when our app is stopped. The Toast call is just to prove that the GUI has ended but our service is still running. You should remove this for a production app.

@Override public void onPause() { //app moved to background, no need for updates super.onPause(); AutoRingSvc.mMainActivity = null; //disconnect from service } @Override public void onResume() { //app moved to foreground (also occurs at app startup) super.onResume(); AutoRingSvc.mMainActivity = this; //reconnect to service UpdateSvcStatus(); //update GUI } @Override public void onDestroy() { super.onDestroy(); //show message so we know when the GUI app is gone and //the service is still running. Toast.makeText( mMainView.getContext(), ” Goodbye GUI “, Toast.LENGTH_SHORT).show(); } } //AutoRingActivity

Coding the Service Class

Open AutoRingSvc.java and delete the existing code.

Add the package name and imports needed for our service.

package droid.ar; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.app.Service; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.media.AudioManager; import android.os.BatteryManager; import android.os.IBinder; import android.widget.Toast;

Add the static variables which will be used to share data between the service and activity class. Also add the default notification volume and status indicator. The 2 action variables are set to the defaults. You can change these values to your preferred settings.

public class AutoRingSvc extends Service { //we use static variables to share data between the service and GUI app //we could use binding instead, but this is simpler public static AutoRingActivity mMainActivity; public static String mBatteryStatus = “”; public static boolean mSvcStarted = false; private int mConnectAction = 2; //default is Ring private int mDisconnectAction = 1; //default is Vibrate private int mNotificationVolume = 5; //Default volume private int mLastStatus = -1;

Add the static action list array. This will be used to populate the option menu and also used as the ringer status text. The android constants for ringer mode is 0-2, which lets us use our array index instead of the constants when setting the ringer mode.

//possible actions when connecteddisconnected //we sorted them according to the RINGER values just for shorter code public static String[] mActionList = { “Silent”, //AudioManager.RINGER_MODE_SILENT = 0 “Vibrate Only”, //AudioManager.RINGER_MODE_VIBRATE = 1 “Ring”, //AudioManager.RINGER_MODE_NORMAL = 2 “No Change”}; //No constant for this

Add the required onBind handler. This is another (more complicated) way to talk to a running service. We will stop our service to make setting changes, so onBind is not needed. Just ignore this event.

@Override //required for Service class public IBinder onBind(Intent arg0) { return null; }

Add the onCreate handler. This is called each time the service starts. If the OS gets low on memory, it may stop our service. When memory is freed up, our service will be restarted automatically and onCreate is called again.

We tell Android we want to receive battery status updates with the registerReceiver call.

SetForeground is used to tell Android we want to keep our service running even if memory gets low.SetForeground only works in Android 2.0 and less. Starting in 2.1, we would need to start the service usingstartForeground.

The user preferences are taken from the preferences collection (set inAutoRingActivity.onMenuItemClick).

We also log the service start here. If you’re debugging using your phone (not a virtual device), you will need to get a (free) LogCat viewer from the Android market. Log messages will not show up in the Eclipse debugger unless you use a virtual device.

@Override //Called on service start (by GUI or OS) public void onCreate() { super.onCreate(); android.util.Log.d(“AutoRing”,”Service Starting”); //popup a message from the service. This will appear even if no GUI. Toast.makeText(getApplicationContext(), ” Starting “, Toast.LENGTH_SHORT).show(); //listen for connectdisconnect registerReceiver( batteryReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED) ); //retrieve stored settings that were set in GUI //SharedPreferences object is not shared across //processes so we can use any name //keep default values if preference not set (should never happen) mConnectAction = getSharedPreferences(“AutoRing”, 0) .getInt(“ConnectAction”, mConnectAction); mDisconnectAction = getSharedPreferences(“AutoRing”, 0) .getInt(“DisconnectAction”, mDisconnectAction); mNotificationVolume = getSharedPreferences(“AutoRing”, 0) .getInt(“NotVol”, mNotificationVolume); mSvcStarted = true; setForeground(true); //only has affect before 2.0. In 2.0 use startForeground() } //onCreate

If you are using Android 2.0 or later, you can include the onStartCommand handler. This will allow you to use an Intent object to pass settings to the service at startup instead of using shared static values and theSharedPreferences class. This walkthrough is compatible to version 1.5, so I have this code commented.

/* @Override //only exists in 2.0 and later public int onStartCommand(Intent intent, int flags, int startId) { //add code here to get Intent data (user options) //if service is killed and restarted by the OS, resend the Intent info return START_REDELIVER_INTENT; } */

Add the handler for the battery status changes. The main work of our service is done here. When the phone is disconnected, the battery status becomes BATTERY_STATUS_DISCHARGING. Any other status indicates that the phone is plugged in. When the handler is triggered, we change the ringer state (onoffvibrate) and notification (like SMS) volume (zeronon-zero) based on the user settings. We then store the notification volume in the preferences in case of service restart. We then update the GUI app if it is running. Finally, we update the notification icon and text in the phone’s status bar.

//the main listener for connectdisconnect //we need to turn the main ringer onoff //we also need to mute unmute the notification volume (ie Text Msg) public BroadcastReceiver batteryReceiver = new BroadcastReceiver() { @Override public void onReceive( Context context, Intent intent ) { int newStatus = intent.getIntExtra( “status”, 0 ); if (newStatus != mLastStatus) //status change { AudioManager am = (AudioManager)context.getSystemService (Context.AUDIO_SERVICE); //get current notification volume int notVol = am.getStreamVolume(AudioManager.STREAM_NOTIFICATION); int curAction = (newStatus == BatteryManager.BATTERY_STATUS_DISCHARGING) ? mDisconnectAction : mConnectAction; mBatteryStatus = (newStatus == //update text box BatteryManager.BATTERY_STATUS_DISCHARGING ? “Not “: “”) +”Connected (“+mActionList[curAction]+”)”; if (curAction < 3) //skip if action=No Change { am.setRingerMode(curAction); //set main ringer //change notification volume according to action if (notVol > 0 && curAction < 2) //Silence or Vibrate { mNotificationVolume = notVol; //store current //volume for later am.setStreamVolume( //set mute AudioManager.STREAM_NOTIFICATION, 0, 0); getSharedPreferences("AutoRing", 0) .edit() //store for svc restart .putInt("NotVol", mNotificationVolume).commit(); } else if (curAction==2 && notVol==0) //if action=Ring //and currently muted, reset volume am.setStreamVolume(AudioManager.STREAM_NOTIFICATION, mNotificationVolume, 0); } //if the GUI app is connected, update app screen if (mMainActivity!=null) mMainActivity.UpdateSvcStatus(); mLastStatus = newStatus; //update status text and icon DoNotify(newStatus != BatteryManager.BATTERY_STATUS_DISCHARGING); } }}; //batteryReceiver

Add the method to update the notification bar on the phone. We change the icon based on the connection status. We set the notification text based on the user settings and phone status. Use theFLAG_ONGOING_EVENT flag so our notification will be in the Ongoing list and the Clear button will not delete our message. The text is set in the status bar next to our icon and also the text which appears in the notification drop down.

private void DoNotify(boolean connected) //update notification text and icon { //set notification icon and text in status bar Notification notification = new Notification ( connected? R.drawable.circlefill: R.drawable.circleopen, mBatteryStatus, System.currentTimeMillis()); //set text in notification list Intent notificationIntent = new Intent(this, AutoRingActivity.class); notification.setLatestEventInfo( getApplicationContext(), “AutoRing”, mBatteryStatus, PendingIntent.getActivity(this, 0, notificationIntent, 0)); notification.flags |= Notification.FLAG_ONGOING_EVENT; //Cannot be cleared //trigger notification ((NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE)) .notify(1, notification); } //DoNotify

Once the app is up and running, the AutoRing notifications will look like this. We’re using themBatteryStatus variable for the text in the notification list. This is set in the BroadcastReceivermethod. Note that the system icons are hidden while our status is showing the status bar so our text can fill the entire bar. If the message exceeds that length of the bar, the message will scroll line by line. You can also use “n” in the message to explicitly cause scrolling.

 

Finish the service class by adding the onDestroy handler. We log the event and show a popup to confirm it happened. We then unregister the battery event listener then cancel the notification so the icon and text are removed from the status bar and notification list. There doesn’t seem to be a built-in way to determine if the service is startedstopped, so we explicitly set the mSvcStarted variable. We set this variable to true in theonCreate method.

onDestroy is called when we use the stopService() call in AutoRingActivity and when the user uses the “Running services” app (Android 2.0 and later) in the Android Settings. onDestroy is not called when the user uses Force stop in the “Manage applications” app in the Android settings or when using adp kill (discussed later).

@Override //called when service is stopped public void onDestroy() { super.onDestroy(); android.util.Log.d(“AutoRing”,”Service Stopping”); Toast.makeText(getApplicationContext(), ” Stopping “, Toast.LENGTH_SHORT).show(); unregisterReceiver(batteryReceiver); //disconnect listener //remove notification icon and text ((NotificationManager) getSystemService (Context.NOTIFICATION_SERVICE)).cancelAll(); mSvcStarted = false; } } //AutoRingSvc

And that’s it. We’re done coding our application.

Build the project (Project->Build All). If you have Build Automatically set, the project will rebuild each time you save a source file.

Running the App

To see the connectdisconnect functionality actually work, you will need to connect your phone to the computer (virtual devices are always connected):

Connect your phone using a USB cable (you may need to install the USB drivers for your phone)
On your phone, in Settings->Application->Development, enable USB debugging
USB Storage should be disabled on your phone

In Eclipse, press F11 to start debugging.

After a few seconds (if everything goes right), the application should start on your phone.

If the Eclipse starts a virtual device instead:

Close the virtual device
Go to Run->Debug Configurations
In the configuration settings under Target, choose Manual. This will allow you to choose which device to debug on.

Click Debug then select Choose a running Android device in the next screen and click OK to start debugging.

If you don’t see any running devices, confirm that you phone is attached to your PC and you have a working USB cable. You can also download USBDeview (freeware) which lists the attached USB devices on your PC.

To exit the app, use the back button on your phone or choose Run->Terminate in Eclipse.

To install the application to your phone, using an APK file

On your phone, in Settings->Applications, enable Unknown sources to allow non-market apps on your phone.

In Eclipse, choose File->Export..->Android-> Export Android Application.

Click Next.

Enter AutoRing as the project name.

Click Next.

If you already have a keystore, choose Use existing keystore. If not, here are the steps to create one.

Choose Create new keystore. Enter a file name (no extension is needed) and a password.

Click Next.

For Alias and Password, you can use the same values you entered into the previous screen. Set validity to 100 years. Enter any name in the Name field. If you plan to publish any apps using this keystore, you should probably use your real information.

Click Next.

Enter the file name for your apk file.

Click Finish.

To install the apk file onto your phone, use the adb tool in the android-sdkplatform-tools folder. If you don’t know the folder, just search your computer for adb.exe.

To install the apk file, use this command line:

 adb install C:AutoRing.apk

You can also use one of the (free) installer apps from the Android market which lets you install apk files from the phone’s SD card.

Once the install is complete, AutoRing should be available in your phones application list.

Testing the Service Restart Logic

As mentioned previously, onDestroy is called when we use the stopService() call and when the user uses the “Running services” app (Android 2.0 and later) in the Android Settings. onDestroy is not called when the user uses Force stop in the “Manage applications” app in the Android settings.

If you want to simulate a memory-low process killrestart, you can use the adb.exe from your computer:

Ensure you only have one emulator running and your phone is not attached
Start the AutoRing service on the emulator
From a cmd prompt, go to the android-sdkplatform-tools folder and run adb shell

Enter ps. This will give you a list of processes running on your device (or emulator). Search for the process where name is droid.ar. This is the AutoRing service. Note the PID (second column) for the process.
Enter kill pid where the pid is for the droid.ar process. This will cause the service to be killed immediately (onDestroy is not called). It will also trigger a service restart, which confirms the restart logic is working.
Enter exit to quit the shell.

adb would not let me kill a process on my actual phone (Operation not permitted) so I tested only on the emulator.

Creating your Own Icons

All the icons used for Android apps are transparent PNG files. Microsoft Paint (the default Windows image editor) does not support transparent PNGs, so you will need to use another application if you want transparent pixels. Here are instructions for Photoshop and Paint.Net (a free image editor).

Some basic rules for Android icons:   

Icon names must be lower case or numbers. Underscores ( _ ) are also allowed. Periods are allowed, but only the first part of the file name will be used as the resource name (myicon.abc.png is the same as myicon.xyz.png).
The notification icon (in the status bar) is 25×25 pixels and should be grayscale (though color is supported as in the blue icons above).
The main application icon is 72×72 pixels and can be full color. I saved mine as 8 bit color to reduce file size.
The arrow icon is just a copy of the Android arrow used for preferences. I used the gray version, but color icons will also work (though may look odd on a gray button). I tested color using this green arrow shown above.

PhotoShop (I’m using version 7, which is somewhat old):

Select File->New
In the “New” dialog, choose the Transparent option under Contents to allow for transparency. Set the size you want then click OK. The checkered pattern is the transparent part of the image.
Draw what you want, then save as a PNG file
If you have an existing image and want to set the background to transparent

Open the existing image
Choose Select->All, then choose Edit->Copy
Open a new image with Transparent selected
Paste the old image (Edit->Paste)
Use the Magic Wand Tool to select the pixels you want to set transparent, then click delete
You can also use the Background Eraser Tool to clear specific pixels

Paint.Net (This is freeware which has some impressive features). 

Select File->New
Set the size you want then click OK
Choose Edit->Select All then press delete. This will set all the pixels to transparent.
Draw the image you want then save as a PNG file. I used 8 bit color to reduce the file size.
If you have an existing image and you want to set some pixels to transparent

Open the existing image
Use the Magic Wand tool to select the pixels you want to remove then press delete
You can also use the Eraser tool to remove specific pixels

Additional Thoughts

The service class is not needed if you just want to test a listener or notifications. The listener will still run when the activity is moved to the background. The issues with this are that the OS will remove background GUI apps before removing services when memory gets low and that GUI apps are not restarted automatically.
Dealing with the API changes between 1.5 and 2.0 can be tedious. Be prepared for this if trying to write backward compatible apps. Cryptic crashes may indicate a version problem.
According to the version distributionchart, 97% of Android users use Android 2.1 and above. You can probably ignore version 1.51.6 when creating Android apps.
The AutoRing app may be better without the “No Change” option. If the user chooses this, the status text will show No Change instead of the actual ring state. Of course, it we set the actual ring state, it may confuse the user. Hmmm. Fortunately, this option is impractical and will rarely be used.
I only tested the reboot logic on my Ideos 2.2. The virtual machines for version 1.51.62.2 didn’t let me power down the device.
In this app, we used a context menu to set app options. If you have many options to set, consider using the PreferenceActivity class where a separate activity is used for setting user preferences.
I couldn’t get the main app icon to appear in the 1.5 emulator. I tried several icon versions. I think this is an emulator issue. The 2.2 emulator showed the icon correctly.
The virtual machine is a good way to get screen captures from your app. Just capturecopy the emulator screen (Alt+PrtScr) then crop using an image editor.
The main icon is a quickie creation using 3D Studio (very not free) but there are many free 3D modeling tools available if you want to give 3D stuff a try.
If you want a full app that can detect battery conditions (among many others), check out the Llama app in the Android market. It’s also free.
I recently found out that there is a similarly named app in the Android market. That app is not related to this walkthrough. The naming is just coincidence.

Resources:
“Copy from one, it’s plagiarism; copy from two, it’s research.” – Wilson Mizner

Activity
Services
Battery Manager
Audio Manager
Shared Preferences
Preference Models
Context
Creating Notifications
Boot Service
p=12″>Timers
System Clock
Text View
Context Menu
adb kill
API Changes in 2.0
Icon Guidance
Version Distribution

And I think we’re done. If you’re still reading this, you have a high tolerance for boredom. I hope you found this walkthrough useful. If you found any part confusing or if you think I missed something, please let me know so I can update this page.

You may join me over Facebook or may drop in your suggestions/comments through mail at praneet.arora@facebook.com

See the original post: AutoRing Android Service Creation – A Walkthrough

Blog Tutorials

 
 Share on Facebook Share on Twitter Share on Reddit Share on LinkedIn
No Comments  comments 
© Tube Shack
credit