Popular Posts

Wednesday, April 27, 2016

Android Match

Android Match


Federal Judge Finds Amazon Was At Fault When It Billed Parents For In-App Purchases Made By Kids

Posted: 27 Apr 2016 03:04 PM PDT

amazon_logo

Here's a bit of a blast from the past. A federal judge has decided that Amazon was in the wrong when it billed parents for in-app purchases made by their kids on its Appstore platform. Both Apple and Google settled this case with the Federal Trade Commission two years ago, but Amazon wanted its day in court. It's didn't go so well.

All three companies were investigated by the FTC following a myriad of complaints from irate parents.

Read More

Federal Judge Finds Amazon Was At Fault When It Billed Parents For In-App Purchases Made By Kids was written by the awesome team at Android Police.


Android Match

Developing for Direct Boot

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Wojtek Kaliciński, Developer Advocate

Starting with Android N, a device that has been powered on can boot into a new mode called Direct Boot before the user has a chance to unlock it for the first time. In this mode, the operating system is fully operational, but access to private app data is limited and only apps that have been updated to be Direct Boot aware can run.

Is Direct Boot right for my app?

Not every app should run in Direct Boot mode, so before you start coding check if your app fits these common use cases:

  • Apps that schedule alarms, such as alarm clocks.
  • Apps that provide important and timely notifications, like messaging apps.
  • Apps that provide services to other apps or the system, such as Accessibility Services.

Please note that this is not an exhaustive list and we look forward to seeing what other kinds of apps can benefit from Direct Boot.

Making your app Direct Boot aware

In order to let your app run before the user unlocks the device, you have to explicitly mark components as being Direct Boot aware in the manifest:


<activity|provider|receiver|service ...
android:directBootAware="true">

You can pick the subset of your app components that need to be Direct Boot aware, but if you are using a custom Application class, it is assumed to be Direct Boot aware if any component inside your app is marked as Direct Boot aware.

For apps that need to run as soon as the system starts in Direct Boot mode, there is a new Intent.ACTION_LOCKED_BOOT_COMPLETED broadcast. All apps will still receive Intent.ACTION_BOOT_COMPLETED after the user unlocks the device.

Using the device protected storage area

To support running apps before the user provides the credentials needed to unlock private app data, all Android N devices now provide two storage locations for data:

  • Credential protected storage, which is the default storage location for all apps, available only after the user has unlocked the device
  • Device protected storage, which is a new storage location that can be accessed at all times when the device is booted, including during Direct Boot

Components of your app that are marked as Direct Boot aware must rely on device protected storage for any data required for their operation during Direct Boot mode. They may still access credential protected storage after the user has unlocked the device.

To access device protected storage you need to create and use a secondary Context object for all file-related APIs:


Context deviceProtectedContext = context.createDeviceProtectedStorageContext();
deviceProtectedContext.openFileInput( ... )

When your app gets updated to a Direct Boot aware version, you might have previously saved Shared Preferences or databases that need to be migrated to device protected storage. You should use Context.moveSharedPreferencesFrom() and Context.moveDatabaseFrom() before accessing them to make sure the app continues to work properly even when data is backed up and restored from older versions or other devices.

Things to watch out for

You should think carefully about what you put in the device protected storage. This should be a minimum set of data that will let your app work during Direct Boot. For example, in a messaging app you could store an access token with a narrow scope that only has access to the number of new messages on your server. All sensitive, private information, like the full message history and a read/write access token, should still be saved in credential protected storage.

Another thing to remember is that during Direct Boot apps can only access other Direct Boot aware apps and components. If your app depends on external Services and Activities, make sure you gracefully handle the situation when they're not available. Intent filters will by default match only components available in the current user state (locked / unlocked). There are two new flags for explicitly telling the Package Manager which components to enumerate: PackageManager.MATCH_DIRECT_BOOT_AWARE and PackageManager.MATCH_DIRECT_BOOT_UNAWARE.

What's next?

Until devices with Android N that support Direct Boot out of the box are released, you can test your apps using Android N Developer Preview builds. On Nexus 5X and Nexus 6P, you can wipe all user data and enable full Direct Boot mode by using Settings > Developer options > Convert to file encryption. Alternatively, you can reboot into bootloader and issue the appropriate fastboot command:


$ adb reboot-bootloader
$ fastboot --wipe-and-use-fbe

Warning: Both methods will perform a factory reset and delete all user data on your device.

Alternatively, you can use an emulated Direct Boot mode. To enable it, set a lock pattern on the device, choose "No thanks" if prompted for a secure start-up screen when setting a lock pattern, and then use the following adb shell commands to enable and disable emulation:


$ adb shell sm set-emulate-fbe true
$ adb shell sm set-emulate-fbe false

Please note that using these commands will cause your device to reboot. You should only be using emulated Direct Boot mode on test devices, as it may cause data loss.

#BuildBetterApps

Follow the Android Development Patterns Collection for more!


Android Match

Android Studio 2.1 supports Android N Developer Preview

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Jamal Eason, Product Manager, Android

