15 Dec 2019

feedTalkAndroid

Google Maps testing bottom tab bar instead of hamburger menu

Google continues to slowly roll out Material Design 2.0 visual refreshes to its apps with Maps finally ditching its hamburger menu for a bottom tab bar. Amongst Google's large array of mobile apps have a few issues with visual design consistency, and the company continues to slowly bring them together, the latest being in Maps […]


Come comment on this article: Google Maps testing bottom tab bar instead of hamburger menu

Visit TalkAndroid

15 Dec 2019 11:20am GMT

14 Dec 2019

feedTalkAndroid

Lenovo C340 (11″) Chromebook review: Just the basics

Meet the Lenovo C340 11″ Chromebook. It's a solid little contender in the market of Chrome-powered laptops, and Lenovo is hoping that there's enough value in its $309 price tag to make it worth checking out over the competitors. We got our hands on one for a few weeks to see what all the fuss […]


Come comment on this article: Lenovo C340 (11″) Chromebook review: Just the basics

Visit TalkAndroid

14 Dec 2019 3:45pm GMT

Stable One UI 2.0 on Android 10 begins rollout to Canadian S10’s on Monday

Samsung continues improving their update game with the imminent rollout of Android 10 to Canadians only three months after its initial launch, with the One UI 2.0 refresh in tow. Gone are the days of Samsung taking inordinate half-dozens of months and even longer to update their phones (hopefully permanently) with the company having steadily […]


Come comment on this article: Stable One UI 2.0 on Android 10 begins rollout to Canadian S10's on Monday

Visit TalkAndroid

14 Dec 2019 12:37pm GMT

feedAndroid Community

Samsung Galaxy M20, M30 ready to receive stable Android 10

Don't think Samsung has forgotten about your Galaxy M30 and Galaxy M20. The South Korean tech giant has just released the Android 10 update for the Galaxy M phones. This one comes early because the schedule we shared with you listed the M20 and M30 under January. This particular update is actually special because it's […]

14 Dec 2019 6:11am GMT

feedTalkAndroid

Samsung Galaxy M20 and M30 get an update to Android 10 with One UI 2.0

The Galaxy S11 is on the horizon, which means it's time for Samsung to start trickling their latest software into their current phone lineup to test things out before the big show. The latest in the enormous Galaxy family to receive Android 10 with One UI 2.0 is the Galaxy M20 and M30, which are […]


Come comment on this article: Samsung Galaxy M20 and M30 get an update to Android 10 with One UI 2.0

Visit TalkAndroid

14 Dec 2019 3:06am GMT

Google Assistant picks up a new Interpreter mode for when you travel abroad

Google Assistant has learned a new party trick, and it's one that frequent flyers will appreciate. Your digital assistant will soon be able to be your own personal translator and interpreter wherever you are, and it looks pretty seamless. To get started, simply ask, "Hey Google, be my French translator" or "Hey Google, help me […]


Come comment on this article: Google Assistant picks up a new Interpreter mode for when you travel abroad

Visit TalkAndroid

14 Dec 2019 2:56am GMT

Google adds verified SMS and spam protection to Messages

Google is rolling out a few improvements to the Messages app on Android that will help make your texting experience a little safer, although it's not quite related to the RCS rollout that's been making waves lately. Nope, instead we're getting two new, distinct features: Verified SMS conversations, and spam protection. Verified SMS for businesses […]


Come comment on this article: Google adds verified SMS and spam protection to Messages

Visit TalkAndroid

14 Dec 2019 2:42am GMT

feedAndroid Community

AT&T 5G coverage launches in ten markets in the US

AT&T is serious with 5G technology. The mobile carrier has been working to expand its 5G coverage for the past few months. It's only now that we are sharing the good news that AT&T 5G is now ready for more consumers in about ten markets in the United States. That is not a lot compared […]

14 Dec 2019 12:00am GMT

13 Dec 2019

feedAndroid Community

Messages will now get Verified SMS and Spam Protection

Carriers and OEMs are doing their best to help consumers with all those annoying, disruptive, and sometimes dangerous spam and robocalls. But what about protection from nefarious entities that will use messages to trick you? Android wants to bring a "safer messaging experience" to those using the Messages app and its Rich Communication Services (RCS) […]

13 Dec 2019 11:00pm GMT

Facebook and Disney bring Star Wars-Themed Messenger effects

We're a week away from the much-hyped 9th film in the Star Wars trilogy of trilogies and so all marketing efforts are reaching fever pitch over the next few days. If you are a fan of this film franchise and you use the Facebook Messenger app a lot, you'll be happy to know that they're […]

13 Dec 2019 10:00pm GMT

feedTalkAndroid

Microsoft Your Phone app can make phone calls on all Android phones now

Microsoft has been steadily working on the Your Phone app for Windows 10 that brings some Apple-esque integration to your workflow. It syncs up your Android device with your Windows 10 computer, allowing you to see messages and notifications, plus make phone calls right from your computer even if you aren't directly using your phone. […]


Come comment on this article: Microsoft Your Phone app can make phone calls on all Android phones now

Visit TalkAndroid

13 Dec 2019 5:21pm GMT

feedAndroid Community

Galaxy Note 9, S9’s Android 10 brings Biometric API for the irises

The Samsung Galaxy S9 and Galaxy Note 10 are ready to receive the Android 10 OS Beta. The update has been announced ready for the United States yesterday after rolling out in other markets. We've mentioned the major features and improvements but we've forgotten one important detail: the iris scanner on the said phones has […]

13 Dec 2019 3:00pm GMT

feedTalkAndroid

Samsung Galaxy Fold sells over 1 million units, paving the way for more foldable smartphones

The Galaxy Fold had a ton of issues around launch, and it was delayed several times while Samsung tried to get everything figured out. On top of that, it's one of the most expensive phones on the market with a price tag right around $2000, so on paper, it was never going to be a […]


Come comment on this article: Samsung Galaxy Fold sells over 1 million units, paving the way for more foldable smartphones

Visit TalkAndroid

13 Dec 2019 2:13pm GMT

feedAndroid Community

OPPO Find X2 to have an advanced camera with focus on pixels

