Android Development

Android Development

Nokia may be developing its own mobile digital assistant called “Viki”


Nokia may be jumping in on the digital assistant bandwagon that’s already seen involvement from several of the top tech companies. Nokia filed for a trademark today in Europe for something code named “Viki”, which the application says will be used for mobile and web-based “assistants working with digital knowledge and combining all data sources into a single chat and voice-based interface.”

See also:

10 best personal assistant apps for Android

November 21, 2016

At the moment, that’s all we know about this filing. When asked by Engadget, a Nokia spokesperson said that it does file applications for trademarks but “we don’t comment on how, whether or when they may be used for Nokia products or services.” However, if Nokia is indeed creating a new digital AI, it will be joining many others already available, including Apple’s Siri, Amazon’s Alexa, Microsoft’s Cortana, and the recently launched Google Assistant.

Over the weekend, HMD Global revealed that the launch of its first Android-based smartphone with the Nokia brand, called the Nokia 6, will happen in China sometime in early 2017. There’s no word on if HMD’s branding agreement with Nokia would extend to any mobile software developed by the company, including any possible AI assistant. It’s also possible that “Viki” could also be offered for any smartphone or tablet devices as well.

10 best icon packs for Android (by developer)

Icon packs have always been popular. Most mainstream, third party launchers support them and they provide a cheap and unique way to customize your device. When we first thought about doing this list, we thought about doing individual icon packs. Unfortunately (or perhaps, fortunately), there are hundreds of amazing icon pack apps out there so instead, we decided to showcase the best icon pack developers. Each of them have multiple packs to choose from. Enjoy!

10 best icon packs for Android (by developer)Benas Dzimidas

[Price: Free / $1.39]
Benas Dzimidas is an icon pack developer with a lot of talent. The icon packs Benas is most known for include the Rondo icon pack, the Lai icon pack, and the Toca UI icon pack. Rondo is flat, round, and Material inspired and Toca UI is similar except they are rounded squares instead of round. Both are excellent options. The Lai pack are rectangular with muted colors and have over 2200 icons included. The icon packs also include wallpapers and some of them have Muzei support as well. It’s a good option if you want icon packs with simple designs.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)GSeth

[Price: Varies]
Next up is an icon dev named GSeth. Included in GSeth’s repertoire are some fun packs like Circlons, Vion, Vibion, Ruggy, Ruggon, and Viby. The icons themselves are insanely highly rated and most present with a more sophisticated and minimal look than many others although you can find some fun designs among the various packs. GSeth does do some interesting ones though, like Rugo which is a crumpled paper and dirt style which looks awesome. To see GSeth’s collective work, click the Google Play button below.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)Hooolm

[Price: Varies]
Hooolm is an icon pack developer recommended to us by our readers and it turns out that Hooolm is a pretty good icon pack dev. Hooolm seems to enjoy doing glass-style icons and that’s most pronounced with the Smoke and Glass, Spatial Glass, and Tinted Glass icon packs. Unlike many, Hoolm doesn’t shy away from doing 3D icons, but still manages to keep them classy and sophisticated. They’re definitely worth a look.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)Kovdev

[Price: Varies]
Kovdev is a unique developer. S/he doesn’t have too many icon packs but it seems like whatever Kovdev releases gets put in the headlines. As one of the few devs that have had an icon pack go viral, you can imagine what kind of quality you’re looking at. The big ones by Kovdev are Nox, Domo, Stark, and Lumos. Nox is sharp and modern while Lumos is softer and muted and Domo is a marriage of complexity and simplicity. Stark is a newer icon pack that features hard squares and vibrant colors. All of them have nearly 2000 icons and there are others by Kovdev if you want to check them out.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)Samer Zayer

[Price: Varies]
Samer Zayer features a little more out of the box thinking while still staying in popular designs. You can find highly rated glass, flat, neon, paper, and brushed metal icon packs that have all garnered a number of downloads and high reviews from users. Most of the icon packs have well over 1000 icons and we especially liked Samer’s Glass icon pack along with the Flatee icon pack. Many of the icons come in the form of theme packs so you’ll need a third party launcher like Apex or Nova but you usually need a launcher like that in order to use icon packs anyway!

Get it now on Google Play!

See also:

15 best Android apps of 2016

6 days ago

10 best icon packs for Android (by developer)sikebo

