Tampilkan postingan dengan label Android. Tampilkan semua postingan
Tampilkan postingan dengan label Android. Tampilkan semua postingan

Rabu, 13 April 2016

Optimize, Develop, and Debug with Vulkan Developer Tools

Posted by Shannon Woods, Technical Program Manager



Today we're pleased to bring you a preview of Android development tools for Vulkan™. Vulkan is a new 3D rendering API which we’ve helped to develop as a member of Khronos, geared at providing explicit, low-overhead GPU (Graphics Processor Unit) control to developers. Vulkan’s reduction of CPU overhead allows some synthetic benchmarks to see as much as 10 times the draw call throughput on a single core as compared to OpenGL ES. Combined with a threading-friendly API design which allows multiple cores to be used in parallel with high efficiency, this offers a significant boost in performance for draw-call heavy applications.



Vulkan support is available now via the Android N Preview on devices which support it, including Nexus 5X and Nexus 6P. (Of course, you will still be able to use OpenGL ES as well!)




To help developers start coding quickly, we’ve put together a set of samples and guides that illustrate how to use Vulkan effectively.



You can see Vulkan in action running on an Android device with Robert Hodgin’s Fish Tornado demo, ported by Google’s Art, Copy, and Code team:






Optimization: The Vulkan API



There are many similarities between OpenGL ES and Vulkan, but Vulkan offers new features for developers who need to make every millisecond count.




  • Application control of memory allocation. Vulkan provides mechanisms for fine-grained control of how and when memory is allocated on the GPU. This allows developers to use their own allocation and recycling policies to fit their application, ultimately reducing execution and memory overhead and allowing applications to control when expensive allocations occur.

  • Asynchronous command generation. In OpenGL ES, draw calls are issued to the GPU as soon as the application calls them. In Vulkan, the application instead submits draw calls to command buffers, which allows the work of forming and recording the draw call to be separated from the act of issuing it to the GPU. By spreading command generation across several threads, applications can more effectively make use of multiple CPU cores. These command buffers can also be reused, reducing the overhead involved in command creation and issuance.

  • No hidden work. One OpenGL ES pitfall is that some commands may trigger work at points which are not explicitly spelled out in the API specification or made obvious to the developer. Vulkan makes performance more predictable and consistent by specifying which commands will explicitly trigger work and which will not.

  • Multithreaded design, from the ground up. All OpenGL ES applications must issue commands for a context only from a single thread in order to render predictably and correctly. By contrast, Vulkan doesn’t have this requirement, allowing applications to do work like command buffer generation in parallel— but at the same time, it doesn’t make implicit guarantees about the safety of modifying and reading data from multiple threads at the same time. The power and responsibility of managing thread synchronization is in the hands of the application.

  • Mobile-friendly features. Vulkan includes features particularly helpful for achieving high performance on tiling GPUs, used by many mobile devices. Applications can provide information about the interaction between separate rendering passes, allowing tiling GPUs to make effective use of limited memory bandwidth, and avoid performing off-chip reads.

  • Offline shader compilation. Vulkan mandates support for SPIR-V, an intermediate language for shaders. This allows developers to compile shaders ahead of time, and ship SPIR-V binaries with their applications. These binaries are simpler to parse than high-level languages like GLSL, which means less variance in how drivers perform this parsing. SPIR-V also opens the door for third parties to provide compilers for specialized or cross-platform shading languages.

  • Optional validation. OpenGL ES validates every command you call, checking that arguments are within expected ranges, and objects are in the correct state to be operated upon. Vulkan doesn’t perform any of this validation itself. Instead, developers can use optional debug tools to ensure their calls are correct, incurring no run-time overhead in the final product.




Debugging: Validation Layers


As noted above, Vulkan’s lack of implicit validation requires developers to make use of tools outside the API in order to validate their code. Vulkan’s layer mechanism allows validation code and other developer tools to inspect every API call during development, without incurring any overhead in the shipping version. Our guides show you how to build the validation layers for use with the Android NDK, giving you the tools necessary to build bug-free Vulkan code from start to finish.




Develop: Shader toolchain



The Shaderc collection of tools provides developers with build-time and run-time tools for compiling GLSL into SPIR-V. Shaders can be compiled at build time using glslc, a command-line compiler, for easy integration into existing build systems. Or, for shaders which are generated or edited during execution, developers can use the Shaderc library to compile GLSL shaders to SPIR-V via a C interface. Both tools are built on top of Khronos’s reference compiler.




Additional Resources


The Vulkan ecosystem is a broad one, and the resources to get you started don’t end here. There is a wealth of material to explore, including:


