With the launch Android N Developer Preview, we wanted to give you an easy and comprehensive way to build, test and validate your apps on the latest release with Android Studio. Built on the speed and feature enhancements of Android Studio 2.0, the stable release of Android Studio 2.1 includes updates to the IDE wizards, build system and Android Emulator so that you can try out new features and APIs of the developer preview including the new Jack compiler and Java 8 language support. In addition to support for the N Developer Preview, Android Studio 2.1 also includes performance improvements to Instant Run which leads to faster edit and deploy build speeds. If you are developing and validating your app with the N Developer Preview or want faster Instant Run speeds, you should download or update on the stable release channel to Android Studio 2.1.

Android Studio 2.1 includes the following new features:

  • N Developer Preview Support: Android Studio 2.1 is the best IDE to test and validate your app with the N Developer Preview. Get the latest versions of the preview SDK, experiment with the new Java 8 support, and gain access to the only official Android Emulator able to run N Developer Preview Emulator System Images to help in your testing.
  • Instant Run: For those of you who enjoyed the fast edit, build and deploy cycle with Android Studio 2.0, Instant Run now can now update incremental changes to your app code significantly faster.

Deeper Dive into the New Features

N Developer Preview

On top of new features and APIs of the N Developer Preview, Android Studio 2.1 release includes support for the new Jack compiler and support for Java 8. With the Jack compiler, lambdas, method references, compile-time type annotations, intersection types and type inference are available on all versions of the Android platform. Default and static methods and repeatable annotations are available on Android N and higher. To use Java 8 language features when developing with the N Developer Preview, you need to use the Jack compiler. The New Project Wizard [File→ New→ Project] generates the correct configurations for projects targeting the N.

Getting started with development is as easy generating a new project or updating a few settings in your existing project. Once you are ready to test, you can create a fresh Android Virtual Device (AVD) and run your app on the N Developer Preview using the new Android Emulator.


N Developer Preview on the new Android Emulator

Instant Run & General Build Performance Improvements

Instant Run and general build speed are now faster with two new features: incremental Java compilation and in-process dex.

In previous versions of Android Studio, a single line of Java code change will cause all the Java sources in the module to be recompiled. Now in Android Studio 2.1, incremental Java compilation is enabled by default to reduce compilation time by compiling only what is needed.

We are also speeding up build times by using in-process dex, which converts class files to dex files within the Gradle daemon process. This avoids the costly processing operation of creating separate dex processes. To use this feature, you will need to increase the amount of memory available to the Gradle daemon to at least 2GB (1 GB is the default). This feature will help speed up both incremental and full builds.

We'd appreciate your feedback as we continue to improve Instant Run and general build performance. We are going to keep working on making build times even faster in coming releases. Click here to learn even more about the build changes.

What's Next

Update

If you are using a previous version of Android Studio, you can check for updates on the Stable channel from the navigation menu (Help → Check for Update [Windows/Linux] , Android Studio → Check for Updates [OS X]). If you need a new copy of Android Studio, you can download it here.

Test and Validate Apps with N Developer Preview

After you update to or download Android Studio 2.1 and you want to test and develop your apps with the N Developer Preview, create a fresh Android Virtual Device (AVD) for the new Android emulator, and check out these additional setup instructions.

We appreciate any feedback on things you like, issues or features you would like to see. Connect with us -- the Android Studio development team -- on our Google+ page or on Twitter.


Android Match

Building TV Channels

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Josh Gordon, Developer Advocate

Channel surfing is a popular way of watching TV. You pick up the remote, lean back, and flip through channels to see what's on. On Android TV, app developers can create their own channel-like experiences using the TV Input Framework.

To the user, the channels you create look and feel just like regular TV channel. But behind the scenes, they stream video over the internet. For example, you can create a channel from a video playlist.

Watch this DevByte for an overview of how to build to a channel, and see the sample app and developer training for more info. The sample shows how to work with a variety of media formats, including HLS, MPEG-Dash, and HTTP Progressive.



If you already have an app that streams video, consider also making your content available as a channel. It's a great opportunity to increase engagement. We're excited to see what you develop, and look forward to seeing your content on the big screen!


Android Match

Protecting against unintentional regressions to cleartext traffic in your Android apps

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Alex Klyubin, Android Security team

When your app communicates with servers using cleartext network traffic, such as HTTP, the traffic risks being eavesdropped upon and tampered with by third parties. This may leak information about your users and open your app up to injection of unauthorized content or exploits. Ideally, your app should use secure traffic only, such as by using HTTPS instead of HTTP. Such traffic is protected against eavesdropping and tampering.

Many Android apps already use secure traffic only. However, some of them occasionally regress to cleartext traffic by accident. For example, an inadvertent change in one of the server components could make the server provide the app with HTTP URLs instead of HTTPS URLs. The app would then proceed to communicate in cleartext, without any user-visible symptoms. This situation may go unnoticed by the app's developer and users.

Even if you believe your app is only using secure traffic, make sure to use the new mechanisms provided by Android Marshmallow (Android 6.0) to catch and prevent accidental regressions.

New protection mechanisms

For apps which only use secure traffic, Android 6.0 Marshmallow (API Level 23) introduced two mechanisms to address regressions to cleartext traffic: (1) in production / installed base, block cleartext traffic, and (2) during development / QA, log or crash whenever non-TLS/SSL traffic is encountered. The following sections provide more information about these mechanisms.

Block cleartext traffic in production