[Price: Free / $0.99]
Another icon pack developer our fans told us about is sikebo. S/he has done a variety of awesome icon packs including Matertialistik, Retrorika, and fl3D. Materialistik is, as you probably expected, based on Material Design and has a ton of colorful icons. Retrorika still follows the Material Design theme, but uses muted colors and retro color combinations to give your home screens a vintage look. The fl3D icon pack is unique in that it’s a 3D icon pack which is rare these days, but it looks sharp. The prices vary but most of them are either free or $0.99.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)SixtyFour ThirtyTwo

[Price: Free / $1.00]
SixtyFour ThirtyTwo is an icon pack developer that tries to think outside of the box. Most developers have a flat, Material Design inspired icon pack and this dev really doesn’t. The best ones are Min, Minoir, and Redux. Min and Minoir are minimalist icons that keep things small and out of the way with the only difference being that Min is white while Minoir is black. Redux is in development (at the time of this writing), but is showing a lot of promise with muted colors and unique combinations. Most icon packs are either free or $1.00.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)Stealthychief

[Price: Varies]
Stealthychief has a number of themes and icon packs out there for a variety of platforms including most launchers, GO Keyboard, and icon packs. Stealthychief generally goes with more obscure stuff like the Aloha icon pack which adds a bit of tropical flair to your icons. However, there is a selection of monotone icons in a couple of colors as well as more popular designs like metal, gold, wood, platinum, and others. Browsing through Stealthychief’s app list is a veritable crap shoot of styles and ideas and that’s what makes it so enjoyable.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)Tha PHLASH

[Price: Varies]
Tha PHLASH is one of the most iconic (get it?) icon pack developers out there and it’s because most of his packs are ridiculous and memorable. You can buy Tha PHLASH’s icons two ways. There is the Google Play collection (click the button below) or you can go to his official icon website to pick them up there too. They are some flashy and sophisticated icons and would do well to fit any theme.

Get it now on Google Play!

10 best icon packs for Android (by developer)

10 best icon packs for Android (by developer)Vertumus

[Price: Free / $0.99]
When we first released this list back in 2014, the fact that we didn’t include Vertumus made a few people angry and we can see why. Vertumus has a ton of icon packs but the highlights include Umbra, Elun, Cryten, Vopor, and Rewun. Actually, pretty much everything Vertumus releases rocks a 4.7 rating on Google Play or higher so you can’t go wrong with anything. You’ll find pretty much whatever you’re looking for whether it’s colorful and vibrant, muted and flat, and even shapeless designed icons. It’s good work, check it out!

Get it now on Google Play!

10 best icon packs for Android (by developer)

Related best app lists:

If we missed any great icon packs for Android, tell us about them in the comments! To see our complete list of best app lists, click here.

Most apps that use Google Hangouts API will shut down in April

While Google has stated many times that it has no plans to shut down its Hangouts messaging service, it has decided to end support for its third-party developer tools. The company has quietly updated its FAQ for the Google Hangouts API, stating that no new apps will be allow to access those tools.

See also:

Best texting apps and SMS apps for Android

5 days ago

In addition, most of the existing apps that are currently using the Google Hangouts API will no longer work after April 25. There will be a few exceptions, which will include Google’s own Hangouts on Air broadcasting tools like Toolbox, Control Room, and Cameraman, along with business and enterprise oriented apps like Slack that integrate with the API. Finally, apps that support dialing into a call like DialPad and RingCentral will also be allowed to use the API after the expiration date.

In 2016, Google launched new messaging apps like Allo and Duo, and the company has now begun pre-installing Duo on new Android devices, replacing Hangouts. However, both Duo and Allo are currently mobile-only apps, while Hangouts also has PC desktop support, along with deep integrations with other services like Gmail and Google Docs. That makes Hangouts better for its many business and enterprise customers, which Google still wants to support.

Google makes ADB and fastboot available without Android Studio or SDK

Google has made ADB, fastboot, and other Android developer tools available as a standalone download. Previously, accessing these tools necessitated that users download Android Studio or the Android SDK, which meant grabbing files between 290 MB and 1.6 GB in size. Now you can download the platform tools (which contains ADB, fastboot and more) for Windows, MAC and Linux in .zip folders ranging from 3.4-3.7 MB.

ADB and fastboot are go-to tools for Android users who want to do things like unlock the bootloader, or flash an update rather than wait for it over-the-air. The whole development suite that the tools were bundled with in the past wasn’t always required by casual users as it was targeted at developers first and foremost.

See also:

Nexus 6 will get Android 7.1.1 Nougat update in early January

4 hours ago