Android N Developer Preview 2, out today!

Posted by Dave Burke, VP of Engineering



Last month, we released the first Developer Preview of Android N, to give you a sneak peek at our next platform. The feedback you’ve shared to-date has helped us catch bugs and improve features. Today, the second release in our series of Developer Previews is ready for you to continue testing against your apps.



This latest preview of Android N fixes a few bugs you helped us identify, such as not being able to connect to hidden Wi-Fi networks (AOSP 203116), Multiwindow pauses (AOSP 203424), and Direct Reply closing an open activity (AOSP 204411), to name just a few. We’re still on the hunt for more; please continue to share feedback, either in the N Developer Preview issue tracker or in the N preview community.




What’s new:


Last month’s Developer Preview introduced a host of new features, like Multi-window, bundled notifications and more. This preview builds on those and includes a few new ones:



  • Vulkan: Vulkan is a new 3D rendering API which we’ve helped to develop as a member of Khronos, geared at providing explicit, low-overhead GPU (Graphics Processor Unit) control to developers and offers a significant boost in performance for draw-call heavy applications. Vulkan’s reduction of CPU overhead allows some synthetic benchmarks to see as much as 10 times the draw-call throughput on a single core as compared to OpenGL ES. Combined with a threading-friendly API design which allows multiple cores to be used in parallel with high efficiency, this offers a significant boost in performance for draw-call heavy applications. With Android N, we’ve made Vulkan a part of the platform; you can try it out on supported devices running Developer Preview 2. Read more here. Vulkan Developer Tools blog here.


  • Launcher shortcuts: Now, apps can define shortcuts which users can expose in the launcher to help them perform actions quicker. These shortcuts contain an Intent into specific points within your app (like sending a message to your best friend, navigating home in a mapping app, or playing the next episode of a TV show in a media app).

    An application can publish shortcuts with ShortcutManager.setDynamicShortcuts(List) and ShortcutManager.addDynamicShortcut(ShortcutInfo), and launchers can be expected to show 3-5 shortcuts for a given app.



  • Emoji Unicode 9 support: We are introducing a new emoji design for people emoji that moves away from our generic look in favor of a more human-looking design. If you’re a keyboard or messaging app developer, you should start incorporating these emoji into your apps.
    The update also introduces support for skin tone variations and Unicode 9 glyphs, like the bacon, selfie and face palm. You can dynamically check for the new emoji characters using Paint.hasGlyph().













New human emoji











New activity emoji



  • API changes: This update includes API changes as we continue to refine features such as multi-window support (you can now specify a separate minimum height and minimum width for an activity), notifications, and others. For details, take a look at the diff reports available in the downloadable API reference package.



  • Bug fixes: We’ve resolved a number of issues throughout the system, including these fixes for issues that you’ve reported through the public issue tracker. Please continue to let us know what you find and follow along with the known issues here.




How to get the update:


The easiest way to get this and later preview updates is by enrolling your devices in the Android Beta Program. Just visit g.co/androidbeta and opt-in your eligible Android phone or tablet -- you’ll soon receive this (and later) preview updates over-the-air. If you’ve already enrolled your device, you’ll receive the update shortly, no action is needed on your part. You can also download and flash this update manually. Developer Preview 2 is intended for developers and not as a daily driver; this build is not yet optimized for performance and battery life.



The N Developer Preview is currently available for Nexus 6, Nexus 5X, Nexus 6P, Nexus 9, and Pixel C devices, as well as General Mobile 4G [Android One] devices. For Nexus Player, the update to Developer Preview 2 will follow the other devices by several days.



To build and test apps with Developer Preview 2, you need to use Android Studio 2.1 -- the same version that was required for Developer Preview 1. You’ll need to check for SDK components updates (including build tools and emulator system images) for Developer Preview 2 -- see here for details.



Thanks so much for all of your feedback so far. Please continue to share feedback, either in the N Developer Preview issue tracker or in the N preview community. The sooner we’re able to get your feedback, the more of of it we will be able to incorporate in the next release of Android.

















Kamis, 07 April 2016

Android Studio 2.0

Posted by Jamal Eason, Product Manager, Android



Android Studio 2.0 is the fastest way to build high quality, performant apps for the Android platform, including phones and tablets, Android Auto, Android Wear, and Android TV. As the official IDE from Google, Android Studio includes everything you need to build an app, including a code editor, code analysis tools, emulators and more. This new and stable version of Android Studio has fast build speeds and a fast emulator with support for the latest Android version and Google Play Services.