OPPO is one of those more prolific OEMs today. It's not yet number one in China but it is certainly one of the more popular brands. It is known for coming up with more innovative designs and technology. Some of the latest OPPO phones we've featured are the OPPO Reno 3 Pro 5G that will […]

13 Dec 2019 12:00pm GMT

Samsung Galaxy Fold sales hit one million units

The Samsung Galaxy Fold may not be fast-selling compared to other premium models from the South Korean tech giant but we know it quickly sold out in its home country. Of course, that is expected in any home country and we know how Koreans are very supportive of their own products. The foldable phone was […]

13 Dec 2019 10:38am GMT

You can now make calls from your PC on Your Phone app

The Your Phone app was created so that when you're working on your PC, you can put your phone away and just focus on the task you're doing. One major thing was missing from it to make it fully functional but now the day has come when it's almost fully complete. Microsoft announced that you […]

13 Dec 2019 9:00am GMT

Samsung Galaxy A51, Galaxy A71 introduced with quad rear cameras

Samsung fans have been waiting for this: the Galaxy A51. It was recently teased on a video and we weren't sure if it's also the Galaxy A71. Early image renders presented quad cameras. It is also thought to be the Galaxy Note 10 Lite. And now, the moment of truth as the South Korean tech […]

13 Dec 2019 7:43am GMT

feedTalkAndroid

Check out the newly announced Samsung Galaxy A51 and A71, complete with Infinity-O display and crazy camera module

Samsung has taken the wraps off of the Galaxy A51 and Galaxy A71 phones, prepping their 2020 lineup of mid-range devices. These also very likely hint at what we can expect out of the Galaxy S11 family, especially with that insane camera module on the back. Galaxy A51 The Galaxy A51 is the more affordable […]


Come comment on this article: Check out the newly announced Samsung Galaxy A51 and A71, complete with Infinity-O display and crazy camera module

Visit TalkAndroid

13 Dec 2019 3:43am GMT

Samsung rumored to launch Galaxy S11 and more folding phones on February 18, 2020

If you have February 18 pegged as the Galaxy S11 announcement date in your office betting pool, you might win some cash. Ice Universe, who is typically spot on with Samsung leaks, seems to think that's the date for Samsung to unveil what's next for the Galaxy series. Oh, looks like there will be some […]


Come comment on this article: Samsung rumored to launch Galaxy S11 and more folding phones on February 18, 2020

Visit TalkAndroid

13 Dec 2019 3:26am GMT

RIP Exynos; Samsung might be offering the Snapdragon 865 Galaxy S11 in more markets than usual

Samsung typically offers two models of their flagship phones each year. Some markets use Samsung's in-house Exynos processors, while others get Qualcomm's Snapdragon 865 chips. Perhaps most importantly, the US models almost exclusively rely on Qualcomm's chips due to patent issues and compatibility with US carriers. Snapdragon vs Exynos There's always some debate about performance […]


Come comment on this article: RIP Exynos; Samsung might be offering the Snapdragon 865 Galaxy S11 in more markets than usual

Visit TalkAndroid

13 Dec 2019 3:19am GMT

Google Chrome will start alerting you if your passwords have been compromised

Passwords are a dangerous subject these days. Not everyone uses a password manager (but you should be!) and if any of your accounts are compromised, you might be totally oblivious to it. That means that same password you've been using since 2012 is all over the internet and way too many people know it by […]


Come comment on this article: Google Chrome will start alerting you if your passwords have been compromised

Visit TalkAndroid

13 Dec 2019 3:12am GMT

Nokia C1 brings a rebranded Android Go experience to select markets

Nokia has officially announced the C1, reviving an old-school naming scheme from a previous life. The phone's not really similar to that older device, though, but instead offers Android Go at an affordable price for certain markets. So what makes the Nokia C1 tick? It uses a 5.45-inch display with reinforced glass, a quad-core 1.3GHz […]


Come comment on this article: Nokia C1 brings a rebranded Android Go experience to select markets

Visit TalkAndroid

13 Dec 2019 3:06am GMT

feedAndroid Community

Pixel 4, other Android devices to get Resume on Reboot feature

The Pixel 4 is getting some update that will make future OTA updates more seamless. Other Android phones can also benefit from this. Google has been working on the 'Resume on Reboot' feature that will allow the updates to run when you restart your phone. Usually, an automatic update starts and installs but in some […]

13 Dec 2019 1:30am GMT

Tasker 5.9 update now available for download

Tasker regularly receives updates whether minor or major. The last one was released last month and that is the Tasker 5.9.beta.8-a preview of the new version just announced. Tasker 5.9 is now ready and is described to be a game-changer with all the features, bug fixes, and improvements. This particular update is now on the […]

13 Dec 2019 12:30am GMT

12 Dec 2019

feedAndroid Community

Android 10 beta for unlocked Galaxy S9,Note 9 now ready in the US

The next Samsung phones getting the Android 10 One UI 2.0 beta build are the Galaxy S9 and the Galaxy Note 9. We've only been waiting for this. Actually, it started rolling out a few weeks ago but only for a few markets. The United States is getting the same just now for the unlocked […]

12 Dec 2019 5:00pm GMT

AR Zone brings Samsung’s augmented reality features in one place

If you have a lot of similar features that can be put under one group, you will probably create just one section for it to avoid confusion. Well, Samsung didn't do that in the first place and so you have various augmented reality features all over the device. But they've now finally come to their […]

12 Dec 2019 3:30pm GMT

feedTalkAndroid

Report claims not many people are buying $1000 smartphones; are you one of them?

Smartphone prices have ballooned in the last few years, with $1000 being the "standard" price for a flagship phone, and many devices going well over that. 5G and folding phones inflate that cost even more, making phones much more expensive than they've ever been. But according to an NPD report, not many consumers are buying […]


Come comment on this article: Report claims not many people are buying $1000 smartphones; are you one of them?

Visit TalkAndroid

12 Dec 2019 3:21pm GMT

feedAndroid Community

New Moto 360 up for pre-order, not made by Motorola

A new Moto 360 is coming but sorry to say, it is not from Motorola. Don't be confused. No one is making a fake version. Motorola licensed the Moto 360 to a Canadian consumer electronics company as we shared with you back in October. eBuyNow is manufacturing the wearable device and Motorola will still continue […]

12 Dec 2019 2:00pm GMT

