USE ANDROID

Android Aplication, all about android

Android 4.0 Platform and Updated SDK Tools

ICS logo
Today we are announcing Android 4.0, Ice Cream Sandwich — a new version of the platform that brings a refined, unified user experience for phones, tablets, and more.
Android 4.0 builds on the things people love most about Android — efficient multitasking, rich notifications, customizable home screens, resizable widgets, and deep interactivity — and adds powerful new ways of communicating and sharing. It includes many great features for users, including social and sharing integration, network data usage control, innovative connectivity and camera options, and an updated set of standard apps.
For developers, Android 4.0 introduces many new capabilities and APIs. Here are some highlights:



Unified UI toolkit: A single set of UI components, styles, and capabilities for phones, tablets, and other devices.
Rich communication and sharing: New social and calendar APIs, Android Beam for NFC-based instant sharing, Wi-Fi Direct support, Bluetooth Health Device Profile support.
Deep interactivity and customization: Improved notifications, lockscreen with camera and music controls, and improved app management in the launcher.
New graphics, camera, and media capabilities: Image and video effects, precise camera metering and face detection, new media codecs and containers.
Interface and input: Hardware-accelerated 2D drawing, new grid-based layout, improved soft keyboard, spell-checker API, stylus input support, and better mouse support.
Improved accessibility: New accessibility APIs and text-to-speech APIs for writing new engines.
Enhancements for enterprise: Keychain and VPN APIs for managing credentials and connections, a new administrator policy for disabling the camera.

For a complete overview of what’s new for users and developers, please read the Android 4.0 Platform Highlights.
Alongside the new Android platform, we are releasing new versions of the SDK Tools (r14) and ADT Plugin (14.0) for Eclipse. Among the highlights are:
  • Improved build performance in Ant and Eclipse

  • Improved layout and XML editors
To get started developing on Android 4.0, visit the Android Developers site for information about the Android 4.0 platform, the SDK Tools, and the ADT Plugin.
If you have already developed and published apps, we encourage you to download the Android 4.0 platform now, to begin testing your app before devices arrive in stores.


Check out the video below for a closer look at Android 4.0 in action.
New Public APIs in ICS

New Public APIs in ICS

Since Android is open-source, anyone can look at the code and see how it works inside. If you do this, you’ll notice that most but not all of the APIs are publicly documented.
If they’re publicly documented, they’re part of what we consider the Android Application Framework. This means their tests appear in the Compatibility Test Suite (CTS) so that our hardware partners have to prove that the APIs work, and that we promise to try very hard not to change them and thus break your code.
In almost every case, there’s only one reason for leaving APIs undocumented: We’re not sure that what we have now is the best solution, and we think we might have to improve it, and we’re not prepared to make those commitments to testing and preservation.
We’re not claiming that they’re “Private” or “Secret” — How could they be, when anyone in the world can discover them? We’re also not claiming they’re forbidden: If you use them, your code will compile and probably run. And in fact we know of quite a few apps out there whose developers have used undocumented APIs, often to good effect. It’s hard to get too upset about this in cases where there’s a useful API that we haven’t gotten around to stabilizing.
But the developers who use those APIs have to be prepared to deal with the situation that arises when we move them from the undocumented outside into the Android Application Framework. Fortunately, this is reasonably straightforward. Also we take a close look at Android Market, using our in-house analytics tools, to get a feel for the impact when we know one of these changes is coming.
There are a few such changes coming up in the Android 4.0 “Ice Cream Sandwich” (ICS) release of Android. We wanted to take the opportunity to combine these words on undocumented APIs with some specifics about the changes.

Calendars