To protect the installed base of your app against regressions to cleartext traffic, declare android:usesCleartextTraffic="false" attribute on the application element in your app's AndroidManifest.xml. This declares that the app is not supposed to use cleartext network traffic and makes the platform network stacks of Android Marshmallow block cleartext traffic in the app. For example, if your app accidentally attempts to sign in the user via a cleartext HTTP request, the request will be blocked and the user's identity and password will not leak to the network.

You don't have to set minSdkVersion or targetSdkVersion of your app to 23 (Android Marshmallow) to use android:usesCleartextTraffic. On older platforms, this attribute is simply ignored and thus has no effect.

Please note that WebView does not yet honor this feature.

And under certain circumstances cleartext traffic may still leave or enter the app. For example, Socket API ignores the cleartext policy because it does not know whether the data it transmits or receives can be classified as cleartext. Android platform HTTP stacks, on the other hand, honor the policy because they know whether traffic is cleartext.

Google AdMob is also built to honor this policy. When your app declares that it does not use cleartext traffic, only HTTPS-only ads should be served to the app.

Third-party network, ad, and analytics libraries are encouraged to add support for this policy. They can query the cleartext traffic policy via the NetworkSecurityPolicy class.

Detect cleartext traffic during development

To spot cleartext traffic during development or QA, StrictMode API lets you modify your app to detect non-TLS/SSL traffic and then either log violations to system log or crash the app (see StrictMode.VmPolicy.Builder.detectCleartextNetwork()). This is a useful tool for identifying which bits of the app are using non-TLS/SSL (and DLTS) traffic. Unlike the android:usesCleartextTraffic attribute, this feature is not meant to be enabled in app builds distributed to users.

Firstly, this feature is supposed to flag secure traffic that is not TLS/SSL. More importantly, TLS/SSL traffic via HTTP proxy also may be flagged. This is an issue because as a developer, you have no control over whether a particular user of your app may have configured their Android device to use an HTTP proxy. Finally, the implementation of the feature is not future-proof and thus may reject future TLS/SSL protocol versions. Thus, this feature is intended to be used only during the development and QA phase.

Declare finer-grained cleartext policy in Network Security Config

Android N offers finer-grained control over cleartext traffic policy. As opposed to android:usesCleartextTraffic attribute, which applies to all destinations with which an app communicates, Android N's Network Security Config lets an app specify cleartext policy for specific destinations. For example, to facilitate a more gradual transition towards a policy that does not allow cleartext traffic, an app can at first block accidental cleartext only for communication with its most important backends and permit cleartext to be used for other destinations.

Next steps

It is a security best practice to only use secure network traffic for communication between your app and its servers. Android Marshmallow enables you to enforce this practice, so give it a try!

As always, we appreciate feedback and welcome suggestions for improving Android. Contact us at security@android.com. HTTPS, Android-Security


Android Match

An Outsourcing Playbook for Android development

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Rupert Whitehead, Developer Relations

We recently updated The Secrets to App Success on Google Play with tools and tips to help app and game developers grow successful businesses on Google Play. However, many great apps are created by agencies and freelancers on behalf of companies. Today, we're releasing a new playbook to help companies of any size who are considering outsourcing their Android app development.

How do you choose an agency? What are the pitfalls you should avoid? What can you do to make your app successful? These are some of the questions tackled by the new Outsourcing Playbook that you can read on Google Play.


Let us know your feedback

Once you've checked out the guide, we'd love to hear your feedback so we can continue to improve our developer resources and support. Let us know what you think.


Android Match

The Google Play Awards coming to Google I/O

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Purnima Kochikar, Director, Apps and Games Business Development, Google Play

Google Play has seen tremendous growth over the past year, reaching more than 1 billion Android users across 190 countries. As a way to recognize our incredible developer community and highlight some of the best apps and games, we're kicking off our first-ever Google Play Awards.

The program will showcase five nominees across 10 award categories and feature them in a dedicated collection on Google Play. Nominees were selected by a panel of experts on the Google Play team based on criteria emphasizing app quality, innovation, and having a launch or major update in the last 12 months. The winners of each category will be announced at Google I/O in May.

The full list of categories and nominees are below:

Standout Startup

Apps from new developers that offer a unique experience while achieving strong install growth. And the nominees are...

Dubsmash
Hopper
Musical.ly
Robinhood
Vrse

Standout Indie

Games from indie developers that focus on artistic design, high quality and innovative gameplay. And the nominees are...

Alphabear
Alto's Adventure
Fast like a Fox
Neko Atsume: Kitty Collector
Prune

Best Families App

Apps or games with family friendly design that encourage creativity and exploration. And the nominees are...

Card Wars - Adventure Time
LEGO Jurassic World™
My Very Hungry Caterpillar
Thinkrolls 2
Toca Nature

Best Use of Material Design

First-class implementation of material design concepts that deliver an immersive and innovative user experience. And the nominees are...

Bring!
Robinhood
The Fabulous
Todoist
Vevo

Best Use of Google Play Game Services

High quality games with several strong GPGS feature implementations. And the nominees are...

Sea Battle 2
Table Tennis Touch
Tapventures
TowerMadness 2
Zombie Highway 2

Early Adopter

Early adopter of a nascent technology or platform, providing a delightful user experience. And the nominees are...