Android Studio is built in coordination with the Android platform and supports all of the latest and greatest APIs. If you are developing for Android, you should be using Android Studio 2.0. It is available today as a easy download or update on the stable release channel.



Android Studio 2.0 includes the following new features that Android developer can use in their workflow :





  • Instant Run - For every developer who loves faster build speeds. Make changes and see them appear live in your running app. With many build/run accelerations ranging from VM hot swapping to warm swapping app resources, Instant Run will save you time every day.

  • Android Emulator - The new emulator runs ~3x faster than Android’s previous emulator, and with ADB enhancements you can now push apps and data 10x faster to the emulator than to a physical device. Like a physical device, the official Android emulator also includes Google Play Services built-in, so you can test out more API functionality. Finally, the new emulator has rich new features to manage calls, battery, network, GPS, and more.

  • Cloud Test Lab Integration - Write once, run anywhere. Improve the quality of your apps by quickly and easily testing on a wide range of physical Android devices in the Cloud Test Lab right from within Android Studio.

  • App Indexing Code Generation & Test - Help promote the visibility your app in Google Search for your users by adding auto-generated URLS with the App Indexing feature in Android Studio. With a few click you can add indexable URL links that you can test all within the IDE.

  • GPU Debugger Preview - For those of you developing OpenGL ES based games or apps, you can now see each frame and the GL state with the new GPU debugger. Uncover and diagnosis GL rendering issues by capturing and analyzing the GPU stream from your Android device.

  • IntelliJ 15 Update - Android Studio is built on the world class Intellij coding platform. Check out the latest Intellij features here.




Deeper Dive into the New Features



Instant Run


Today, mobile platforms are centered around speed and agility. And yet, building for mobile can sometimes feel clunky and slow. Instant Run in Android Studio is our solution to keep you in a fast and fluid development flow. The feature increases your developer productivity by accelerating your edit, build, run cycles. When you click on the Instant Run button (), Instant Run will analyze the changes you have made and determine how it can deploy your new code in the fastest way.




New Instant Run Buttons



Whenever possible, it will inject your code changes into your running app process, avoiding re-deployment and re-installation your APK. For some types of changes, an activity or app restart is required, but your edit, build and run cycles should still be generally much faster than before. Instant Run works with any Android Device or emulator running API 14 (Ice Cream Sandwich) or higher.



Since previewing Instant Run at the end of last year, we’ve spent countless hours incorporating your feedback and refining for the stable release. Look for even more acceleration in future releases because build speeds can never be too fast. To learn how you can make the most out of Instant Run in your app development today, please check out our Instant Run documentation.



Android Emulator


The new Android Emulator is up to 3x faster in CPU, RAM, & I/O in comparison to the previous Android emulator. And when you're ready to build, ADB push speeds are a whopping 10x faster! In most situations, developing on the official Android Emulator is faster than a real device, and new features like Instant Run will work best with the new Android emulator.



In addition to speed and performance, the Android Emulator has a brand user interface and sensor controls. Enhanced since the initial release, with the emulator you can drag and drop APKs for quick installation, resize and rescale the window, use multi-touch actions (pinch & zoom, pan, rotate, tilt) and much more.




Android Emulator User Interface: Toolbar & Extend Controls Panel



Trying out the new emulator is as easy as updating your SDK Tools to 25.1.1 or higher, create a fresh Android Virtual Device using one of the recommended x86 system images and you are ready to go. Learn more about the Android Emulator by checking out the documentation.



Cloud Test Lab


Cloud Test Lab is a new service that allows you to test your app across a wide range of devices and device configurations at scale in the cloud. Once you complete your initial testing with your Android Emulator or Android device, Cloud Test Lab is a great extension to your testing process that provides you to run through a collection of tests against a portfolio of physical devices hosted in Google’s data centers. Even if you do not have tests explicitly written, Cloud Test Lab can perform a basic set of tests to ensure that your app does not crash.



The new interface in Android Studio allows you to configure the portfolio of tests you want to run on Cloud Test Lab, and allows you to also see the results of your tests. To learn more about the service go here.




Setup for Cloud Test Lab



App Indexing


It is now easier for your users to find your app in Google Search with the App Indexing API. Android Studio 2.0 helps you to create the correct URL structure in your app code and add attributes in your AndroidManifest.xml file that will work the Google App Indexing service. After you add the URLs to your app, can you test and validate your app indexing code as shown here:



Google App Indexing Testing



Check out this link for more details about app indexing support in Android Studio.



GPU Debugger Preview


If you are developing OpenGL ES games or graphics-intensive apps, you have a new GPU debugger with Android Studio 2.0. Although the GPU debugger is a preview, you can step through your app frame by frame to identify and debug graphics rendering issues with rich information about the GL state. For more details on how to setup your Android device and app to work with the tool, check out the tech documentations here.