Let’s start with the good news: As of ICS, the Android Framework will include a fully-worked-out set of APIs for accessing Calendar data. You can guess the bad news: Quite a few developers have built apps (including many good ones) using the undocumented Calendar APIs, some using fairly low-level access to the calendar database. Unfortunately, these integrations were unsupported, and prone to breakage by platform updates or OEM customization of calendar features.
We want to see lots of good calendar apps and extensions that work reliably across Android devices, and aren't broken by platform updates. So we decided to create a clean API, including a comprehensive set of Intents, to manage calendar data in ICS. Now anyone can code against these new APIs and know that Android is committed to supporting them, and that partners have to support these APIs as part of CTS.
Once the new APIs arrive, you’re going to have to update your apps before they’ll run correctly on ICS while still working on older releases. There are a variety of techniques for doing that, many of which have been featured on this blog, including reflection and lazy loading. Recently, we introduced Multiple-APK support, which could also be used to help with this sort of transition.

Text To Speech

Android has never really had a text-to-speech API at the Framework level, but there was unofficial access at the C++ level. With ICS, we will have a fully-thought-through application-level API running on Dalvik, so you can access it with ordinary Java-language application code.
The old C++ API will no longer be supported, but we’ll have a compatibility layer that you can use to bridge from it to the new API. We think it should be easy to update for ICS with very little work.

Doing the Right Thing

We recognize that this means some work for developers affected by these changes, but we’re confident that Android programs in general, and both Calendar and TTS apps in particular, will come out ahead. And we also think that most developers know that when they use undocumented APIs, they’re making a commitment to doing the right thing when those APIs change.

Introducing Google Play



[This post is by Kenneth Lui, Android Developer Ecosystem. —Dirk Dougherty]

For more than a year we’ve been focused on expanding the reach, content, and monetization opportunities of Android Market. We started by extending the store to users on the web and then went on to add books, movies, and music. The number of people who have visited, registered, and downloaded from the store has been amazing.



Today we’re launching Google Play, an integrated destination for apps, books, movies, and music, accessible to users on Android devices and to anyone on the Web. As part of this launch, Google Play replaces and extends Android Market — users everywhere can now find their favorite apps and games in Google Play, with other digital content, all in one place.



We believe that with a strong brand, compelling offerings, and a seamless purchasing and consumption experience, Google Play will drive more traffic and revenue to the entire ecosystem.



We’ll be investing in the brand to bring Google Play to as many people as possible, and we’ll also invest in the latest digital content to keep Google Play fresh, relevant, and engaging. Apps and games remain the core of Google Play, so we’ll continue investing in new ways to connect users with their favorite apps, and developers with new customers.






As we grow and promote Google Play around the world, we’ll be marketing your apps and games at the same time. Our policies have not changed and our goal is still the same — to create a great, open marketplace for distributing Android apps.



Google Play is built on the same infrastructure as Android Market, so the transition for users and developers will be seamless. Users can sign into their existing accounts with the same credentials as before and purchase content using the same payment methods. As a developer, there’s no change needed to your published products and you can continue to use the same publishing tools to put your app in front of hundreds of millions of Android users. If your app was in Android Market yesterday, it’s in Google Play today.



We’ll be rolling out Google Play to devices in a phased OTA update, starting today and continuing over the days to come. With the update, the Android Market app will upgrade to the Play Store app and the Music, Videos, and Books apps will upgrade to Play Music, Play Movies, and Play Books. This update is for devices running Android 2.2 or higher, and users on other devices will continue to have the same access to your apps as before.



You can start sending customers to your products in Google Play right away. Check out the updated “Get it on Google Play” badges and look for an email with more details on the transition. In the meantime, you can check out the Google Play web site at the link below and join the discussion on +Android Developers.



Crystal Throne 1.0.7 Apk + SD Data

Crystal Throne 1.0.7
Crystal Throne 1.0.7 Apk + SD Data

Requirements: Android 2.3 and up
Download Crystal Throne latest apk version 1.0.7 for your android. On your way you will meet Terra Dahl’s finest Halfling Assassins, Human Arch-mages, and Dwarven Warriors in search of relics!!