Glide
Mechanic Escape
Minecraft: Story Mode
World Around Me
Zumper

Go Global

Apps or games with great localization and culturalization, or subject matter appeal, across multiple regions. And the nominees are...

Dragon Ball Z Dokkan Battle
Freeletics Bodyweight
Memrise
Musixmatch
Pokémon Shuffle Mobile

Most Innovative

Apps or games offering a highly engaging novelty experience or unique benefit. And the nominees are...

Fast like a Fox
NYT VR
SmartNews
The Fabulous
This War of Mine

Best App

A true representation of beautiful design, intuitive UX and high user appeal, quality and rating. And the nominees are...

BuzzFeed News
Colorfy
Houzz
TuneIn Radio
Yummly

Best Game

Games with strong mechanics, informative tutorial, broad appeal and tasteful design. And the nominees are...

Alphabear
Clash of Kings
Clash Royale
MARVEL Future Fight
Star Wars™: Galaxy of Heroes

Join us live at the ceremony on May 19th at 7:00 pm PDT on stage 7 at Google I/O or via the live stream. You can also track the conversation on Twitter and G+ using the hashtags #io16.


Android Match

Build beautifully for Android Wear’s Round Screen using API 23’s -round identifier

Posted: 27 Apr 2016 02:30 PM PDT

Posted by Hoi Lam, Android Wear Developer Advocate

Android Wear is about choice. From the beginning, users could choose the style they wanted, including watches with circular screens. With Android Wear API 23, we have enabled even better developer support so that you can code delightful experiences backed by beautiful code. The key component of this is the new round resource identifier which helps you separate resource files such as layouts, dimens between round and square devices. In this blog post, I will lay out the options that developers have and why you should consider dimens.xml! In addition, I will outline how best to deal with devices which have a chin.

Getting started? Consider BoxInsetLayout!

If all your content can fit into a single square screen, use the BoxInsetLayout. This class has been included in the Wearable Support Library from the start and helps you put all the content into the middle square area of the circular screen and is ignored by square screens. For details on how to use the BoxInsetLayout, refer to the Use a Shape-Aware Layout section in our developer guide.

Without BoxInsetLayout
With BoxInsetLayout

Goodbye WatchViewStub, Hello layout-round!

Developers have been able to specify different layouts for square and round watches using WatchViewStub from the beginning. With Android Wear API 23, this has become even easier. Developers can put different layouts into layout-round and layout folders. Previously with WatchViewStub, developers needed to wait until the layout was inflated before attaching view elements, this added significant complexity to the code. This is eliminated using the -round identifier:

 Pre Android Wear API 23 - WatchViewStub (4 files)

1. layout/activity_main.xml

<?xml version="1.0" encoding="utf-8"?>
<android.support.wearable.view.WatchViewStub
xmlns
:android="http://ift.tt/nIICcg"
xmlns
:app="http://ift.tt/GEGVYd"
xmlns
:tools="http://ift.tt/LrGmb4"
android
:id="@+id/watch_view_stub"
android
:layout_width="match_parent"
android
:layout_height="match_parent"
app
:rectLayout="@layout/rect_activity_main"
app
:roundLayout="@layout/round_activity_main"
tools
:context="com.android.example.watchviewstub.MainActivity"
tools
:deviceIds="wear"></android.support.wearable.view.WatchViewStub>

2. layout/rect_activity_main.xml - layout for square watches

3. layout/round_activity_main.xml - layout for round watches

4. MainAcitivity.java


protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView
(R.layout.activity_main);
final WatchViewStub stub = (WatchViewStub) findViewById(R.id.watch_view_stub);
stub
.setOnLayoutInflatedListener(new WatchViewStub.OnLayoutInflatedListener() {
@Override
public void onLayoutInflated(WatchViewStub stub) {
mTextView
= (TextView) stub.findViewById(R.id.text);
}
});
}

 After Android Wear API 23 - layout-round (3 files)

1. layout-notround/activity_main.xml - layout for square watches

2. layout-round/activity_main.xml - layout for round watches

3. MainAcitivity.java

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView
(R.layout.activity_main);
mTextView
= (TextView) findViewById(R.id.text);
}

That said, since WatchViewStub is part of the Android Wear Support Library, if your current code uses it, it is not a breaking change and you can refactor your code at your convenience. In addition to the -round identifier, developers also use the -notround idenifier to separate resources. So why would you want to use it in place of the default layout? It's a matter of style. If you have a mixture of layouts, you might consider organising layouts in this way:

  • layout/ - Layouts which works for both circular and square watches
  • layout-round/ and layout-notround/ - Screen shape specific layouts

An even better way to develop for round - values-round/dimens.xml

Maintaining multiple layout files is potentially painful. Each time you add a screen element, you need to go to all the layout files and add this. With mobile devices, you will usually only do this to specify different layouts for phones and tablets and rarely for different phone resolutions. For watches, unless your screen layout is significantly different between round and square (which is rare based on the applications I have seen thus far), you should consider using different dimens.xml instead.

As I experimented with the -round identifier, I found that the easiest way to build for round and square watches is actually by specifying values/dimens.xml and values-round/dimens.xml. By specifying different padding settings, I am able to create the following layout with the same layout.xml file and two dimens files - one for square and one for round. The values used suits this layout, you should experiment with different values to see what works best:

values-round/dimens.xmlvalues/dimens.xml

<dimen name="header_start_padding">36dp</dimen>
<dimen name="header_end_padding">22dp</dimen>
<dimen name="list_start_padding">36dp</dimen>
<dimen name="list_end_padding">22dp</dimen>


<dimen name="header_start_padding">16dp</dimen>
<dimen name="header_end_padding">16dp</dimen>
<dimen name="list_start_padding">10dp</dimen>
<dimen name="list_end_padding">10dp</dimen>


Before API 23, to do the same would have involved a significant amount of boilerplate code manually specifying the different dimensions for all elements on the screen. With the -round identifier, this is now easy to do in API 23 and is my favourite way to build round / square layouts.

Don't forget the chin!

Some watches have an inset (also know as a "chin") in an otherwise circular screen. So how should you can you build a beautiful layout while keeping your code elegant? Consider this design:

activity_main.xml


<FrameLayout
...>
<android.support.wearable.view.CircledImageView
android
:id="@+id/androidbtn"
android
:src="@drawable/ic_android"
.../>
<ImageButton
android
:id="@+id/lovebtn"
android
:src="@drawable/ic_favourite"
android
:paddingTop="5dp"
android
:paddingBottom="5dp"
android
:layout_gravity="bottom"
.../>
</FrameLayout>

If we are to do nothing, the heart shape button will disappear into the chin. Luckily, there's an easy way to fix this with fitsSystemWindows:


<ImageButton
android:id="@+id/lovebtn"
android:src="@drawable/ic_favourite"
android:paddingTop="5dp"
android:paddingBottom="5dp"
android:fitsSystemWindows="true"
...
/>

For the eagle-eyed (middle image of the screen shown below under "fitsSystemWindows="true""), you might noticed that the top and bottom padding that we have put in is lost. This is one of the main side effect of using fitsSystemWindows. This is because fitsSystemWindows works by overriding the padding to make it fits the system window. So how do we fix this? We can replace padding with InsetDrawables:

inset_favourite.xml


<inset
xmlns:android="http://ift.tt/nIICcg"
android:drawable="@drawable/ic_favourite"
android:insetTop="5dp"
android:insetBottom="5dp"
/>

activity_main.xml


<ImageButton
android:id="@+id/lovebtn"
android:src="@drawable/inset_favourite"
android:paddingTop="5dp"
android:paddingBottom="5dp"
android:fitsSystemWindows="true"
...
/>

Although the padding setting in the layout will be ignored, the code is tidier if we remove this redundant code.

Do nothing
fitsSystemWindows="true"
fitsSystemWindows="true"
and use InsetDrawable

If you require more control than what is possible declaratively using xml, you can also programmatically adjust your layout. To obtain the size of the chin you should attach a View.OnApplyWindowInsetsListener to the outermost view of your layout. Also don't forget to call v.onApplyWindowInsets(insets). Otherwise, the new listener will consume the inset and inner elements which react to insets may not react.

How to obtain the screen chin size programmatically

MainActivity.java


private int mChinSize;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView
(R.layout.activity_main);
// find the outermost element
final View container = findViewById(R.id.outer_container);
// attach a View.OnApplyWindowInsetsListener
container.setOnApplyWindowInsetsListener(new View.OnApplyWindowInsetsListener() {
@Override
public WindowInsets onApplyWindowInsets(View v, WindowInsets insets) {
mChinSize
= insets.getSystemWindowInsetBottom();
// The following line is important for inner elements which react to insets
v
.onApplyWindowInsets(insets);

return insets;
}
});
}

Last but not least, remember to test your code! Since last year, we have included several device images for Android Wear devices with a chin to make testing easier and faster:

Square peg in a round hole no more!

Android Wear has always been about empowering users to wear what they want. A major part in enabling this is the round screen. With API 23 and the -round resource identifier, it is easier than ever to build for both round and square watches - delightful experiences backed by beautiful code!

Additional Resources

Why would I want to fitsSystemWindows? by Ian Lake - Best practice for using this powerful tool including its limitations. ScreenInfo Utility by Wayne Piekarski - Get useful information for your display including DPI, chin size, etc.


Android Match

Google Maps v9.25.1 Adds Batch Photo Submission, Puts Contact Addresses In Your Places, And Gives Suggested Searches On Location Pages [APK Download]

Posted: 27 Apr 2016 01:19 PM PDT

mapsdl

Developers usually use version numbers to convey the amount of change an app has gone through from one release to the next. But what does it mean when Google Maps not only jumps over v9.24 entirely, but also skips forward a patch release to give us v9.25.1? Let's assume it's a sign that there are a lot of new features and not too many bugs. This version certainly doesn't disappoint on new features.

Read More

Google Maps v9.25.1 Adds Batch Photo Submission, Puts Contact Addresses In Your Places, And Gives Suggested Searches On Location Pages [APK Download] was written by the awesome team at Android Police.


Android Match

HTC Nexus’ Codenamed M1 And S1

Posted: 27 Apr 2016 12:54 PM PDT

Rumours have been circling for some time now that HTC will be Google's dance partner for not one but two Nexus handsets this year.  While details on both devices are still pretty scarce, we do have a new piece of information courtesy of Evan Blass, aka @evleaks.