GPU Debugger Preview



What's Next



Update


If you are using a previous version of Android Studio, you can check for updates on the Beta 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. If you developing for the N Developer Preview, check out this additional setup instructions.



Set Up Instant Run & Android Emulator


After you update to or download Android Studio 2.0, you should upgrade your projects to use Instant Run, and create a fresh Android Virtual Device (AVD) for the new Android emulator and you are on your way to a fast Android development experience.



Using Instant Run is easy. For each of your existing projects you will see a quick prompt to update your project to the new gradle plugin version (com.android.tools.build:gradle:2.0.0).




Prompt to update your gradle version in your project



For all new app projects in Android Studio 2.0, Instant Run is on by default. Check out the documentation for more details.



We are already hard at work developing the next release of Android Studio. 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 new Google+ page or on Twitter.
































Rabu, 06 April 2016

Android Developer Story: Video editing app WeVideo increases user engagement with material design

Posted by Lily Sheringham, Google Play team

WeVideo is a video editing platform founded on a vision to make video creation accessible to anyone, anywhere. They first launched the popular WeVideo Video Editor app for Android, and since the latest update to the app, revenue on the platform has doubled every two months. In fact, almost 85% of their mobile users are on Android devices.

Watch Krishna Menon, President & CTO, and Oleg Tsaregorodtsev, Head of Mobile Development at WeVideo, explain how relaunching their app with material design increased user engagement by 100%. They also share how WeVideo improved monetization and installs using ratings & reviews, store listing experiments, and other features on Google Play.

berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost
berita banjarnegara gilarpost

Senin, 04 April 2016

A new method to measure touch and audio latency

Posted by Mark Koudritsky, software engineer



There is a new addition in the arsenal of instruments used by Android and ChromeOS teams in the battle to measure and minimize touch and audio latency: the WALT Latency Timer.




When you use a mobile device, you expect it to respond instantly to your touch or voice: the more immediate the response, the more you feel directly connected to the device. Over the past few years, we have been trying to measure, understand, and reduce latency in our Chromebook and Android products.



Before we can reduce latency, we must first understand where it comes from. In the case of tapping a touchscreen, the time for a response includes the touch-sensing hardware and driver, the application, and the display and graphics output. For a voice command, there is time spent in sampling input audio, the application, and in audio output. Sometimes we have a mixture of these (for example, a piano app would include touch input and audio output).




Most previous work to study latency has focused on measuring a single round-trip latency number. For example, to measure audio latency, an app would measure time from app to speaker/mic and back to the app using the Dr. Rick O'Rang loopback audio dongle together with an appropriate app such as the Dr Rick O’Rang Loopback app or Superpowered Mobile Audio Latency Test App. Similarly, the TouchBot uses a fast camera to measure the round-trip delay from physical touch until a change on the screen is visible. While valuable, the problem with such a setup is that it’s very difficult to break down the latency into input vs output components.



An important innovation in WALT (a descendant of QuickStep) is that it synchronizes an external hardware clock with the Android device or Chromebook to within a millisecond. This allows it to measure input and output latencies separately as opposed to measuring a round-trip latency.



WALT is simple. The parts cost less than $50 and with some basic hobby electronics skills, you can build it yourself.



We’ve been using WALT within Google for Nexus and Chromebook development. We’re now opening this tool to app developers and anyone who wants to precisely measure real-world latencies. We hope that having readily accessible tools will help the industry as a whole improve and make all our devices more responsive to touch and voice.















Kamis, 31 Maret 2016