Crystal Throne is the perfect combination of Strategy, Action, and Role Playing. You can experience the pleasure of building your own kingdom and commanding an army to dominate the world. Team up with other players and venture into dungeons full of mysterious monsters and fabulous treasure. Do you have what it takes to sit upon the Crystal Throne?
As a legendary hero on this continent of swords and magic, establish your own kingdom, hunt for treasure, slay evil dragons, and take an adventure together with users from around the world!◆FEATURES
☆ Play with thousands of other players from around the world
☆ 3 different characters: Warrior, Mage, and Ranger
☆ Construct your own unique and powerful kingdom
☆ Recruit units and build your army
☆ Different maps full of challenges awaiting to be explored
☆ Team up with other players to enhance your power
☆ Fantastic 3D dungeons and powerful fighting skills with magnificent effects
☆ Many types of equipment with multiple levels to upgrade
☆ Rewards for challenging other players◆STORY
The journey of the Crystal Throne assembles the most powerful forces to protect the entire world, and to write a legendary story of love and peace.

What’s new in this version :
Bug Fixed.
Optimize the process of tutorial.

Download

Glow Next Launcher 3D Theme APK v1.0

Glow Next Launcher 3D Theme
Glow Next Launcher 3D Theme APK v1.0

Requirements: Android 1.6 and up

App Review:
If the theme doesnt work properly, please send me an email and I will send you a working apk file. Installing directly from Google Play may not work. Sorry for the inconvinient.Designed by Vafne, is available now! Cool and Elegant interface and app drawer. Have a completely new makeover of your smartphone with this theme.
Exclusive HD icons added for comon apps.

5 wallpapers.Important tips:
1. Make sure the latest version V1.15 of Next Launcher has been installed! (Search “Next Launcher” to download)
2. Apply the Theme: MENU->Indicidual—>Installed themes->Choose Carbon Circle HD theme.
3.-Apply another wallpaper: “Wallpaper – Next Wallpaper”

Download
Using Cryptography to Store Credentials Safely

Using Cryptography to Store Credentials Safely

Posted by Trevor Johns, Android Developer Relations team

random_droid


Following our talk "Security and Privacy in Android Apps" at Google I/O last year, many people had specific questions about how to use cryptography in Android. Many of those revolved around which APIs to use for a specific purpose. Let's look at how to use cryptography to safely store user credentials, such as passwords and auth tokens, on local storage.



An anti-pattern



A common (but incorrect) pattern that we've recently become aware of is to use SecureRandom as a means of generating deterministic key material, which would then be used to encrypt local credential caches. Examples are not hard to find, such as here, here, here, and elsewhere.



In this pattern, rather than storing an encryption key directly as a string inside an APK, the code uses a proxy string to generate the key instead — similar to a passphrase. This essentially obfuscates the key so that it's not readily visible to attackers. However, a skilled attacker would be able to easily see around this strategy. We don't recommend it.



The fact is, Android's existing security model already provides plenty of protection for this kind of data. User credentials should be stored with the MODE_PRIVATE flag set and stored in internal storage, rather than on an SD card, since permissions aren't enforced on external storage. Combined with device encryption, this provides protection from most types of attacks targeting credentials.



However, there's another problem with using SecureRandom in the way described above. Starting with Android 4.2, the default
SecureRandom provider is OpenSSL, and a developer can no longer override SecureRandom’s internal state. Consider the following code:




SecureRandom secureRandom = new SecureRandom();
byte[] b = new byte[] { (byte) 1 };
secureRandom.setSeed(b);
// Prior to Android 4.2, the next line would always return the same number!
System.out.println(secureRandom.nextInt());


The old Bouncy Castle-based implementation allowed overriding the internally generated, /dev/urandom based key for each SecureRandom instance. Developers which attempted to explicitly seed the random number generator would find that their seed replaces, not supplements, the existing seed (contrary to the reference implementation’s documentation). Under OpenSSL, this error-prone behavior is no longer possible.



Unfortunately, applications who relied on the old behavior will find that the output from SecureRandom changes randomly every time their application starts up. (This is actually a very desirable trait for a random number generator!) Attempting to obfuscate encryption keys in this manner will no longer work.