Samsung Galaxy S11 will launch on this date, here’s when exactly

Samsung is definitely launching a new premium flagship phone by next year. It is never too early to discuss the Galaxy S11 series that we expect will be available in three variants. Top Chinese leakster Ice universe (@UniverseIce) has been sharing different information about the 2020 flagship smartphone. The Samsung Galaxy S11 was sighted in […]

12 Dec 2019 1:00pm GMT

Motorola One Zoom hits DxOMark with not so favorable scores

The Motorola One series was first introduced last year. To date, we have featured a number of Motorola One phones. They are as follows: Motorola One, Motorola One Power, Motorola One Vision, and the Motorola One Zoom (Motorola One Pro). The latter first appeared back in August with a 48MP quad-camera setup. More image renders […]

12 Dec 2019 12:00pm GMT

11 Dec 2019

feedTalkAndroid

The Android 10 beta is now available for Samsung’s Galaxy S9/9+ and Note 9 in the US

Samsung definitely appears to have stepped up its efforts to provide timely updates to its flagship phones in recent months, even beating Google to the punch with the release of the December Security Patch. Ahead of pushing out a stable Android 10 build to the Galaxy S10 and Note 10 handsets next month, Samsung is […]


Come comment on this article: The Android 10 beta is now available for Samsung's Galaxy S9/9+ and Note 9 in the US

Visit TalkAndroid

11 Dec 2019 6:52pm GMT

10 Dec 2019

feedAndroid Developers Blog

Code Search with Cross References for the Android Open Source Project


Posted by Jeff Bailey, AOSP Engineering Manager; Ally Sillins, AOSP Program Manager; Kris Hildrum, Open Source Code Search Tech Lead; Jay Sachs, Kythe Tech Lead/Manager
Android Screenshot
Searching for "it's all about the code" open source on Google returns more than a million hits. Today we're introducing a public code search tool for the Android Open Source Project (AOSP).
Link: https://cs.android.com
The Android repository is made up of a collection of git repositories which are managed together using our 'repo' tool. Because of this, most tools (such as github, gitweb, etc) can't see the source code the way that it's laid out when it's checked out on the system. In partnership with our colleagues who run Google's internal Code Search and Kythe, we're pleased to present a code search tool that presents a view of all of the Android source code as you actually use it.
Here are some features you can take advantage of starting today:

This is the beginning of our journey, and while today not all parts of the Android code base are cross-referenced, you can expect to see this grow over time.
We hope this makes it easier to engage with the Android code base!

10 Dec 2019 10:00pm GMT

Android 10 on Android TV

Posted by Paul Lammertsma, Developer Advocate

Technology has changed the way media and entertainment is accessed and consumed in the home. While the living room experience is evolving with the addition of smart devices, TVs still remain the largest and most frequently used screen for watching content.

When Android TV was first introduced in 2014, we set out to bring the best of Android into the connected home on the TV. We worked closely with the developer community to grow our content and app ecosystem and bring users the content they want. Since then, we've seen tremendous momentum with OEM and operator partners as well as consumer adoption worldwide.

Today, we are bringing Android API level 29 with the recent performance and security updates made with Android 10 to Android TV. We're excited to provide faster updates through Project Treble and more secure storage with encrypted user data. TLS 1.3 by default also brings better performance benefits and is up to date with the TLS standard. In addition, Android 10 includes hardening for several security-critical areas of the platform.

ADT-3

To make sure developers have the ability to build and test Android TV app implementations on Android 10 prior to rollout, we're introducing a new, developer-focused streaming media device called ADT-3.

With a quad-core A53, 2GB of DDR3 memory and 4Kp60 HDR HDMI 2.1 output, we've designed this pre-certified TV dongle with updates and security patches to help developers design for the next generation of Android TV devices. By providing a way to test on physical and up to date hardware, developers can better validate their Android TV app's compatibility.

Android TV box and remote

ADT-3 will be made available to developers in the coming months for purchase online through an OEM partner.

10 Dec 2019 5:00pm GMT

06 Dec 2019

feedAndroid Developers Blog

Android’s commitment to Kotlin

Posted by David Winer, Kotlin Product Manager

Android and Kotlin banner

When we announced Kotlin as a supported language for Android, there was a tremendous amount of excitement among developers. Since then, there has been a steady increase in the number of developers using Kotlin. Today, we're proud to say nearly 60% of the top 1,000 Android apps contain Kotlin code, with more and more Android developers introducing safer and more concise code using Kotlin.

During this year's I/O, we announced that Android development will be Kotlin-first, and we've stood by that commitment. This is one of the reasons why Android is the gold partner for this year's KotlinConf.

Seamless Kotlin on Android

In 2019, we focused on making programming in Kotlin on Android a seamless experience, with modern Kotlin-first APIs across the Android platform. Earlier this year, we launched a developer preview of Jetpack Compose, a modern UI toolkit for Android built using a Kotlin domain-specific language (DSL). We also incorporated coroutines into several of the flagship Jetpack libraries, including Room and Lifecycle. Finally, we brought Kotlin extensions (KTX) to even more major Google libraries, including Firebase and Play Core.

On the tooling side, we strengthened our commitment to Kotlin in Android Studio and the Android build pipeline. Significant updates to R8 (the code shrinker for Android) brought the ability to detect and handle Kotlin-specific bytecode patterns. Support was added for .kts Gradle build scripts in Android Studio, along with improved Kotlin support in Dagger. We worked closely with the JetBrains team to optimize support for the Kotlin plugin, and make the Kotlin editing experience in Android Studio fluid and fast.

Better Kotlin learning

This year we've also invested in quality Kotlin on Android learning content.

We released two free video learning courses in partnership with Udacity: Developing Android Apps in Kotlin and Advanced Android in Kotlin. This content was also released as the Codelab courses Android Kotlin Fundamentals and Advanced Android in Kotlin, for those who prefer text-based learning. The popular Kotlin Bootcamp for Programmers Udacity course was also published as a Codelabs course, helping provide a Kotlin foundation for non-Kotlin developers. Kotlin-based instructional Codelabs were also created for topics including Material Design, Kotlin coroutines, location, refactoring to Kotlin, billing in Kotlin, and Google Pay in Kotlin. It hasn't been just about new content: we've updated Kotlin Codelab favorites to take advantage of important features such as coroutines.