According to Mr. Blass, Google has dubbed the upcoming HTC Nexus' the M1 and S1 internally and both will run Android N, not surprisingly.  While there isn't a ton to gather from the names, the M1 name is of some interest.  Prior to this years HTC 10, HTC had named their previous three flagships the HTC One M_.  So perhaps the M1 will take its design cue from the former M series while the S1 will be the larger handset?

Of course this is just my own speculation but something to think about nonetheless.

[Twitter]

The post HTC Nexus' Codenamed M1 And S1 appeared first on Android in Canada Blog.


Android Match

Fresh Meat: 10 new Android apps worth checking out

Posted: 27 Apr 2016 12:53 PM PDT

New apps need lovin' too, right? Every day there are thousands of additions to the Google Play store, but many go unnoticed and never receive the attention they deserve. We've shown in the past that this community can discover great apps and propel them to new heights. Our weekly Fresh Meat column highlights new apps with fewer than 100,000 installs. Browse our new Android app picks below and let us know which ones you enjoy.

Random Flix

Random Flix

Description: Have you ever wanted to watch a show on Netflix, but can't decide what episode to watch? Well then this app is for you! Random Flix allows you to easily search through every available show on Netflix, and then play a random episode! 

 

Radon

Radon

DescriptionSkip QR codes or NFC, Radon lets you share to everyone nearby, as long as you have the app open. As soon as they open Radon on their device, they'll automatically open whatever you shared, on as many devices as you want.

 

Starbucks Keyboard

Starbucks Keyboard

DescriptionThey say emojis are worth 1,000 words, so say it with Starbucks keyboard — the easiest way to show your friends some emoji love via iMessage, Facebook Messenger, WhatsApp, email and more. 

 

Homefront Resistance Network

Homefront Resistance Network

DescriptionThe Homefront Resistance Network is the official Companion App to Homefront: The Revolution – the thrilling, open-world first person shooter from Deep Silver Dambuster Studios coming to Xbox One, PS4 and PC in Spring 2016.

 

xOS Launcher

xOS Launcher

DescriptionEasy to use, light, smooth, beautiful. Are your bored with Android interface? xOS Launcher is for you! All are os9 style: Icon、operating、wallpaper…This Launcher will let you experience the super speedy and smooth operation. We believe Simple is Beautiful.

 

GIPHY

GIPHY

DescriptionThe world's largest library of animated GIFs, now on your mobile phone! GIPHY for Android is the fastest, simplest way to search and share GIFs across all of your favorite social channels.

 

 Samsung Safety Screen

Samsung Safety Screen

DescriptionChildren are spending more time these days watching content on electronic devices for entertainment & education. While devices like tablets and smartphones are adding a lot to their experience of growing up, there is an increasingly problematic behavior of children sitting too close to the devices.

 

Canopy

Canopy

DescriptionShopping on Android has never been so beautiful. Canopy helps you discover beautiful products that are all available for purchase on Amazon.com (US only). We bring boutique curation to the Internet's biggest, most reliable catalog.

 

Airtime – All together now

Airtime - All together now

DescriptionHi! This is Airtime — the best way to stay close to your friends and family anytime, anywhere. Your Airtime rooms help you stay in touch with your groups.

 

WU CM Weather Provider

WU CM Weather Provider

DescriptionThis application is a plugin for CyanogenMod's weather api's, providing real time weather data for any listeners from Weather Underground. It requires at least API level 5 or higher in the CyanogenMod build you're running.

 


Android Match

Rumor: HTC is working on two Nexus devices, the M1 and S1

Posted: 27 Apr 2016 12:53 PM PDT

If a rumor surfacing today started by two trustworthy sources pans out, fans of both HTC and Google's Nexus line of devices are in for a major treat.

According to Evleaks, the king of leaks and rumors, and Android Police, HTC is currently working on two Nexus devices that would theoretically be released this year, the M1 and S1, or Marlin and Sailfish. In the past, Nexus devices have had codenames represented by marine life. Android Police has been hearing Marlin and Sailfish are the next two Nexus devices to be released, matching up nicely with the M1 and S1 codename Evleaks tweeted about this afternoon.

While Evleaks hasn't provided anything further yet, Android Police's information comes from a trusted source in combination with the mention of a Marlin device from a senior Qualcomm engineer. As much as we'd like to see more, these three things make for a pretty convincing rumor. There's been no mention of when we can expect the new Nexus devices, but we would be surprised to see them much later than this fall.

Outside of the Nexus 9, HTC hasn't made a Nexus product since the original Nexus One. With HTC's latest devices receiving good reviews, we're excited to see what the future holds.


Android Match

[APK Download] Google Calendar 5.5 Brings 'Find The Time' For Apps And Edu Accounts And An Inverted Status Bar

Posted: 27 Apr 2016 12:19 PM PDT

calendarhero2

It's Wednesday, so you know what that means: updates! Today, Google Calendar is receiving some attention, with version 5.5 rolling out. The big change is Apps and Edu accounts gaining 'Find The Time', which... finds time for your meetings, unsurprisingly. Unfortunately, it's not available for normal Google accounts, which is a bit of a shame, but it's understandable given the privacy implications of having your calendar available to the public.

'Find The Time' is for people who have a lot of meetings.