The right way



A more reasonable approach is simply to generate a truly random AES key when an application is first launched:



public static SecretKey generateKey() throws NoSuchAlgorithmException {
// Generate a 256-bit key
final int outputKeyLength = 256;

SecureRandom secureRandom = new SecureRandom();
// Do *not* seed secureRandom! Automatically seeded from system entropy.
KeyGenerator keyGenerator = KeyGenerator.getInstance("AES");
keyGenerator.init(outputKeyLength, secureRandom);
SecretKey key = keyGenerator.generateKey();
return key;
}


Note that the security of this approach relies on safeguarding the generated key, which is is predicated on the security of the internal storage. Leaving the target file unencrypted (but set to MODE_PRIVATE) would provide similar security.



Even more security



If your app needs additional encryption, a recommended approach is to require a passphase or PIN to access your application. This passphrase could be fed into PBKDF2 to generate the encryption key. (PBKDF2 is a commonly used algorithm for deriving key material from a passphrase, using a technique known as "key stretching".) Android provides an implementation of this algorithm inside SecretKeyFactory as PBKDF2WithHmacSHA1:



public static SecretKey generateKey(char[] passphraseOrPin, byte[] salt) throws NoSuchAlgorithmException, InvalidKeySpecException {
// Number of PBKDF2 hardening rounds to use. Larger values increase
// computation time. You should select a value that causes computation
// to take >100ms.
final int iterations = 1000;

// Generate a 256-bit key
final int outputKeyLength = 256;

SecretKeyFactory secretKeyFactory = SecretKeyFactory.getInstance("PBKDF2WithHmacSHA1");
KeySpec keySpec = new PBEKeySpec(passphraseOrPin, salt, iterations, outputKeyLength);
SecretKey secretKey = secretKeyFactory.generateSecret(keySpec);
return secretKey;
}


The salt should be a random string, again generated using SecureRandom and persisted on internal storage alongside any encrypted data. This is important to mitigate the risk of attackers using a rainbow table to precompute password hashes.



Check your apps for proper use of SecureRandom



As mentioned above and in the New Security Features in Jelly Bean, the default implementation of SecureRandom is changed in Android 4.2. Using it to deterministically generate keys is no longer possible.



If you're one of the developers who's been generating keys the wrong way, we recommend upgrading your app today to prevent subtle problems as more users upgrade to devices running Android 4.2 or later.


Top Gear SSR Pro v3.1 Apk + Data

Top Gear SSR Pro
Top Gear SSR Pro v3.1 Apk + Data

Requirements: Android 2.1 and up
Top Gear: Stunt School Revolution Pro!

Join the Millions who are playing Top Gear: Stunt School Revolution and download the Pro version now! ★ALL STUNTS UNLOCKED ★300 PERMITS FOR FREE ★

With incredible visuals, loads of outrageous cars, iconic world locations, endless and mostly ridiculous customizations and truly unbelievable stunts, it’s everything you’d expect from the Top Gear team. !

Want to balloon hop a motor home to clear the Grand Canyon? Use your sports car and escape Alcatraz by leaping as far as you can and landing on a barge? Speed through a roller-coaster on a New York skyscraper with a cow on your pickup? You can do all this and more in Top Gear: Stunt School Revolution.

• Endless vehicle customisations to tweak your car performance to any scenario
• A fantastically responsive, intuitive driving experience
• Fantastic iconic locations from around the world – Grand Canyon, Alcatraz, Sydney Harbour, New York, Moscow, London and China
• Challenge your friends to beat your high scores on each stunt and tell everyone about it on Facebook and Twitter
• Additional in-app purchases are available for extra Gold Nuts, Permits and Stig Dollars if you can’t wait.

What’s NEW in this version:
New Cars.
Social rewards.
Bug Fixes.

How to Install
1. Extract & Install APK
2. Copy ‘com.supersonic.tgssr_pro’ folder to sdcard/Android/obb
3. launch the game

APK + Data : Download