Get your apps and games ready for space with Google Play (April Fools')

Posted by Lily Sheringham, Google Play team



Google Play lets you distribute your apps and games to over 1 billion active Android users around the world. With advances in space exploration and the advent of galactic tourism, there will be a high number of users beyond this world that developers need to start thinking about, too. Google Play can now help you reach them. We’ve added new features to the Google Play Developer Console and updated the material design guidelines, to help you design, test, and distribute your apps and games in space.



Here’s a look at how The Guardian, one of the largest English-news organizations in the world, enhanced its Android app to enable astronauts and space travellers to stay informed and up-to-date, while in orbit or on the surface of the moon.






"I am pleased to have The Guardian's application to test the growing Interplanetary Internet" says Vint Cerf, distinguished visiting scientist at the Jet Propulsion Laboratory and Google's Chief Internet Evangelist. "The interstellar version is in development and I'm looking forward to having more Google Play apps and games tested in space flight."



Get your apps and games ready for take off today.

Rabu, 02 Maret 2016

Find success on Google Play: What app developers can learn from games

Posted by Matteo Vallone, Business Development Manager at Google Play



(As a way to reach more app developers and help them grow successful businesses on Google Play, this post was first published on The Next Web – Ed.)



There is much common ground between freemium apps and games businesses when it comes to achieving success. Users are, however, more used to paying for games than apps, stemming from the history of traditional gaming consoles. Moreover, mobile games are also able to easily offer ‘virtual goods’ across a range of price points to suit every pocket. This means that game developers have had plenty of opportunity to learn about how to improve onboarding, conversion, and ultimately the user Lifetime Value (LTV). So what can app developers learn from game developers? Here are some best practice tips and insights from successful game developers that can be applied to many apps, today.



Drive app success the game developer way:



1. Optimize retention before investing in acquisition


Retention is king, and retention drives conversion. For games developers, retention is the key measure of game quality and whether it appeals to players.



Most game developers will “soft launch” to beta testing communities or test markets. During this phase, the game is tweaked to optimize retention by looking into specific areas, such as tutorial completion, level difficulty and conversion. Developers can then track retention using the Cohorts reports in Google Analytics. Once retention is satisfactory, the developer can go to full launch and start investing in user acquisition.



2. Retain users with step-by-step engagement



The first seven days after install are the most critical for retention: users install several apps to try them, and decide in the first few days which ones they want to keep using. If you can retain for that time span, your app is more likely to become part of the user’s daily routine.



There are some simple ways to progressively build user engagement. It’s important to present a strong story that explains why that app is relevant to the user, while introducing them to key features. Then place features that offer the user value early, so they can be found without much effort.



This is a not a one-size-fit-all. To find the right solution, a developer needs to first make assumptions on what user flows can improve retention and then run A/B tests to validate or correct them. For example, a developer could think that introducing sign-in later in the user flow might improve retention. Also, the developer needs to keep in mind what the key long term engagement metrics are for the individual app (such as photos uploaded or the number of articles read) and measure the impact of the different onboarding flows on those metrics as well.



In general, these principles are good places to start optimizing your onboarding:



  • Look for ways to let the users experience the app straight away, rather than taking them through a long, complex setup.

  • Present “activation moments” — such as registering an account, uploading a video, or finding friend — gradually

  • Start by requiring minimal investment by the user, then ask them for more details as they are needed to use the apps features.

  • Treat permissions as a service for the user. For example, if you want users to register, show them in advance that, by making their experience more personal, they’ll get more value from the app.




In this example, OkCupid tried different onboarding flows and found the most engaging version increased seven-day retention by over 20 percent.



Finally, ensure the user can understand the value of your app before you start asking them to pay. Game developers are particularly good at letting their users try most or all product features for free in in a set number of days or sessions.



A great tool to help analyze how users are engaging (or not) with the app is through the Flow Report in Google Analytics. Using this report, a developer can see how users navigate through the app and where they leave to identify potential roadblocks.



3. Target the right offers at the right users


Understanding different groups of users in-app purchase behavior is the key to devising strategies to encourage them to spend.



Start by identifying groups of users by how they spend and much they are likely to spend. It may be by age group, the channel that brought the install, or in-app behaviour. Use the Segment builder in Google Analytics to identify and define these groups of users. Then, tailor in-app purchase offers to match the segments spending behavior. For example, for segments where multiple users tend to spend more in one go, but spend infrequently, offer them in-app features bundled together.



4. Offer in-app purchases when users are most likely to spend


Users are also more likely to spend, if the purchasing experience is frictionless, and even more so when they can see how the expenditure will add value. So:



  • Present purchase opportunities to users when they’re most likely to need or want it — and explain to the user why it’s relevant.

  • Make purchasing accessible easily from within the app with a minimum number of taps. For example, offer an upgrade button on the footer of relevant screens.




TomTom added a countdown to indicate when the free service runs out (counted in kilometers travelled). The counter includes a button to upgrade offering a one tap in-app purchase.



Like all good game developers, they focus on building good experiences that retain and engage users through constant testing and analytics. First impressions are important, so users need to be able to quickly understand the importance of the app and easily navigate through the onboarding experience. And to start generating revenue, it is important to be thoughtful about how to make in-app purchases actionable.



Watch Matteo’s Playtime 2015 session ‘The rules of games, for apps’ to hear more in-depth insights which app developers can learn from games with best practices and developer examples:





You can also watch the other sessions from Google Playtime 2015 to learn more about tools and best practices which can help you find success with business on Google Play.