As the files are coming straight from the source, they should be kept up to date, meaning you won’t need to hunt down the latest versions on third-party sites anymore. Download them via the links below.

The primary developers behind Android N-ify have ended their involvement

The three main people who helped to create the popular Xposed module Android N-ify have now decided to end their direct development involvement. The main developer behind the software, MrWasdennnoch, stated that the main reason for this decision was that he’s “not really interested in the module anymore.” He added that the two biggest contributors to Android N-ify, paphonb and Maxr1998, are leaving the project for similar reasons.

See also:

Xposed framework developer gives us an update on Android Nougat support

November 8, 2016

The first version of Android N-ify launched earlier this year, with the goal of giving phones that could not get the update to Android Nougat some of the features of the OS. In his post on the XDA Developers forums, MrWasdennnoch stated that now that he had completed work on the module’s new notification design and animations, he doesn’t want to work on anything else with Android N-ify.

He added that he had recently flashed Nougat onto his own phone so he had no personal use for the module he had created. It’s also quite time consuming, making sure N-ify works on a wide number of devices, which the developer says has turned the project into “a rather boring and repetitive task.”

While the main team behind Android N-ify may be moving on, the module is still available for download at the Xposed Module Repository site for anyone to access and use, and the source code is also available at GitHub.

Deal: Pay What You Want 2017 Master Game Development Bundle


The AAPicks team writes about things we think you’ll like, and we may see a share of revenue from any purchases made through affiliate links.

Today is the day.

The day you stop letting your game ideas go to waste.

The day you start creating.

Why? Well, because today Tech Deals is having a pay-what-you-want sale in true Humble Bundle style. And what’s in the bundle? 10 of some of the the most popular game development kits available.

These online courses and resources can take you from total coding n00b to semi-professional game developer in no time flat. All you have to do is put in the time to make your dreams a reality.

At its most basic, the 2017 Master Game Development Bundle is two courses: Java Game Development: Create a Flappy Bird Clone and Learn Easy HTML5 Game Development in Construct 2. Those two bad boys you’ll get even if you just fork over $1.

Considering that if you were to buy those two courses together, you’d be paying $158, that’s a pretty killer deal already.

However, if you feel like paying more than the current average (which at the time of writing is hovering around $13.00) then you’ll also get 8 additional kits on top of those, including the popular Unity Android Game Development with Game Art & Monetization course (normally $195 all by itself).

Here’s what you get:

The math geniuses among you may have already put together that if you were to buy all of these courses separately, you would be paying $1,110. That you can snag the whole kit and kaboodle for about $13 is pretty staggering.

However, the nature of these kind of bundles means that the average price will gradually increase over time, so the sooner you jump on it, the better the deal! Click the button below for more information, and get busy creating the games of your dreams!

Check it out!
The AAPicks team only spotlights legitimate, verified deals. If you’re not satisfied with this product, Tech Deals offers a 30-day money-back guarantee. If you have questions or concerns, please reach out at

Working with WebView: displaying web content inside your Android app

When it comes to displaying content inside your Android apps, you’re spoilt for choice, as the Android platform supports a wide range of content – including content pulled straight from external web pages.

There’s many reasons why you might want to display web content inside your latest Android project. Maybe you need to display some complicated data from an external website – instead of going to all that effort of retrieving, processing and then formatting this data, you may decide that it’s easier to simply embed the web page itself in your application’s layout.

Or, maybe you have content that requires frequent updates, such as your company blog, your app’s user manual, or your terms and conditions. If you hard-code this content into your app, then the only way you can update it is by releasing a new version of that app. However, if you host this content online and then display the hosted version inside your app, then you’re free to update this content whenever you want and those changes will appear in your app automatically.

In this tutorial I’ll show you exactly how to embed web content in your Android applications, using WebViews. I’ll also be sharing tips on how to improve the user experience, by enhancing the standard WebView component with some of the features you’d expect from a stand-alone web browser.

And, since designing for different screen configurations is always a big part of Android development, we’ll also be looking at ways to ensure the content you’re displaying inside your WebViews looks good and functions correctly across the full range of Android devices.

Easily add a WebView anywhere in your layout

The WebView component acts like any other Android View, so you can embed it anywhere in your app’s layout. Start by opening the layout resource file where you want to display your WebView, and then add the following:

<?xml version="1.0" encoding="utf-8"?>
<WebView  xmlns:android=""
  android:layout_height="fill_parent" />

You’ll also find a WebView component in Android Studio’s palette.

Working with WebView: displaying web content inside your Android app