Looking ahead

In 2020, Android development will continue to be Kotlin-first. We've been listening to your feedback, and will continue partnering with JetBrains to improve your experience with Kotlin.

This includes working with JetBrains to improve the Kotlin compiler over the next year. Our teams are making the compiler more extensible with a new backend, and making your builds faster with a significantly faster frontend. We're also working with many of the largest annotation processors to make compilation faster for Kotlin code. You can also expect more Kotlin-first updates to Android, including more Jetpack libraries that make use of Kotlin features such as coroutines.

Thank you for letting us be part of your app development journey this year. We look forward to continuing the journey with you in 2020.

06 Dec 2019 7:00pm GMT

05 Dec 2019

feedAndroid Developers Blog

Android Game SDK

Posted by Dan Galpin, Developer Advocate

With over 2.5 billion monthly active devices, the Android Platform gives incredible reach for game developers. Taking advantage of that opportunity can be a challenge, particularly if your game really tries to push the limits of what mobile can do. We've spent years working with game developers to try to both capture and address the biggest issues, and we're just beginning to see the fruits of that effort with the launch of the Android Game SDK. The Android Game SDK is a set of libraries that you can use to enhance your Android game.

The first library we are launching in the Android Game SDK helps developers with frame pacing, the synchronization of a game's rendering loop with the OS display subsystem and underlying display hardware. Android's display subsystem is designed to avoid tearing that occurs when the display hardware switches to a new frame in the middle of an update. To this end, it buffers past frames, detects late frame submissions, and repeats the display of past frames when late frames are detected. When a game render loop renders at a different rate than the native display hardware, such as a game running at 30 frames-per-second attempting to render on a device that natively supports 60 FPS, the optimal display flow involves synchronization between the game render loop, the system compositor, and the display hardware.

Optimal Display Flow

Optimal Display Flow

Any mismatch in synchronization can create substantial inconsistencies in frame times. If a frame takes substantially less time to render, it can shorten the presentation of the previous frame, causing something like a 33ms, 16ms, and a 50ms sequence.

Synchronization Mismatch: Rendering too Fast

Synchronization Mismatch: Rendering too Fast

If a frame takes too long to render, a similar problem occurs. The frame will be presented for an extra frame, causing something like a 50ms, 16ms, and 33ms sequence.

Synchronization Mismatch: Slow Frame

Synchronization Mismatch: Slow Frame

In either of these two scenarios, the game player will experience inconsistent delays between game input and screen updates. Visually, things will look less smooth and polished. Both visuals and game play can be impacted.

The Frame Pacing library uses Android's Choreographer API for synchronization with the display subsystem, using presentation timestamp extensions on both OpenGL and Vulkan APIs to make sure frames are presented at the proper time, and sync fences to avoid buffer stuffing. Multiple refresh rates are handled if supported by the device, giving a game more flexibility in presenting a frame. For a device that supports a 60 Hz refresh rate as well as 90 Hz, a game that cannot produce 60 frames per second can drop to 45 FPS instead of 30 FPS to remain smooth. The library detects the expected game frame rate and auto-adjusts frame presentation times accordingly. The Frame Pacing library allows games to take advantage of higher refresh rate 90 and 120 Hz displays, while also making it easy to lock the refresh rate to a desired value, regardless of the underlying display refresh rate.

The Frame Pacing library is built into Unity versions 2019.2 and beyond. Just select the optimized Frame Pacing checkbox under Android Settings to enable smoother frame rates for your game. If you have source to your game engine, it's straightforward to integrate the library into your OpenGL or Vulkan renderer. We've just added library binaries for download at developer.android.com/games/sdk/, or you can download the source code from the Android Open Source Project.

To learn more about Frame Pacing, check out the documentation at developer.android.com, along with the Frame Pacing section of the Optimizing Android Games Performance talk from Google I/O 2019. Be sure to subscribe to our Twitter channel and stay tuned for our announcements at GDC 2020 for more on how we're working to make Android game development better, so you can bring the best game experience to billions of devices.

05 Dec 2019 8:45pm GMT

02 Dec 2019

feedAndroid Developers Blog

#AndroidDevChallenge: today is the last day to apply!

Dev Challenge banner with Android logo

Today is the last day to apply for the Android Developer Challenge! And to spark your imagination, we wanted to take a look at one of the original Android Developer Challenge winners, from over 10 years ago. Meet Maurizio Leo:

Maurizio and team have been working on Android for a while now. In fact, he was one of the winners of the original Android Developer Challenge, which launched with the start of Android over ten years ago. Their app, which won 3rd place worldwide at the time, has gone on to be downloaded over 30 million times!

If you've got a great idea that can help users get things done, we want to hear! We'll pick 10 concepts and provide expertise and guidance to those developers to help in their plans to bring their ideas to fruition, in part from this amazing set of experts we've assembled. And once the app is ready, we'll help showcase it in front of the billions of users on Google Play, through a collection and more. You can read more about all of the prizes here.