Read More

[APK Download] Google Calendar 5.5 Brings 'Find The Time' For Apps And Edu Accounts And An Inverted Status Bar was written by the awesome team at Android Police.


Android Match

Spotify Buys Concert Photo And Video Aggregator 'CrowdAlbum'

Posted: 27 Apr 2016 12:04 PM PDT

Screenshot from 2016-04-27 14-46-24

Spotify has purchased the small San Francisco-based company CrowdAlbum in a move to entire artists. The streaming service plans to use this acquisition to enhance products that help musicians understand and monetize their audiences.

CrowdAlbum launched in 2013. According to Crunchbase, CrowdAlbum only raised $100k from a single investor during its three years of existence. Spotify has not disclosed how much money exchanged hands.

CrowdAlbum provided a platform that aggregated photos and videos from performances.

Read More

Spotify Buys Concert Photo And Video Aggregator 'CrowdAlbum' was written by the awesome team at Android Police.


Android Match

Snapseed Updated To v2.4 With Negative Structure Tool, Improved Histogram, And More

Posted: 27 Apr 2016 11:49 AM PDT

hist

Google's Snapseed app is a rather robust photo editor for being free, and it's getting even better with today's update. Of course, "today" really means whenever Google's staged rollout reaches your device. Luckily, we've got the new version ready for download so you can experience the joys of negative structure. What? That's a thing.

Here's the changelog for this version of the app.

  • Negative Structure in Details
  • Style selectors that automatically scroll to next item
  • Better histogram
  • Bug fixes
  • Optimized on-screen controls for TalkBack accessibility mode

So what is negative structure?

Read More

Snapseed Updated To v2.4 With Negative Structure Tool, Improved Histogram, And More was written by the awesome team at Android Police.


Android Match

Google Calendar for Android Now Helps You Find Mutual Meeting Times

Posted: 27 Apr 2016 11:35 AM PDT

PinterestTwitterGoogle+FacebookFlipboardEvernoteShare

calendar icon A couple of weeks ago Google added a goal setting feature in Google Calendar that helps you identify times to work on personal goals like exercising or reading for pleasure. Today, Google put some of that same technology into a new Google Calendar for Android feature that helps you identify meeting times with colleagues.

The new scheduling feature works with shared Google Calendars created within Google Apps for Education or Google Apps for Work. When you need to schedule a meeting with colleagues with whom you have shared a calendar, simply tap the new "find a time" option that appears when you create the meeting event in your Google Calendar. When you tap "find a time" Google Calendar will identify potential meeting times for spaces that are open on your shared calendars.

The new "find a time" feature in Google Calendar for Android could be a great tool for teachers who work on teams. It could also be useful to guidance counselors and other specialists who need to coordinate times for meeting with teachers and students.

"Find a time" is currently available only through Google Calendar for Android, but could soon be available on iPhones too. 


Android Match

Google Calendar adds ‘Find a time’ feature to make scheduling meetings even easier

Posted: 27 Apr 2016 11:24 AM PDT

Google Calendar continues to bring new features to the table to make it even easier to use and also make it easier for you to schedule your busy days.

Google has officially announced a new feature called "Find a time," which is built specifically for Google Apps for Work and Edu users. It's a pretty simple concept: Simply tap on the Find a time button and Google Calendar will automatically pick out a time that works best for an upcoming meeting, for yourself and for anyone else that's invited to the meeting.

The app looks through the availability of you and those invited and then picks a few different times for you to select as the final meeting date and time. You'll be able to see colleagues' schedules, too.

For the situations where someone's schedule is just too cramped to make it work, "Find a time" will work to tell you who has the conflicting times and work on a reschedule.

Google is positioning the new feature for Work and Edu users for now, because those groups frequently share their calendars with one another for scheduling purposes. The new feature is rolling out for Android users beginning today.

What do you think of the feature?


Android Match

Taichi Panda: Heroes Is A Team-Based Sequel To The Popular Free-To-Play Dungeon Crawler

Posted: 27 Apr 2016 11:05 AM PDT

image (3)It's hard to predict which games among the hundreds of thousands in the Play Store will hit the sweet spot and become a sensation. Taichi Panda, Snail Games' Diablo-style dungeon crawler, is a good example. Since its release a little over a year ago it's gained over five million downloads and an impressive audience of frequent players both free and paid. After a successful soft launch period, the developer is returning to its anthropomorphic well with a sequel called Taichi Panda: Heroes.

Read More

Taichi Panda: Heroes Is A Team-Based Sequel To The Popular Free-To-Play Dungeon Crawler was written by the awesome team at Android Police.


Android Match

Nintendo’s next mobile games are ‘Animal Crossing’ and ‘Fire Emblem’

Posted: 27 Apr 2016 09:54 AM PDT

Nintendo's first foray into games for smartphones and tablets was the oddly-received Miitomo, which is more of a social app than a game, despite having some mini-games in it. That left a lot of people wanting to see some characters from Nintendo's ridiculously big stable of properties, like Mario or Yoshi. Folks waiting for those particular characters will have to continue to wait, though.

Nintendo has officially announced the next big properties arriving on smartphones and tablets: Animal Crossing and Fire Emblem. The titles will be games set within the universes already established by previous titles. Animal Crossing is a lifestyle simulation game which offers players the ability to socialize with other villagers, customize their characters, and more. Fire Emblem typically focuses on tactical RPG action.