Then, in the XML file’s corresponding Activity, you’ll need to obtain a reference to your WebView and specify the URL you want it to display:

//Import the WebView and WebViewClient classes//
import android.webkit.WebView;
import android.webkit.WebViewClient;

public class MainActivity extends Activity {
    protected void onCreate(Bundle savedInstanceState) {

//Get a reference to your WebView//
   WebView webView = (WebView) findViewById(;

//Specify the URL you want to display// 

Alternatively, you can transform your entire Activity into a WebView, by adding the following to that Activity’s onCreate method:

WebView webview = new WebView(this);


If your app is going to be able to load content from an external website, then it needs permission to access the Internet, so open your project’s Manifest and add the following:

<manifest ... >
   <uses-permission android:name="android.permission.INTERNET" />

This is all you need to create a basic WebView, so at this point you can install your project on either your physical Android device or a compatible AVD, and see your WebView in action.

Working with WebView: displaying web content inside your Android app

Enhancing your WebView

Sometimes, the standard WebView component may be sufficient, particularly if you’re only using it to display a single page of web content. However, it’s always a good idea to consider whether there’s any way you can enhance Android’s out-of-the-box WebView.

In this section, I’m going to look at some of the tweaks and extra features you may want to add to your WebViews, and how they can help you deliver a better overall user experience.

Adding web browser features: Web history

When the user can navigate between multiples pages in the same WebView, that WebView maintains a history of all the pages the user has visited, just like a regular web browser. However, if the user wants to navigate back to any of these previous pages, then there’s a problem –  by default pressing the ‘Back’ button on an Android device will always return the user to the previous Activity.

If you think your users might appreciate being able to navigate back through their WebView history, then you can override this default behavior, using the canGoBack method:

public class MainActivity extends Activity {
    private WebView webView = null;
    protected void onCreate(Bundle savedInstanceState) {
        this.webView = (WebView) findViewById(;
        WebSettings webSettings = webView.getSettings();
        WebViewClientImpl webViewClient = new WebViewClientImpl(this);

//Check whether there’s any WebView history that the user can navigate back to//


public boolean onKeyDown(final int keyCode, final KeyEvent event) {

   if ((keyCode == KeyEvent.KEYCODE_BACK) && myWebView.canGoBack()) {
//If there is history, then the canGoBack method will return ‘true’//
       return true;

//If the button that’s been pressed wasn’t the ‘Back’ button, or there’s currently no
//WebView history, then the system should resort to its default behavior and return
//the user to the previous Activity//
  return super.onKeyDown(keyCode, event);

If you allow the user to navigate backwards through their web history, then they might also appreciate being able to move forwards through their WebView history. You implement this behavior using the canGoForward method.

Handling page navigation

By default, whenever the user clicks a hyperlink within a WebView, the system will respond by launching the user’s preferred web browser app and then loading the URL inside this browser. While this is usually the preferred behaviour for links to web pages that you don’t own, there may be certain links that you do want to load inside your WebView. For example, if you’re using a WebView to display your app’s user manual, then you probably don’t want to launch an external web browser as soon as the user tries to move to Page 2 of that manual.

If there’s specific URLs that you want your application to handle internally, then you’ll need to create a subclass of WebViewClient and then use the shouldOverrideUrlLoading method to check whether the user has clicked a “whitelisted” URL.

Let’s look at an example of this in action:

//Create a class that extends WebViewClient//

private class MyWebViewClient extends WebViewClient {
//Implement shouldOverrideUrlLoading//
       public boolean shouldOverrideUrlLoading(WebView view, String url) {

//Check whether the URL contains a whitelisted domain. In this example, we’re checking
//whether the URL contains the “” string//
           if(Uri.parse(url).getHost().endsWith("")) {

//If the URL does contain the “” string, then the shouldOverrideUrlLoading method
//will return ‘false” and the URL will be loaded inside your WebView//
               return false;

//If the URL doesn’t contain this string, then it’ll return “true.” At this point, we’ll
//launch the user’s preferred browser, by firing off an Intent//
          Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
            return true;

The final step is telling your WebView to use this custom WebViewClient, by adding the following code snippet:

WebViewClientImpl webViewClient = new WebViewClientImpl(this);

Prevent your WebView from being destroyed

By default, every time the device’s orientation changes, the system will destroy the current Activity and then recreate it for the new orientation. If this Activity just-so-happens to contain your WebView then this also gets destroyed, which will cause the WebView to reload the current page. If the user has navigated between multiple pages within this WebView, then their browsing history will also be lost.

Most of the time this shouldn’t be a huge problem, but occasionally this behavior may have a negative impact on the user experience – maybe the WebView was displaying a web page that’s particularly time-consuming to load, or maybe you anticipate that your users will rely on being able to move back through their WebView history. If this is the case, then you can prevent the system from destroying and recreating an Activity (and by extension your WebView), by declaring that your Activity will handle the orientation configuration change manually.

However, handing this change manually does come with a pretty big drawback: if you’ve provided alternate resources that are optimized for different screen orientations, such as alternate images and layouts, then the Android system will no longer switch between these resources automatically when the device’s orientation changes – re-assigning these resources becomes your responsibility.

If you’ve weighed up the pros and cons and have decided that preventing your WebView from being destroyed is worth this extra work, then open your project’s Manifest and add a android:configChanges attribute to the Activity in question.

You can then use this attribute to specify what configuration changes your Activity will handle manually – when it comes to WebViews, we’re concerned with the following:

  • Orientation. The device has moved from portrait to landscape mode, or vice versa.

  • screenSize. In Android 3.2 and higher, an orientation change is also classed as a screen size change, as the amount of horizontal screen space and vertical screen space have essentially switched values.

Our finished android:configChanges attribute looks like this:


Now, instead of being destroyed this Activity will receive a call to onConfigurationChanged whenever the device moves between portrait and landscape mode. This Activity will then be passed a Configuration object containing the device’s updated configuration information. You’ll need to acquire this object and then use its fields to determine what changes you need to make to your app’s UI.

You acquire the Configuration object, using the getConfiguration method:

Configuration config = getResources().getConfiguration();

Note that onConfigurationChanged is only called for the configuration changes you specify in your Manifest, via android:configChange. If any other configuration change occurs, then the system will resort to its default behaviour, and will automatically re-assign any resources that have been affected by this change.

Enabling JavaScript

WebViews don’t allow JavaScript by default. If you want to display a web page that uses JavaScript, then you’ll need to enable JavaScript execution by adding the following to your Activity’s onCreate method:

protected void onCreate(Bundle savedInstanceState) {
WebView webView = (WebView) findViewById(;

//Obtain the WebSettings object//
   WebSettings webSettings = webView.getSettings();

//Call setJavaScriptEnabled(true)//

If you’ve designed web content specifically to display in an Android WebView, then once you’ve enabled JavaScript execution you may also want to create an interface between your JavaScript and Android code, using addJavascriptInterface. If you do include this method in your app, then just be aware that when your app is installed on Jelly Bean or earlier, people may be able to use addJavascriptInterface to execute code within your app. If you do decide to use addJavascriptInterface in your project, then you should only call it when your app is running on Ice Cream Sandwich or higher.

Designing web content for Android

So, you’ve implemented a basic WebView and know how to enhance your WebViews with additional behavior and functionality, but if your app is going to provide the best possible user experience then you need to make sure the content being displayed inside those WebViews is optimized for the mobile environment.

While designing web content that can adapt across multiple devices should always be a top priority when you’re creating any web content, designing content for Android WebViews is particularly challenging as the Android platform spans such a huge range of screen configurations.

In this section, I’m going to cover a couple of techniques that can help ensure the web content you’re developing will look good and function correctly inside your Android WebViews.

Using Viewport properties

The Viewport is the rectangular area where the system displays your web page. The size of the Viewport will naturally vary depending on the current screen, but you can set some rules about how the Viewport will render your web content, using Viewport properties.

One particularly useful Viewport property, is content=”width=device-width” which specifies that the web page should be scaled to exactly match the width of the current screen. Adding this property to your web page’s <head> will ensure users can view your web content without having to scroll horizontally – this is particularly important on Android devices, because when was the last time you encountered an Android app that scrolls horizontally?

Scrolling horizontally on the smaller screen of an Android smartphone or tablet feels awkward and unnatural, plus horizontally-scrolling Android apps are so unusual that unless it’s immediately obvious that the user can access more content by scrolling left or right, then they’re unlikely to even attempt to scroll your app in this way.

You use “width=device-width,” plus other Viewport properties by adding them to your web page’s <head> section, for example:

<meta name="viewport" content="width=device-width">

To make sure the user can view your content comfortably on the limited horizontal space of your typical Android smartphone or tablet, you may also want to use the window.devicePixelRatio DOM property to check the current device’s screen density, and CSS media queries to adapt your web content based on the current screen.

Increasing touchable targets

Touch is the primary method of interacting with Android smartphones and tablets, so you’ll need to make sure that your users can easily interact with all your WebView’s content and actions using touch alone.

This may mean increasing the size of your content’s touchable targets, for example although it’s pretty standard practice to display hyperlinks at the same size as the surrounding text on the desktop environment, many users will struggle to hit this kind of small, specific target on the smaller screen of an Android device.

Also, if your content features multiple touchable targets in close proximity to one another, then you may want to move them further apart to make sure your Android users don’t hit the wrong target by accident.

Test everything!

No matter how many tricks and techniques you use to help ensure your web content always renders at an appropriate size and density for the current screen, ultimately there’s no substitute for testing your app.

If the user can view all ten pages of your app’s user manual within a WebView, then you’ll need to thoroughly test all ten pages of your user manual across a range of screen configurations.

Working with WebView: displaying web content inside your Android app

Time-consuming and frustrating it may be, but your users will thank you in the long run!

Wrap Up

In this article we looked at how to quickly and easily insert web content into your applications, using WebViews, and touched on how to design web content that’s optimized for the mobile environment. Let us know in the comments if you plan on using WebViews in your latest Android app!

Unity 5 game engine will get its last update in March, making way for Unity 2017

Mobile, console and PC game developers who work with the Unity engine will see some changes in how it is labeled in the next year. The company revealed that the last major update for its Unity 5 engine cycle will be released in March 2017, and after that the next version will use a year-based date label, or Unity 2017.

See also:

How to create a 3D shooter for Android with Unity

August 25, 2016

In a blog post, Unity said that the switch to a date-based system for its next major engine release better reflects the company’s recent switch to a subscription model. This was done so it can launch new, but smaller, updates on a faster basis, rather than dump a lot of new features in one big update every several months.

Before that happens, however, the Unity team is working to complete the final big update for the current version. Unity 5.6 is now available in a beta build, and and its biggest feature is that it adds support for the more powerful Vulkan graphics API. The final 5.6 version in March will also add support for apps that use Google Cardboard and the company’s new Daydream VR platform.

The first beta of Unity 2017 will be released in April. The company stated it will have a number of new features, including more tools for developers to create better cinematics in their games, along with a “fully multi-threaded job system” that will be able to better use the features in multi-core processors.

CyanogenMod 14.1 now supported on Galaxy S3, Moto X Play and more

CyanogenMod 14.1 nightlies have arrived to another handful of Android devices. The latest CyanogenMod version, based on Android 7.1 Nougat, was introduced in early November and since has been rolled out to a number of popular devices.

The list of newly supported handsets includes:

Yesterday, we reported on the news that CyanogenMod may change its name to LegacyOS (or possible Legacy Android Distribution) following Cyanogen co-founder Steve Kondik’s exit from the company, and followed up with a discussion on where Cyanogen went wrong.

For more on CyanogenMod 14.1, head to our dedicated article at the link where you’ll find out what it is and how to get it.

Deal: Complete Java Programming Bootcamp $39 (ending soon!)


The AAPicks team writes about things we think you’ll like, and we may see a share of revenue from any purchases made through affiliate links.

Okay, the time has come.

You know it, I know it.

It’s time for you to stop just consuming. It’s time for you to start creating.

You’ve always been interested in programming. Maybe you played around with it a bit during school or in your free time. And even though you enjoyed it, and even though you showed talent, you never really committed to it.

And now here you are, spending your time paying attention to all the latest developments in the tech world, but unable to participate in any meaningful way.

What the hell are you waiting for? The bar has never been lower to get into the programming game! You used to have to fork over tuition to get a thorough and quality education in coding. Either that or fumble your way through the learning process through trial and error with a handful of books. But now online classes put all that knowledge right at your fingertips.

What the hell are you waiting for?

For instance, Tech Deals is currently running a huge bundled offer that puts 10 Java programming kits together for a massive discount. This includes the extremely popular course Java Programming from Zero to Hero: Java Completed.

The Complete Java Programming Bootcamp has everything you need to transform from total coding noob to professional-quality developer. But you have to commit!

Complete Java Programming Bootcamp contains:

The human calculators among you may have already surmised that if you were to purchase all of these courses individually, you’d wind up paying $740. Ouch! However, if you grab this bundle while it’s available, you’ll only pay $39.

You’ll have to act quickly, though. This flash offer is expiring very soon (in 9 hours at the time of writing). Click the button below to read more!

Check it Out!

AAPicks operates independently of our ad team. If you have any questions or feedback, please email