[MUSIC PLAYING]
JON TSAO: Hi.
I'm Jon, and I'm a product manager for Android Developer
Tools.
We've made some exciting progress over the past year,
and we want to share what we're doing to make your lives easier
as Android game developers.
We've heard from many of you on your pain points
for game development, and we recognized
that there was significant room for improvement.
You told us that you need additional ways to increase
your productivity, and you need to ensure that you can
tune and optimize your game.
We have three new tools to help your productivity that we're
excited to introduce.
adb incremental aims to significantly improve
your deploy speed.
For those of you with existing cross-platform development
workflows in Visual Studio, the Android Game Development
Extension allows you to continue using the tools and setup
that you're familiar with to develop for Android.
And we're introducing the Game Package Registry
for Unity developers to simplify the management of our Unity
services.
For optimization, we have some updates
we want to share that allow you to inspect how your game uses
GPU, CPU, and memory resources in more detail than ever
before.
We've heard from many of you that you
wait too long for your game to deploy to your device.
With Android 11, we're excited to announce adb incremental,
a significant improvement to the adb deploy process
that results in iteration speeds that are orders of magnitude
more efficient than previous versions.
Available on Pixel 4 and new Android 11 devices,
adb incremental takes advantage of changes to the file system
to increase your productivity, and it even
offers you the ability to start your game
before it finishes installing.
Here are some of our results from trying this out on Unity's
"Megacity" game demo.
We went from having to wait almost a full minute to install
to seconds for a full installation,
and under a second for the game to be able to be launched.
Look for more information and documentation
about adb incremental in an upcoming developer preview.
For those of you working in Android Studio,
we're continuing to invest in ensuring that the IDE
experience remains great for C++ development for games.
Please keep the feedback coming.
But for those of you with complex setups that need
to support multiple platforms for your games with C++,
we've heard feedback that Android is more challenging
than it needs to be.
There are complexities involved in ensuring
that your existing workflow is productive
when you add Android to the mix, and switching
between different IDs is onerous.
To solve that, today, we're excited to announce a developer
preview of the Android Game Development Extension,
allowing you to use your existing Visual Studio workflow
to create Android games.
We've been working on this since last year,
and we want to thank our early preview
partners, such as Blizzard, EA, Ubisoft, and Epic
for taking the time to iterate with us on our journey.
Once you install the extension, you
can easily add Android as a target
platform in your existing Visual Studio solutions
in the Configuration Manager, and easily
configure your project to generate
an APK with the extension adding all the necessary boilerplate
files.
Once you've done so, you can build and deploy
the Android version of your game from Visual Studio
to physical devices or an emulator.
You'll have access to full IntelliSense support
for your C++ code.
And with the extension, we also feature a fast and reliable
debugging experience based on LLDB.
The extension is compatible with existing
build tools many of you use, such as IncrediBuild,
so you can continue to take advantage
of your current infrastructure to ensure that your build
times are as fast as possible.
This, combined with the new adb, means
that you can be more productive when iterating
on changes in your game.
Currently, we work best with custom engines that are using
C++, and we're collaborating with Epic on adding Unreal
support in the future.
If you're interested in being an early adopter
and giving us feedback, apply for access
at the URL on the screen.
If you're a Unity developer, you're
probably familiar with Unity's Package Manager, which
helps you manage modular components while developing
a game.
Today, we're launching the Game Package Registry for Unity.
By connecting the Unity Package Manager to our registry,
you'll be able to access a variety of Google author
packages, such as Play Billing, Android App Bundles, Play Asset
Delivery, Play Instant, and Firebase.
And just like with Unity author packages, versioning, updates,
and dependencies are handled seamlessly
in the package manager.
Head to the URL on the screen to try it now.
Turning now to optimization, we've
made some significant improvements
to our existing suite of Android Studio profilers
that are all available today in the Android Studio 4.1 Canary.
We have two options for CPU profiling in Android Studio.
One is our existing sampled CPU profiler
for comparing relative timing data for how
your code is being executed.
For granular timing across the entire system,
you'll want to use our revamped Android Studio System Trace.
With System Trace, you can see detailed CPU core activity
and thread scheduling across all cores.
You can inspect the timing of events
that are instrumented by the system,
and that you instrument yourself via Android's native tracing
API.
We've also added native memory profiling capabilities
to allow you to record how your game is allocating memory
for devices running Android 10 or later.
You can now see how many objects are being allocated
and deallocated during a particular time period
to check for possible memory leaks.
All of these enhancements are available today
to try out in the latest Android Studio 4.1 Canary.
We still have plenty of features to implement,
so we'd love to hear your early feedback.
Finally, we've heard your feedback
that optimizing graphics on Android is difficult.
The GPU is often a black box, and different GPU vendors
require different tools to gain any insights.
To solve this, today, we're announcing a developer preview
of the Android GPU Inspector.
Now you have a single tool that works across both Qualcomm
and Arm GPUs, and provides insights
into how your game is using GPU resources
and areas for optimization.
You'll be able to uncover deeper graphics insights
that were never handily available for you
before, such as GPU counters.
And when using Vulcan, you'll get GPU activity and timing
data.
Currently, the tool supports Pixel 4, 4XL,
and the Galaxy Note 10 and S10.
And we'll be expanding our device coverage over time.
If you're interested in trying it out,
apply for access for the preview at the URL on the screen.
So that's a quick overview of some
of the new tools we have to help you develop games more easily
and efficiently.
We're excited to hear your thoughts.
For links to all of our tools, as well as additional guidance
and resources on game development with Android,
check out d.android.com/games.
[MUSIC PLAYING]