It's likely that the new games for mobile devices will share plenty of similarities to the games previously released in each franchise. However, when they'll be released and how much they'll cost, remains a mystery.

The inclusion of Fire Emblem and Animal Crossing is pretty fantastic for Nintendo fans waiting to get more titles on their mobile devices. Of course, the wait for Mario continues.


Android Match

YouTube Redesigns Home, With oBigger Videos And More Relevant Personalizations

Posted: 27 Apr 2016 09:05 AM PDT

ythomehero

Times are a-changin', and so is YouTube's Home on both Android and iOS. It's not quite equivalent to moving houses; more redecorating, giving things a lick of paint where the wallpaper has got a little tatty.

The most noticeable change is videos are getting bigger. Instead of the small, thumbnail-like videos of the past, the video preview now takes up almost the entire width of the screen. This means that fewer videos can now fit in a single scroll - on my Nexus 6P, the old layout could fit six previews, just about, whereas the new design can only fit a measly two.

Read More

YouTube Redesigns Home, With oBigger Videos And More Relevant Personalizations was written by the awesome team at Android Police.


Android Match

Nextbit Robin receiving update to Android 6.0.1; additional features included

Posted: 27 Apr 2016 08:54 AM PDT

Last September, a new player entered the Android market. Nextbit is a company founded by former Google employees, and they created the Robin, a device that sells itself upon cloud storage. While the Robin has fair enough specs, its appeal comes from the company's claim that it will never run out of internal storage. Nextbit uses advanced software within the Robin to determine what should be stored in the cloud and what should be stored on your phone, ensuring that you'll never run out of storage.

While the Robin never made it to the level of being sold by carriers, it's done fairly well just being sold by Nextbit. The company has continued to faithfully maintain the Robin, and today brings in another update to carry that trend on. The Nextbit Robin is now receiving its April update, which includes the notable addition of Android 6.0.1, meaning that Robin users can benefit from improved security and a whole host of new emoji.

The update also brings in processor tweaks for better performance and battery life, an improved camera app which is far faster and takes higher quality photos, and new sound driver tuning by Arkamys, which will improve sound quality through both the speakers and the headphone jack.

It's great to see Nextbit continuing to maintain and improve the Robin through software updates. All in all, this update should bring in some changes that will lead to a stronger overall experience.

Drop a comment down below when you receive the update!


Android Match

State Farm Pocket Agent App Adds Support For Fingerprint Readers On Marshmallow

Posted: 27 Apr 2016 08:05 AM PDT

state

It took a few months, but developers are finally getting in line and adding support for fingerprint readers in Android 6.0. We've seen a few popular apps get support recently, including Chase and Bank of America. The latest app to get support is State Farm's Pocket Agent app.

The fingerprint sensor support isn't the only thing coming in this update to v5.9. The app also gets a slightly redesigned claims interface and other little tweaks.  You can elect to use fingerprint logins when entering your account details.

Read More

State Farm Pocket Agent App Adds Support For Fingerprint Readers On Marshmallow was written by the awesome team at Android Police.


Android Match

Twitter Supports Direct Share On Marshmallow: Send DMs To Your Recent Contacts With One Tap

Posted: 27 Apr 2016 03:50 AM PDT

twitter-direct-share

Twitter has a bit of a love/hate relationship with mobile platforms and Android in particular. On the one hand, it's so aggressively possessive and wants an exclusive relationship devoid of any third-parties, on the other it updates its apps at a nice pace and adds new features to them. Oh well, it did let Android users hang behind iOS more than once, but we're not holding grudges.

After adding a share button to send tweets as Direct Messages, Twitter is working on another feature to make DMs easier to use in its app: Direct Share support on Marshmallow.

Read More

Twitter Supports Direct Share On Marshmallow: Send DMs To Your Recent Contacts With One Tap was written by the awesome team at Android Police.


Android Match

CyanogenMod Releases Weather Underground Weather Provider Plugin

Posted: 27 Apr 2016 03:20 AM PDT

weather-underground-cm

A couple of weeks ago, CyanogenMod nightlies added a new Weather settings panel that left some of its users confused. The panel had no options and all you could see was that there were "No weather provider services installed." It looked like CyanogenMod was ready to start allowing different third-party weather providers into its homescreen and lockscreen widgets, instead of forcing users to go with whichever default option was being used, but that the option was still being tested.

Read More

CyanogenMod Releases Weather Underground Weather Provider Plugin was written by the awesome team at Android Police.


Android Match

Google Releases An Android TV Remote App For iOS

Posted: 27 Apr 2016 02:20 AM PDT

android-tv-ios-app

Android TV may not have caught like wildfire, but it's still an affordable and interesting set-top box offering. If you've already bought a Nexus Player or SHIELD TV unit for example and you've been met by glares from a couple of your family members who own iPhones and iPads and can't control the darn thing with their devices, then you're in for a small surprise today.

Almost two years after it first unveiled Android TV, Google is now releasing the corresponding remote control application to the iTunes App Store.

Read More

Google Releases An Android TV Remote App For iOS was written by the awesome team at Android Police.


Android Match

No comments:

Post a Comment