There's still time to submit your idea before the deadline today! Submitting your idea is as simple as creating a repository on GitHub, telling us what you'd build and how we can help (we've included all of the materials here), and then officially submitting your repository here. Ideas can be in a concept phase to something that's already complete; we can't wait to hear what you come up with, and to work with you on bringing helpful innovation powered by machine learning to more and more users!

02 Dec 2019 10:39pm GMT

An Update on Android TLS Adoption

Posted by Bram Bonné, Senior Software Engineer, Android Platform Security & Chad Brubaker, Staff Software Engineer, Android Platform Security

banner illustration with several devices and gaming controller

Android is committed to keeping users, their devices, and their data safe. One of the ways that we keep data safe is by protecting network traffic that enters or leaves an Android device with Transport Layer Security (TLS).

Android 7 (API level 24) introduced the Network Security Configuration in 2016, allowing app developers to configure the network security policy for their app through a declarative configuration file. To ensure apps are safe, apps targeting Android 9 (API level 28) or higher automatically have a policy set by default that prevents unencrypted traffic for every domain.

Today, we're happy to announce that 80% of Android apps are encrypting traffic by default. The percentage is even greater for apps targeting Android 9 and higher, with 90% of them encrypting traffic by default.

Percentage of apps that block cleartext by default.

Percentage of apps that block cleartext by default.

Since November 1 2019, all app (updates as well as all new apps on Google Play) must target at least Android 9. As a result, we expect these numbers to continue improving. Network traffic from these apps is secure by default and any use of unencrypted connections is the result of an explicit choice by the developer.

The latest releases of Android Studio and Google Play's pre-launch report warn developers when their app includes a potentially insecure Network Security Configuration (for example, when they allow unencrypted traffic for all domains or when they accept user provided certificates outside of debug mode). This encourages the adoption of HTTPS across the Android ecosystem and ensures that developers are aware of their security configuration.

Example of a warning shown to developers in Android Studio.

Example of a warning shown to developers in Android Studio.

Example of a warning shown to developers as part of the pre-launch report.

Example of a warning shown to developers as part of the pre-launch report.

What can I do to secure my app?

For apps targeting Android 9 and higher, the out-of-the-box default is to encrypt all network traffic in transit and trust only certificates issued by an authority in the standard Android CA set without requiring any extra configuration. Apps can provide an exception to this only by including a separate Network Security Config file with carefully selected exceptions.

If your app needs to allow traffic to certain domains, it can do so by including a Network Security Config file that only includes these exceptions to the default secure policy. Keep in mind that you should be cautious about the data received over insecure connections as it could have been tampered with in transit.

<network-security-config>
    <base-config cleartextTrafficPermitted="false" />
    <domain-config cleartextTrafficPermitted="true">
        <domain includeSubdomains="true">insecure.example.com</domain>
        <domain includeSubdomains="true">insecure.cdn.example.com</domain>
    </domain-config>
</network-security-config>

If your app needs to be able to accept user specified certificates for testing purposes (for example, connecting to a local server during testing), make sure to wrap your element inside a element. This ensures the connections in the production version of your app are secure.

<network-security-config>
    <debug-overrides>
        <trust-anchors>
            <certificates src="user"/>
        </trust-anchors>
    </debug-overrides>
</network-security-config>

What can I do to secure my library?

If your library directly creates secure/insecure connections, make sure that it honors the app's cleartext settings by checking isCleartextTrafficPermitted before opening any cleartext connection.

Android's built-in networking libraries and other popular HTTP libraries such as OkHttp or Volley have built-in Network Security Config support.

Giles Hogben, Nwokedi Idika, Android Platform Security, Android Studio and Pre-Launch Report teams

02 Dec 2019 10:28pm GMT

26 Nov 2019

feedAndroid Developers Blog

3 things to know about Jetpack from Android Dev Summit 2019

Posted by Jisha Abubaker, Product Manager

Last month's #AndroidDevSummit was jam-packed with announcements and technical news...so much that we wouldn't be surprised if you missed something. So all this month, we'll be diving into key areas from throughout the summit so you don't miss anything. We previously spotlighted Jetpack Compose, Kotlin and Android Studio, and today, we're highlighting the rest of Android Jetpack, with the top three things you should know:

#1: A number of new & updated Jetpack libraries ready to use:

WorkManager 2.2 (Stable) has landed significant updates in the last releases with features like on-demand initialization improving app startup time when using WorkManager and improved testing support. Hear more of the new features and best practices.

Room 2.2 (Stable) is packed with features you asked for too : pre-packaged databases, improved relationship support and now better support for Kotlin Flow as well. Check out the What's new in Room session to catch up.

Benchmarking (Stable) helps you measure the performance of tasks in your app with confidence. Here's a deep dive on how you can exercise the library in fighting performance regressions in CI, like we do ourselves for Jetpack libraries and Compose.

LiveData w/ support for Kotlin coroutines & Flow (RC) : Kotlin coroutines and Flows has been the Android developer community's interest in simplify async patterns in your apps. Learn how best to take advantage of the liveData builder in your app:

View binding (Beta) is type-safe solution bundled with Android Studio 3.6 Beta with minimal build-time impact, no more findViewById(), no more annotation processors. Check out What's new in Studio for a demo !

#2: We're busy baking more libraries

CameraX (Alpha) simplifies the development experience and lets you focus on your app instead by addressing the differences between the many devices in the Android ecosystem, like Samsung, Xiaomi, Oppo, Motorola, LG who are already unifying behind CameraX. Expected in Beta soon, learn what the Camera team has been up to since I/O 2019.

Security (Alpha) helps you simplify data at rest encryption for your app needs. Hear of best practices with encryption on Android from the Security library team.

#3:It's time to migrate to androidx!

With all the new and updated Jetpack libraries and upcoming release of Jetpack Compose, it is time to get your app updated and ready. Nick and Tiem share a great step by step plan and best practices from the community in migrating to androidx namespace.

...and we also heard from you!

But Android Dev Summit isn't just about what we've got to say; it's also about you telling us what you'd like to see worked on to make your life easier. And this year, one thing that we heard strongly from our community was the need to provide a simplified Dependency injection developer experience for Jetpack libraries and expand improved Kotlin support to other Jetpack libraries! We're on it!

You can find the entire playlist of Jetpack sessions at the Android Dev Summit sessions and videos here. We'll continue to spotlight other areas later this month, so keep an eye out and follow AndroidDevelopers on Twitter. Thanks so much for letting us be a part of this experience with you!

26 Nov 2019 6:00pm GMT

22 Nov 2019

feedAndroid Developers Blog

Our panel of experts for the #AndroidDevChallenge (apply by Dec. 2)

Just a little over a week left to finish your submission for the Android Developer Challenge, due December 2! Technology is enabling us to create a whole new era of helpful innovation by helping people get things done more quickly and surfacing patterns that would be difficult to detect using traditional methods. Ultimately, this helpful innovation is enabling us to live better, more productive, and safer lives.

Earlier this week, we highlighted the type of helpful innovation ideas powered by machine learning which are the sort of examples we're looking for, to help inspire you. Today, we wanted to share the names of the panel of experts we've assembled to help bring your projects to life as part of the Android Developer Challenge. These experts will be making the final decision on the 10 finalists of the Android Developer Challenge, and if you're selected as one of those finalists, we plan to have you meet them when we bring you to Google HQ for a bootcamp next year:

If you've got a great idea that can help users get things done, we want to hear! We'll pick 10 concepts and provide expertise and guidance to those developers to help in their plans to bring their ideas to fruition, in part from this amazing set of experts we've assembled. And once the app is ready, we'll help showcase it in front of the billions of users on Google Play, through a collection and more. You can read more about all of the prizes here.

There's still time to submit your idea before the December 2 deadline. Submitting your idea is as simple as creating a repository on GitHub, telling us what you'd build and how we can help (we've included all of the materials here), and then officially submitting your repository here. Ideas can be in a concept phase to something that's already complete; we can't wait to hear what you come up with, and to work with you on bringing helpful innovation powered by machine learning to more and more users!

22 Nov 2019 3:30pm GMT

20 Nov 2019

feedAndroid Developers Blog

Android Developer Challenge: here’s what we’re looking for! (Apply by Dec. 2)

Last month, we kicked off the next Android Developer Challenge, and asked you to submit your ideas focused on helpful innovation, powered by on-device machine learning. But what exactly do we mean when we say helpful innovation? We're glad you asked! We rounded up a few of Google's on-device machine learning offerings, together with some great recent examples of this technology in action, to help inspire your submission. Don't forget, submit your idea by December 2!

Using machine learning to tackle Fall Armyworm

Take Nazirini Siraji. When she and a team of developers noticed a crop-pest threatening the livelihood of Ugandan farmers, they taught themselves TensorFlow to combat this pest. They collected training data from nearby fields in the form of images. With TensorFlow, they re-trained a MobileNet, a technique known as transfer learning and then used the TensorFlow Converter to generate a TensorFlow Lite FlatBuffer file which they deployed in an Android app. With the app, a farmer can snap a picture of their crop and the image frame is analysed to look for Fall armyworm damage. Depending on the results from this phase, a suggestion of a possible solution is given. It's pretty cool!

Helping doctors detect respiratory diseases using machine learning

Tambua Health is helping doctors determine the likelihood of respiratory diseases by turning any smartphone into a powerful non-invasive screening tool. They developed an app using TensorFlow Lite that can help doctors analyze lung sounds for the presence of abnormal sounds like wheezes, crackles, stridor, and other adventitious sounds.

adidas uses machine learning to make the shopping experience easier

Even brands are tapping the power of machine learning. Take adidas, who recently launched a new "Bring It to Me" experience for their London store. Shoppers can use Visual Lookup to scan products on their phones while they are in the store, and the app lets them check stock and request their size without the need for queues. Under the hood, ML Kit is helping power the experience. It's another way machine learning is helping users get things done more quickly.

The benefits of on-device machine learning

Running machine learning on a user's device comes with a number of benefits. First, you reduce the amount of data you send to your server, enhancing user privacy. And because it runs on device, it can also work offline - perfect for inaccessible areas such as the middle of a rainforest, a desert or the London Underground. Last but not least, the most exciting aspect of running your model on device is low latency and this can enable all kinds of new user experiences. Machine learning is not just for automating tasks, it can work alongside your users and give them super powers too!

At Google, we offer a number of different technologies to help you take advantage of this:

If you've got a great idea that can help users get things done, we want to hear from you! We'll pick 10 concepts and provide expertise and guidance to those developers to help in their plans to bring their ideas to fruition. And once the app is ready, we'll help showcase it in front of the billions of users on Google Play, through a collection and more. You can read more about all of the prizes here.

There's still time to submit your idea before the December 2 deadline. We can't wait to hear what you come up with, and to work with you on bringing helpful innovation powered by on-device machine learning to more and more users!

20 Nov 2019 9:34pm GMT

19 Nov 2019

feedAndroid Developers Blog

Unifying Background Task Scheduling on Android

Posted by Caren Chang, Developer Programs Engineer

Android users care a lot about the battery life on their phones. In particular, how your app schedules deferrable background tasks play an important role in battery life. To help you build more battery-friendly apps, we introduced WorkManager as the unified solution for all deferrable background processing needs.

Starting November 1, 2020, we are unifying deferrable background tasks on Android around WorkManager, and GCMNetworkManager will be deprecated and no longer supported.

Why WorkManager

The WorkManager API incorporates the features of Firebase Job Dispatcher (FJD) and GcmNetworkManager solutions, providing a consistent job scheduling service back to API level 14 while being conscious of battery life. For example, if your app needs to send log files up to the server, it would be more efficient to wait until the device is both charging and connected to WiFi. In this case, WorkManager will ensure that the sync will execute when the given constraints (charging and connected to WiFi) are met. Additionally, it does not require Google Play Services, unlike FJD and GcmNetworkManager.

Some of the other key features of WorkManager include:

What it means for developers

Now that the WorkManager library has reached maturity, we have decided to deprecate alternative solutions to simplify the developer story and focus on WorkManager stability and features.

Migrating to WorkManager

Now is the time to migrate your apps to WorkManager if you haven't already done so! You can start by reading the official documentation for WorkManager.

If your app is still using FirebaseJobDispatcher, you can migrate your app to WorkManager by following the migration guide. A similar migration guide from GCMNetworkManager to WorkManager is also available.

YouTube recently moved over to WorkManager for their background scheduling needs and has reported improvements in app startup time as well as an 8% drop in crash rates.

Going forward

The team is dedicated to improving and continuing feature development on WorkManager. If you encounter issues using the library, have proposals for features you would like to see, or have any feedback about the library, please file an issue.

19 Nov 2019 6:29pm GMT

18 Nov 2019

feedAndroid Developers Blog

New! Learn advanced skills for developing Android apps in Kotlin

Posted by Aleks Haecky

Advanced Android in Kotlin, developed by Google together with Udacity, is our newly-released, free, self-paced online course. In this course expert instructors from the Android team at Google will introduce you to some of the advanced features you can build into your Android apps.

This course is intended for developers who have mastered the basics of building an Android app in Kotlin, and want to dive deeper into advanced functionality. To benefit most from this course, you need skills equivalent to what's taught in our Android Fundamentals Udacity or codelab courses.

Advanced Android in Kotlin teaches you about notifications, graphics and animations on Android, using third-party authentication for login, and how to add maps to your apps. Learn how to create custom views that can look like anything you want, draw to a canvas, and have eye-catching animations. And, most importantly, you will learn how to properly test your apps!

Here is a sample of apps you will build:

Check out the YouTube course trailer below for additional information about the course and apps:

Different people like to learn in different ways, so we are offering this course as both a Udacity video-based course and as a series of codelabs with topics that you can explore in any order. Whether you prefer to work on your own with just the text and code, or to have an instructor help walk through the code with you on video, we've got you covered; just choose your path and get learning!

18 Nov 2019 9:16pm GMT

15 Nov 2019

feedAndroid Developers Blog

3 things to know about Android Studio from Android Dev Summit 2019

Posted by Deepanshu Madan, Product Manager

Last month's #AndroidDevSummit was jam-packed with announcements and technical news...so much that we wouldn't be surprised if you missed something. So all this month, we'll be diving into key areas from throughout the summit so you don't miss anything. Earlier this week, we spotlighted Kotlin and Jetpack Compose, and today, we're highlighting Android Studio, with the top three things you should know:

#1: Support for Jetpack Compose

For the best experience developing with Jetpack Compose, you can now use the latest version of Android Studio 4.0 in the canary channel, and benefit from smart editor features, such as New Project templates, code completion and the ability to immediately preview your Jetpack Compose UI.

#2: What's new in Android Studio session

We covered both new features and successes of our quality initiative called Project Marble. On the quality aspect, we discuss improvements around hangs and latency, memory leak detection, automatic IDE heap sizing and build speed. Also during the session you will find demos on new developments & features in Android Studio such as Build Attribution tool which helps you understand and diagnose problems with your build system, Java 8 library desugaring, View binding, Kotlin Android live templates, an updated live Layout inspector which allows you to drill into resources right from the view to find where a property value originates in the source code with a 3D visualization of your view hierarchy.

#3: Android Studio Design tools

We introduced new features of Layout & Navigation editor including a new split view, new tools such as Multi-preview which allows you to visualize your layout in different configurations and MotionEditor, visual design editor for the MotionLayout layout type, making it easier to create and preview animations. The Motion Editor provides a simple interface for manipulating elements from the MotionLayout library that serves as the foundation for animation in Android apps. In previous releases, creating and altering these elements required manually editing constraints in XML resource files. Now, the Motion Editor can generate this XML for you, with support for start and end states, keyframes, transitions, and timelines.

You can find the entire playlist of Android Dev Summit sessions and videos here. We'll continue to spotlight other areas later this month, so keep an eye out and follow AndroidDevelopers on Twitter. Thanks so much for letting us be a part of this experience with you!

15 Nov 2019 7:40pm GMT

Still Using InstallBroadcast? Switch to the Play Referrer API by March 1, 2020

Posted by Marcus Leal, Product Manager, Google Play Ads

How do people find your app? It's the million-dollar question for any developer, and the answer can help you make the right choices about your marketing strategy and budget. Accurate install referral data is crucial for understanding which traffic sources send users to download your app from the Google Play Store, as well as identifying fraudulent attempts to claim install attributions.

That's why in 2017, we launched the Play Install Referrer API, which provides a reliable and robust mechanism for apps to retrieve referral information directly from the Play Store. It was a big step forward from the old install_referrer intent broadcast, so many developers made the switch right away, including App Attribution Program partners like Adjust, AppsFlyer, and Kochava. Now, because it's been replaced by the new API, we've decided to deprecate the install_referrer intent broadcast mechanism on March 1, 2020. After this date, new versions of the Play Store app will no longer broadcast the install_referrer intent after app installs.

We are asking developers who still rely on the install_referrer to use the Play Install Referrer API instead. Among other advantages, the Install Referrer API offers better performance, uses a secure communication channel between your app and the Play Store, and offers a more robust solution against spoof and attribution fraud.

If you still use the Broadcast API and the install_referrer intent to track your referrals, be sure to make the switch by March 1, 2020. Migration is easy, and the cost of adoption is low. Learn how to use the Play Install Referrer API to track your app installs today.


15 Nov 2019 5:38pm GMT

13 Nov 2019

feedAndroid Developers Blog

3 things to know about Kotlin from Android Dev Summit 2019

Posted by David Winer, Kotlin Product Manager, @davidjwiner

Last month's #AndroidDevSummit was jam-packed with announcements and technical news...so much that we wouldn't be surprised if you missed something. So all this month, we'll be diving into key areas from throughout the summit so you don't miss anything. First up, we're spotlighting Kotlin, with the top things you should know:

#1: Kotlin momentum on Android

Kotlin is at the heart of modern Android development - and we've been excited to see how quickly it has won over developers around the world. At Android Dev Summit we announced that nearly 60% of the top 1000 Android apps on the Play Store now use Kotlin, and we're seeing more developers adopt it every day. Kotlin has helpful features like null safety, data classes, coroutines, and complete interoperability with the Java programming language. We're doubling down on Kotlin with more Kotlin-first APIs even beyond AndroidX - we just released KTX extensions, including coroutines support, for Play Core. There's never been a better time to give Kotlin a try.

#2: Learn more: Getting started with Kotlin & diving into advanced Kotlin with coroutines

If you're introducing Kotlin into an existing codebase, chances are that you'll be calling the Java programming language from Kotlin and vice versa. At Android Dev Summit, developer advocates Murat Yener, Nicole Borrelli, and Wenbo Zhu took a look at how nullability, getters, setters, default parameters, exceptions, and more work across the two languages.

For those looking into more advanced Kotlin topics, we recommend watching Jose Alcérreca's and Yigit Boyar's talk that explains how coroutines and Flow can fit together with LiveData in your app's architecture and one on testing coroutines by Sean McQuillan and Manuel Vivo.

#3: Get certified in Kotlin

We announced the launch of our Associate Android Developer certification in Kotlin. Now you can prove your proficiency with modern Kotlin development on Android to your coworkers, your professional network, or even your future employer. As part of this launch, you can take this exam at a discount when using the code ADSCERT99 through January 25.

It's especially great to hear from you, the Android community, at events like Android Dev Summit: what do you want to hear more about, and how can we help with something you're working on. We asked you to submit your burning questions on Twitter and the livestream, and developer advocates Florina Muntenescu and Sean McQuillan answered your Kotlin and coroutines questions live during our #AskAndroid segment:

You can find the entire playlist of Android Dev Summit sessions and videos here. We'll continue to spotlight other areas later this month, so keep an eye out and follow Android Developers on Twitter. Thanks so much for letting us be a part of this experience with you!

Java is a registered trademark of Oracle and/or its affiliates.

13 Nov 2019 9:33pm GMT

3 things to know about Jetpack Compose from Android Dev Summit 2019

Posted by Anna-Chiara Bellini, @dr0nequeen

Last month's #AndroidDevSummit was jam-packed with announcements and technical news...so much that we wouldn't be surprised if you missed something. So all this month, we'll be diving into key areas from throughout the summit so you don't miss anything. Earlier today, we spotlighted Kotlin and now we're diving into Jetpack Compose, with the top three things you should know:

#1: Jetpack Compose is available in Developer Preview!

Jetpack Compose is Android's modern toolkit for building native UI. It allows developers to write beautiful Android apps in an intuitive way, writing less code and accelerating development. It's powerful, because when writing code is a pleasure, you can focus on making your apps look beautiful and giving your users the best experience. At #AndroidDevSummit, we released the Developer Preview, to enable more feedback as we work towards bringing Jetpack Compose to beta next year. All you need to do is download the Android Studio 4.0 Canary build to try it out. To give feedback, feel free to reach out through the Kotlinlang Slack channel or our Bug Tracker to let us know what you think. It's your chance to help us build the right thing!

#2: See what's new in Jetpack Compose

At Android Dev Summit we showed how we've designed Compose to simplify development of Android apps, details on the new Material UI components we are building, and insights on some of the learnings that are informing the way we think about Compose. We also showcased how to write a small app, including layout and state management for a list of elements, in just a few lines of code.

Watch the Android Dev Summit session video to learn more:

If you want to take a look behind the scenes, we also had a tech deep dive into the inner workings of Compose:

#3: Try it out, with our tutorial, sample app, and codelab!

Jetpack Compose is still in Developer Preview, which means it's a great time to try it out and let us know what you think about it. To help you with that, you can follow our tutorial, which will take you through the first steps of building a Compose app, and also take a look at our sample app, Jetnews, that shows what is currently possible with Jetpack Compose. We also have a popular codelab available to take you through how to build UIs with Compose, how to manage state in composable functions, and data flow principles in Compose.

Jetnews sample app

...and we also heard from you!

But Android Dev Summit isn't just about what we've got to say; it's also about you telling us what you'd like to see worked on to make your life easier. And this year, one thing we heard strongly from our community was how important it is to have the right tools to manage your layouts on so many different form factors and devices. Jetpack Compose has full Android Studio support and you can iterate fast with live Previews.

Android Dev Summit is over for this year, but you can keep giving us your feedback through the Kotlinlang Slack channel and Bug Tracker.

You can find the entire playlist of Android Dev Summit sessions and videos here. We'll continue to spotlight other areas later this month, so keep an eye out and follow AndroidDevelopers on Twitter. Thanks so much for letting us be a part of this experience with you!

13 Nov 2019 5:00pm GMT

07 Nov 2019

feedAndroid Developers Blog

Modern app and game distribution on Google Play

Posted by Kobi Glick, Product Lead, Google Play

Today we're kicking off Playtime, our annual event series where we host developers from all over the world to discuss features and best practices to help you grow your apps and games businesses. Last month's Android Dev Summit focused on modern Android development. Here on the Google Play team, we're focusing on modern app and game distribution - our set of powerful and customizable distribution features and tools that work together to power your success on Google Play.

The future of Android distribution

The Android App Bundle is foundational to modern app and game distribution, replacing the monolithic APK. Since it launched 18 months ago, over 270K apps and games have made the switch, representing over 25% of active installs. Those that switched have seen an average size savings of 20% compared to a universal APK and more efficient releases as a result.

A recent internal analysis revealed that users with storage-constrained devices are much more likely to uninstall apps, so optimizing how much space your app needs is important. Our new metrics on the app size report in the Play Console can show you how many of your active users have little free storage on their devices and if they're uninstalling more than other users.

New tools to speed up your workflows and engineering velocity

Testing app bundles is now much easier with internal app sharing. Make anyone in your company an uploader without giving them access to the Play Console and they'll be able to share test builds of your app as easily as they used to share APKs. With internal app sharing, you can be sure that each device is receiving exactly what Play would deliver in the wild. You don't need to use version codes or the prod signing key, you can upload debuggable artifacts, and you'll soon be able to get install links for old versions of your app, too.

The app bundle also lets you modularize your app with dynamic feature modules. Modularization speeds up build times and engineering velocity, since different teams can design, build, test, and debug features in parallel rather than working on the same complex code for a monolithic app. Based on your feedback, we've made it easier to develop modular apps with tools such as the new Dynamic Feature Navigator library and FakeSplitInstallManager, which lets you test on-demand delivery while offline instead of waiting for the Play Store.

Get more users on your latest release with improved in-app updates

In-app updates let you prompt users to update to the latest version of your app, without them having to leave your app. More than 10% of the top apps and games are already using in-app updates with an average acceptance rate of 24%. Based on your feedback, we're also giving you more control over how and when you show update prompts:

Modern game distribution

For some games with rich content, the 150MB app bundle size limit is not enough. Using expansion files or content delivery networks can get around this but could introduce complexity when you're building and releasing your game, and can result in a poor user experience. That's why we're extending the app bundle format to support asset delivery with a new delivery construct called asset packs which can go up to multiple gigabytes.

Asset packs are packaged in the app bundle alongside your binary, so you can publish a single artifact to Play that contains everything your game needs, giving you full control of your asset delivery. Play's asset delivery will also enable texture compression targeting, so that your users only get the assets suitable for their device with no wasted space or bandwidth. And you can rely on Play to keep your assets up to date, just as it does with your game binary. We're currently testing this with some early partners and hope to make it more widely available soon.

Here's to another successful Playtime

Look out for the sessions from this year's Playtime, which will be added to the Android Developers YouTube channel. We look forward to sharing more tools and services for your apps and games, made possible by the app bundle and our new dynamic framework. And as always, please give us your feedback and let us know what you think.

How useful did you find this blog post?


07 Nov 2019 10:00am GMT