android 20: publishing

220
Android 20: Publishing Kirk Scott 1

Upload: asher-ellison

Post on 01-Jan-2016

25 views

Category:

Documents


0 download

DESCRIPTION

Android 20: Publishing. Kirk Scott. Introduction. There are several sections of the Android developer’s Web site One of these sections is, “Distribute” In this section the second heading is “Publishing” - PowerPoint PPT Presentation

TRANSCRIPT

1

Android 20: Publishing

Kirk Scott

2

3

4

5

6

Introduction

• There are several sections of the Android developer’s Web site

• One of these sections is, “Distribute”• In this section the second heading is

“Publishing”• This heading and its subheadings are listed on

the following overhead, given with numbers corresponding to this set of overheads

7

• 20.1 Publishing• 20.2 Get Started• 20.3 Developer Console• 20.4 Localization Checklist• 20.5 Launch Checklist

8

20.1 Publishing

9

• Upload apps, build your product pages, configure prices and distribution, and publish. You can manage all phases of publishing on Google Play through the Developer Console, from any web browser.

10

11

20.2 Get Started

12

• Get Started with Publishing• You can set up to start publishing on Google

Play in only a few minutes. • Here's how you do it: • Register for a Google Play publisher account• If you will sell apps, set up a Google Wallet

Merchant Account• Explore the Google Play Developer Console and

learn about the tools for publishing

13

• Register for a publisher account• The first step is to visit the Google Play

Developer Console and register for a publisher account.

• Here's what you will do during registration:

14

• 1. Visit the Google Play Developer Console at https://play.google.com/apps/publish/.

• 2. Enter basic information about your developer identity — developer name, email address, and so on.

• You can modify this information later.• 3. Read and accept the Developer Distribution

Agreement that applies to your country or region. • Note that apps and store listings that you publish on

Google Play must comply with the Developer Program Policies and US export law,

15

• 4. Pay a $25 USD registration fee using Google Wallet.

• If you don't have a Google Wallet account, you can quickly set one up during the process.

• When your registration is verified, you’ll be notified at the email address you specified during registration.

16

• Tips• You need a Google account to register. • You can create one during the process. • If you are an organization, consider registering a

new Google account rather than using a personal account.

• Review the developer countries and merchant countries where you can distribute and sell apps.

17

• Set up a Google Wallet Merchant account• If you want to sell products on Google Play —

priced apps, in-app products, or subscriptions — you will also need to set up a Google Wallet Merchant Account.

• You can do that at any time, but make sure to first review the list of merchant countries.

18

• To set up a Merchant account from the Developer Console:

• 1. Sign in to your Google Play Developer Console at https://play.google.com/apps/publish/

• 2. Open Financial reports on the side navigation. • 3. Click Setup a Merchant Account now.• This takes you to the Google Wallet site to sign

up as a Merchant; you'll need information about your business available to complete this step.

19

• Explore the Developer Console• When your registration is verified, you can

sign in to your Developer Console, which will be the home for your app publishing operations and tools on Google Play.

20

20.3 Developer Console

21

• Developer Console• Once you've registered and received

verification by email, you can sign in to your Google Play Developer Console, which will be the home for your app publishing operations and tools on Google Play.

• This sections below introduce a few of the key areas you'll find in the Developer Console.

22

All applications page: Gives you a quick overview of your apps, lets you jump to stats, reviews, and product

details, or upload a new app.

23

• Your account details• The account details page is where you specify

basic information about yourself or your company in a developer profile.

• The information in your developer profile is important because it identifies you to Google Play and also to your customers.

24

Account details page: Specifies your developer identity and contact information, accounts for app testing, and

more.

25

• During registration you must provide the information for your profile, but you can go back at any time to edit the information and change your settings.

• Your developer profile contains:• Your developer name — the name you want

to show users on your store listing page and elsewhere on Google Play.

26

• Your developer contact information — how Google can contact you if needed (this information isn't exposed to users).

• Your developer website URL — shown to users on your store listing page so they can learn more about your company or products.

• On the account details page you can also register for a merchant account, set up test accounts for Google Play licensing, and more.

27

• Multiple user accounts• If you are working with a team, you can set up

multiple user accounts to access different parts of your Developer Console.

• The first account registered is the account owner, with full access to all parts of the Console.

28

• The owner can add user accounts and manage what parts of the Console they have access to.

• For example, an owner can grant users access to publishing and app configuration, but not access to financial reports.

29

• Linking your Merchant Account• If you want to sell apps or in-app products,

you can link your Google Wallet merchant account to your developer profile.

• Google Play uses the linked merchant account for financial and tax identification and monthly payouts of sales.

30

• Your store listing details• The Developer Console lets you set up a

colorful storefront page for your app called the Store Listing page.

• Your Store Listing page is the home for your app in Google Play — it's the page users see on their mobile phones or on the web when they want to learn about your app and download it.

31

• You can upload custom brand assets, screen shots, and videos to highlight what's great about your app, and you can provide a localized description, add notes about the latest version, and more.

• You can update your store listing at any time, even if you don’t have a new version of your application.

32

• Store listing page: Lets you upload your graphic assets, description, support information, and other information to create the store listing page for a specific app.

33

34

• Uploading and publishing• From the Developer Console you can quickly

upload a release-ready APK and publish it when you're ready.

• The app is a draft until you publish it, at which time Google Play makes your store listing page and app available to users.

• You can unpublish the app at any time.

35

• Distribution controls• In the Developer Console you can manage

what countries and territories the app is distributed to and, for some countries, you can choose what carriers you want to target.

• You can also see the list of devices that your app is currently available to, based on any distribution rules declared in its manifest file.

36

• Selling and pricing your products• The Developer Console gives you tools to set

prices for your apps and in-app products. • Your app can either be free to download or

priced (charged before download).

37

• If you publish your app as free, it must remain free. Free apps can be downloaded by any users in Google Play.

• If you publish it as priced, you can later change it to free.

• Priced apps can be purchased and downloaded only by users who have registered a form of payment in Google Play.

39

• In addition, you can sell in-app products and subscriptions in your app, whether the app is free or priced.

• You can set prices separately for priced apps, in-app products, and subscriptions.

40

• If you are selling a priced app or in-app products or subscriptions, the Developer Console lets you set prices in a large number of different currencies.

• When users around the world visit your store listing, they see the price of your app in their own currency.

• For most countries, the price you set is the final price charged to users, inclusive of taxes.

41

• To help you manage your prices, the Developer Console provides an autofill capability that uses recent exchange rates to populate the prices in all supported currencies.

• You can change prices for apps and in-app products at any time, just by saving changes in the Developer Console.

42

• In-app Billing• In-app Billing is a Google Play service that lets

you monetize your apps in more ways by selling in-app products and subscriptions.

• In-app products are one-time purchases, while subscriptions are recurring charges on an monthly or annual basis.

43

• From the Developer Console you can create product lists for in-app products and subscriptions, set prices, and publish.

• In-app Billing• For details on how to implement In-app

Billing, see the In-app Billing developer documentation.

44

• User reviews and crash reports• Google Play makes it easy for users to submit

reviews of your app for the benefit of other users.

• The reviews are also extremely important to you, since they give you usability feedback, support requests, and important functionality issues direct from your customers.

45

• The Developer Console also lets you see crash reports, with stack trace and other data, submitted automatically from Android devices, for debugging and improving your app.

46

User reviews page: Gives you access to user reviews for a specific app. You can filter reviews in a number of ways to locate issues more easily and support your customers more effectively.

47

• App statistics• The Developer Console gives you detailed

statistics on the install performance of your app.

• You can view installations of your app measured by unique users, as well as by unique devices.

48

• For user installations, you can view active installs, total installs, daily installs and uninstalls, and metrics about user ratings.

• For devices, you can see active installs as well as daily installs, uninstalls, and upgrades.

49

• You can zoom into the installation numbers along several dimensions, including Android platform version, device, country, language, app version, and carrier (mobile operator).

• You can see the installation data for each dimension on a timeline charts.

50

• At a glance, these charts highlight your app’s installation peaks and longer-term trends, which you can correlate to promotions, app improvements, or other factors.

• You can even focus in on data inside a dimension by adding specific points (such as individual platform versions or languages) to the timeline.

51

• App statistics page: Shows you a variety of statistics about a specific app's installation performance over time.

52

53

20.4 Localization Checklist

54

• Localization Checklist• Android and Google Play give you a worldwide

audience for your app, with an addressable user base that's growing very rapidly in countries such as Japan, Korea, India, Brazil, Russia, and elsewhere.

• To maximize your app's distribution potential and earn high ratings from users around the world, we strongly encourage you to localize your app.

55

• Localization involves a variety of tasks throughout your app's development cycle, and advance planning is essential.

• Some of the tasks include translating your UI strings and localizing dates and times, layouts, text direction, and finally your Google Play store listing.

56

• This document helps you identify key aspects of localization to prepare for and the tasks you'll need to perform, to get your app ready for a successful worldwide launch on Google Play.

57

• 1. Identify target languages and locales• A basic but important step in preparing for

localization is identifying the countries where you will distribute your app and the languages spoken there.

• Google Play lets you distribute your app broadly to hundreds of countries, reaching users who speak a variety of languages.

58

• For international users, you can manage your app on three main dimensions: country, locale, and language.

• Of those, language is the key consideration for localization, although locale is also significant because of differences in formats for dates, times, currencies, and similar information.

• Users control both the language and locale used on their Android devices and in turn those affect the display of your app, once installed.

59

• Typically, you would decide which countries to target first, based on overall market size and opportunity, app category, competitive landscape, local pricing and financial factors, and so on.

• Then, based on your country targeting, you would determine the languages you need to support in your app.

60

• You will need to decide when to localize into some or all of the languages in your targeted countries.

• In some countries it might make most sense to deliver an app in a major regional or international language only, rather than in all locally spoken languages.

61

• Similarly, based on overall market size, you might decide to deliver your app in only a small number of key languages and offer English or another language for other countries.

• You can add more languages in the future as your app's userbase grows.

62

• Localizing your app is particularly important in countries where there is a large market opportunity and English or another international language is not widely used.

• Once you have identified your target languages, you can focus your development, translation, testing, and marketing efforts to these markets.

64

• 2. Design for localization• After you've determined your target languages

for localization, assess what you'll need to do to support them in your app and plan the work early.

• Consider the vocabulary expansion, script requirements, character spacing and wrapping constraints, left-to-right and right-to-left support, and other potential factors in each language.

65

• Design a single set of flexible layouts• As you create your layouts, make sure that any

UI elements that hold text are designed generously.

• It’s good to allow more space than necessary for your language (up to 30% more is normal) to accommodate other languages.

66

• Also, elements should be able to expand horizontally or vertically to accommodate variations in the width and height of UI strings or input text.

• Your text strings should not overlap borders or the screen edge in any of your target languages.

• If you design your UI carefully, you can typically use a single set of layouts for all of the languages you support.

• See Building a Flexible UI for more information.

67

• Use alternative layouts where needed• In cases where your UI can't accommodate text

in one of your target languages, you can create an alternative layout for that language only.

• Android makes it easy to declare sets of layouts and other resources to load for specific languages, locales, screen sizes, and so on, simply by tagging them with the appropriate resource qualifiers.

68

• Although you can use alternative layouts to work around isolated issues, they can also make your app harder to maintain over time.

• In general, using a single, more flexible layout is preferred.

69

• Support RTL layouts and text• If you are distributing to countries where right-

to-left (RTL) scripts are used, should consider implementing support for RTL layouts and text display and editing, to the extent possible.

• Android 4.1 introduced limited support for bidirectional text, allowing apps to display and edit text in both left-to-right (LTR) and right-to-left (RTL) scripts.

70

• Android 4.2 added full native support for RTL layouts, including layout mirroring, so that you can deliver the same great app experience to all of your users.

• At a minimum, for Android 4.2 users, it's simple to add basic RTL layout mirroring, which goes a long way toward meeting the needs of RTL users.

71

• Use system-provided formats for dates, times, numbers, and currencies

• Where your app specifies dates, times, numbers, currencies, and other entities that can vary by locale, make sure to use the system-provided formats, rather than app-specific formats.

• Keep in mind that not every locale uses the same thousands separator, decimal separator, or percent sign.

73

• If you hard-code your formats based on assumptions about the user's locale, your app could encounter problems when the user changes to another locale.

• The easiest and most reliable approach is to always use system-provided formats and utilities.

74

• Include a full set of default resources• Make sure that your app can run properly

regardless of language or locale by providing a complete set of default resources.

• The app's default resources are those that are not marked with any language or locale qualifiers, for example those stored in res/drawable/ and res/values/.

75

• If your app attempts to load a resource that isn't available in the current language or in the default set, the app will crash.

• Whatever the default language you are using in your app, make sure that you store the associated layouts, drawables, and strings in default resource directories, without language or locale qualifiers.

76

• Related resources:• Native RTL Support in Android 4.2 — Blog post that

explains how to support RTL in your UI.• Quantity Strings (Plurals) — Developer guide

describing how to work with string plurals according to rules of grammar in a given locale.

• Locale — Reference information about how to use locale data determine exactly what CLDR data or version of the Unicode spec a particular Android platform version uses.

77

• 3. Manage strings for localization• It's important to manage your app's UI strings

properly, so that you deliver a great experience for users and make localization straightforward.

78

• Move all strings into strings.xml• As you build your app, remember that it's a best

practice to keep all of your UI strings in a single file that's easy to update and localize.

• Declare all of your strings as resources in a default strings.xml file.

• Do not hard-code any strings into your compiled code—hard-coded strings are much more difficult to extract, translate, and load properly.

79

• If you keep all of your default strings in a strings.xml file, you can quickly extract them for translation, and once the translated strings are integrated back into your app with appropriate qualifiers, your app can load them without any changes to your compiled code.

• If you generate images with text, put those strings in strings.xml as well, and regenerate the images after translation.

80

• Follow Android guidelines for UI strings• As you design and develop your UI, make sure

that you pay close attention to how you talk to your user.

• In general, use a succinct and compressed style that is friendly but brief, and use a consistent style throughout your UI.

81

• Make sure that you read and follow the Android Design recommendations for writing style and word choice.

• Doing so will make your app appear more polished to the user and will help users understand your UI more quickly.

82

• Also, always use Android standard terminology wherever possible—such as for UI elements such as "Action Bar," "Options Menu," "System Bar," "Notifications," and so on.

• Using Android terms correctly and consistently makes translation easier and results in a better end-product for users.

83

• Provide sufficient context for declared strings• As you declare strings in your strings.xml file,

make sure to describe the context in which the string is used.

• Add comments before each string that may need clarification.

• This information will be invaluable to translators and will help you manage your strings more effectively over time.

84

• For example, background information to provide might include:

• What is this string for? • When/where is it presented to the user?• Where is this in the layout? • For example, if it’s a button, translations are

less flexible than if it were a text box.

85

• Here's an example:

• <!-- The action for submitting a form. This text is on a button that can fit 30 chars -->

• <string name="login_submit_button">Sign in</string>

86

• Mark message parts that should not be translated• Often strings contain contain text that should not be

translated to other languages. • Common examples might be a piece of code, a

placeholder for a value, a special symbol, or a name. • As you prepare you strings for translation, look for

and mark text that should remain as-is, without translation, so that translators do not change it.

87

• To mark text that should not be translated, use an <xliff:g> placeholder tag.

• Here's an example tag that ensures the text “%1$s” will not be changed during translation (otherwise it could break the message):

• <string name="countdown">    <xliff:g id="time" example="5 days>%1$s</xliff:g>until holiday</string>

88

• When you declare a placeholder tag, always add an id attribute that explains what the placeholder is for.

• If your app will later replace the placeholder value, be sure to provide an example attribute to clarify the expected usage.

• Here are some more examples of placeholder tag usage:

89

• <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">    <!-- Example placeholder for a special unicode symbol -->    <string name="star_rating">Check out our 5         <xliff:g id="star">\u2605</xliff:g>    </string>    <!-- Example placeholder for a for a URL -->    <string name="app_homeurl">        Visit us at <xliff:g id="application_homepage">http://my/app/home.html</xliff:g>    </string>    <!-- Example placeholder for a name -->    <string name="prod_name">        Learn more at <xliff:g id="prod_gamegroup">Game Group</xliff:g>    </string>    <!-- Example placeholder for a literal -->    <string name="promo_message">        Please use the ”<xliff:g id="promotion_code">ABCDEFG</xliff:g>” to get a discount.    </string>    ...</resources>

90

• Related resources:• String Resources — Developer guide

explaining how to use string resources in your UI.

• Writing Style — Android Design guidelines for voice and style in your UI.

• XML Localisation Interchange File Format (XLIFF) — Background information on XLIFF.

91

• 4. Translate UI strings and other resources• Translating your app's UI strings and resources

to your target languages is the key phase of localization, and it's the one that requires the most care and planning.

92

• In general, it's recommended to work with a professional translator to ensure that the work goes smoothly, stays on schedule, and results in a high-quality product that will enhance the value of your app.

93

• If you are considering machine translations as an alternative, keep in mind that automated translations are less reliable than high-quality professional translations and may not produce as good an experience for your users.

94

• Prepare for translation• Getting high-quality translation output

depends in part on your input. • To get ready for translation, make sure that

your strings.xml file is well organized, well commented, and accurate.

• Here are some ways to prepare your strings for translation:

95

• Make sure your strings are formatted correctly and consistently.

• Follow the strings recommendations listed in Manage strings for localization, above.

• Clean up the strings.xml file and remove unused strings.

• Place comments in the file to identify the owner, origin, and the version of the file, as well as any special instructions for translators.

96

• Identify existing translations, if any, and include those in an outgoing zip file or other package that you will send to translators.

• Identify drawables or other resources that require translation and include them in the outgoing package for translators.

97

• Additionally, consider translating your app's store listing details — app title and description, release notes, and so on — as well as other international marketing materials.

• Create a terminology list that explains the meaning and usage of key terms used in your product, your market, or the underlying technology.

• Add the list to the outgoing package.

98

• Send your strings for translation• Early in the development cycle, contact professional

translation vendors for your target languages to get an idea of cost, lead time required, turnaround time, and so on.

• Then select a vendor and secure their services, making sure to include multiple iterations in the cost as a safeguard.

• Google Play can help you do this — see Purchase professional translations, below.

99

• As soon as your app's UI strings and design are stable, work with your development team to extract all of the strings and other resources from the app and package them together for the translator.

• If appropriate, you can version the outgoing package for later identification.

100

• When the outgoing package is ready, send it to the translator or share it with them over a cloud platform such as Google Drive.

• Keep a record of what you sent and when you sent it, to cross-reference against returning translations and billing invoices from the translator.

101

• When your translations are complete, take a preliminary look at the translations.

• Check that all files were translated, check for potential encoding issues, and make sure that declaration formats are intact.

102

• If everything looks good, carefully move the localized directories and files back into your app's resources.

• Make sure to tag the directories with the appropriate language and locale qualifiers so that they'll later be loaded properly.

• After the translations are merged back into your app, start testing the localized app.

103

• Purchase professional translations through Google Play App Translation Service

• Google Play App Translation Service can help you quickly find and purchase translations of your app.

• In the Developer Console, you can browse a list of third-party vendors who are pre-qualified by Google to offer high-quality translation at competitive prices.

• You can upload the strings you want translated, select the languages you want to translate into, and select your translation vendor based on time and price.

104

• Once you've purchased translations, you'll receive an email from your vendor.

• Your translations are a direct business agreement between you and your vendor; you'll need to work directly with the vendor to manage the translation process and deliverables and resolve any support issues.

105

• App Translations in Google Play• Hear from developers who have used the

Google Play App Translation Service in Developer Stories: Localization in Google Play.

• To make it easy to export your app's strings and import the finished translations into your project, try the ADT Translation Manager Plugin.

106

• 5. Test your localized app• Once you've received your translated strings and

resources and moved them back into your app, you need to test the app to make sure that it's ready for distribution to your international users.

• Manual testing can help you discover localization issues in your layouts and strings that can affect user satisfaction and, ultimately, your app's user rating.

107

• Set up a test environment• To test your localized app, you'll need to set up

an environment consisting of multiple devices (or virtual devices) and screen sizes, based on the markets and form factors you are targeting.

• Note that the range of devices in specific regions might be different.

• If possible, match your test devices to the actual devices likely to be available to users.

108

• Look for common localization issues• On each test device, set the language or locale

in Settings. • Install and launch the app and then navigate

through all of the UI flows, dialogs, and user interactions.

• Enter text in inputs. • Some things to look for include:

109

• Clipped text, or text that overlaps the edge of UI elements or the screen

• Poor line wrapping• Incorrect word breaks or punctuation• Incorrect alphabetical sorting• Incorrect layout direction or text direction• Untranslated text — if your default strings are displayed

instead of translated strings, then you may have overlooked those strings for translation or marked the resources directory with an incorrect language qualifier.

110

• For cases where your strings have expanded in translation and no longer fit your layouts, it's recommended to simplify your default text, simplify your translated text, or adjust your default layouts.

• If none of those resolves the issue, you can create a custom layout for the language.

111

• Test for default resources• After you've tested your app in all of your

supported languages and locales, make sure to test it again in an unsupported language and locale.

• This will help you make sure that your app includes a full set of default strings and resources, so that your app is usable to all users, regardless of their preferred language.

112

• Review with native-language speakers• During or after testing, it's recommended that

you let native speakers review your localized app.

• One way to do that is through beta testing with regional users — Google Play can help you do this.

• See Plan a beta release for more information.

113

• Prepare for international launch• Getting your app translated is a key part of

localization, but to help your product attract users and gain visibility, you should prepare for launch in your target countries and create a broader launch and marketing plan for international users.

114

• Localize your Google Play listing• If you want your app to be successful in

international markets, it's essential to localize your Google Play store listing.

• You can manage your localized listing in the Developer Console.

115

• Localize your Google Play listing• Highlight what's great about your app to all of

your users! • Localize your listing in the Developer Console: • App title and description• App screenshots on phones and tablets• Promotional graphics and videos.

116

• Well before launch, decide on your app title, description, promotional text, marketing names and programs, and other text and images.

• Send your listing text and images for translation early, so that you have them ready when beta testing begins.

• When your translated text is available, you can add it through the Developer Console.

117

• Also, since you've made the effort to create a great localized app, let users know about it!

• Take screenshots of your UI in each language, for phones and 7- and 10- inch tablets.

• You can upload screenshots to the Developer Console for each language you support.

• These will be of great value to users browsing your app listing in other languages.

118

• It's also essential to create localized versions of your promotional graphics and videos.

• For example, your app's feature graphic might include text that should be translated, for maximum effectiveness, or you might want to take a different visual approach in one country than you do in another.

119

• You can create different versions of your promotional graphics for each language and upload them to the Developer Console.

• If you offer a promotional video, you can create localized versions of it and then add a link to the correct localized video for each language you support.

120

• Plan a beta release in key countries• Before launching your app, it's always valuable to

get real-world feedback from users — even more so when you are launching an app in a new language, country, or region.

• In those cases, it's highly recommended that you distribute a pre-release version of your app to users across your key markets and provide an easy means for them to provide feedback and report bugs.

121

• Easy beta testing• Google Play now lets you set up groups of

alpha and beta testers, anywhere around the world.

• Check out this powerful feature next time you sign in to the Developer Console.

122

• Google Play can help you set up a beta program for your app.

• After you sign in to the Developer Console and upload your APK, you can set up groups of users for alpha testing and beta testing the app.

• You can start with a small group of alpha testers, then move to a larger group of beta testers.

123

• Once users are added, they access your app's store listing and install the app.

• User feedback from alpha and beta testers goes directly to you and is not posted as public reviews.

• The feedback you receive will help you adjust your UI, translations, and store listing to ensure a great experience for users.

124

• Plan for international marketing• For highest visibility across countries, consider

an international marketing or advertising campaign.

• The scope of the campaign might vary based on the budget you can support, but in general it's cost-effective and productive to do regional or country-specific marketing at launch and after.

125

• Create localized Google Play badges• If you are preparing international marketing,

make sure to include a localized Google Play badge to tell users you're on Google Play.

• You can use the badge generator to quickly build localized badges that you can use on web sites or marketing materials.

• High-resolution assets are also available.

126

• Create Localized Device Art• If you feature product shots of your app

running on Android devices, make sure that those shots look great and reflect the latest in Android devices.

• To help you create high-quality marketing materials, use the drag-and-drop Device Art Generator to quickly frame your screen shot on a Nexus device.

127

• Check your Optimization Tips• As you prepare for launch, make sure to sign

into the Developer Console and check your app's Optimization Tips.

• The Optimization Tips let you know when you are missing parts of your localized store listing and provide other helpful reminders for a successful localized launch.

128

• Support International Users after Launch• After you launch your app internationally, you

should be prepared to support users in a variety of languages and time zones.

• The extent of your international user support depends on your budget, but at a minimum you should watch your ratings, reviews, and download stats carefully after launch.

• Here are some suggestions:

129

• Use the app stats in the Developer Console to compare your downloads, installs, and uninstalls, and ratings across languages and countries—If your downloads or ratings are not keeping up in specific languages or countries, consider options for improving your product or changing your marketing approach.

130

• Check reviews regularly—Google Play translates all user reviews for you, so you can stay in touch with how international users feel about your app, what features they like and what issues are affecting them.

• By watching reviews, you can spot technical issues that may affect many users in a particular country, then fix and update your app.

131

• Respond to reviews if possible—It's good to engage with international users in their language or a common language if possible.

• If not, you can try using translation tools, although results may not be predictable.

• If your app gets very popular in a language, consider getting support help from native-language speakers.

132

• Make sure there's a link to any support resources on your web site.

• Consider setting up language-specific user groups, Google+ communities, or other support forums.

133

• By following these practices for localizing your app, promoting and marketing to international users, and providing ongoing support, you can attract many new users to your app and maintain their loyalty.

• Make sure to read the Launch Checklist to learn more about how to plan, build, and launch your app on Google Play.

134

20.5 Launch Checklist

135

• Launch Checklist• Before you publish your app on Google Play

and distribute it to users, you need to get the app ready, test it, and prepare your promotional materials.

136

• This document helps you understand the publishing process and get ready for a successful product launch on Google Play.

• It summarizes some of the tasks you'll need to complete before publishing your app on Google Play, such as creating a signed, release-ready APK, understanding the requirements of the app, and creating the product page and graphic assets for your app.

137

• The preparation and publishing tasks are numbered to give you a rough idea of sequence.

• However, you can handle the tasks in any sequence that works for you or you can skip steps as appropriate.

• As you move toward publishing, a variety of support resources are available to you. Relevant links are provided in each step.

138

• 1. Understand the publishing process• Before you begin the steps in this checklist,

you should take a moment to read and understand the overall publishing workflow and become familiar with how the process works.

139

• In particular, you or your development team will need to prepare your app for release using a process common to all Android apps.

• The Publishing Workflow documents provide the details on how publishing works and how to get an APK ready for release.

140

• Once you are familiar with publishing in general, read this document to understand the issues that you should consider when publishing an app on Google Play.

141

• Related resources:• General Publishing Overview — Start here for

an overview of publishing options for Android apps.

• Preparing for Release — Developer documentation on how to build the signed, release-ready APK.

• This process is the same for all Android apps.

142

• 2. Understand Google Play policies and agreements

• Make sure that you understand and follow the Google Play program policies that you accepted when registering.

• Google Play actively enforces the policies and any violations can lead to suspension of your app or, for repeated violations, termination of your developer account.

143

• Related resources:• Google Play Policies and Guidelines — An

overview of Google Play policies for spam, intellectual property, and ads, with examples of common problems.

• — Help Center document describing various content policies and processes. Policy and Best Practices — Help Center document describing various content policies and processes.

144

• 3. Test for Core App Quality• Before you publish an app on Google Play, it's

important to make sure that it meets the basic quality expectations for all Android apps, on all of the devices that you are targeting.

• You can check your app's quality by setting up a test environment and testing the app against a short set of core app quality criteria.

145

• For complete information, see the Core App Quality Guidelines.

• If your app is targeting tablet devices, make sure that it delivers a rich, compelling experience to your tablet customers.

• See the Tablet App Quality Checklist for recommendations on ways to optimize your app for tablets.

146

• Related resources:• Core App Quality Guidelines — A set of core

quality criteria that all Android apps should meet on all targeted devices.

• Tablet App Quality Checklist — A set recommendations for delivering the best possible experience to tablet users.

147

• 4. Determine your app's content rating• Google Play requires you to set a content

rating for your app, which informs Google Play users of its maturity level.

• Before you publish, you should confirm what rating level you want to use.

• The available content rating levels are:

148

• Everyone• Low maturity• Medium maturity• High maturity

149

• On their Android devices, Android users can set the desired maturity level for browsing. Google Play then filters apps based on the setting, so the content rating you select can affect the app's distribution to users.

• You can assign (or change) the content rating for your app in the Developer Console, so no changes are required in your app binary.

150

• Related resources:• Rating your application content for Google Pl

ay — Help Center document describing content ratings levels and how to choose the appropriate one for your app.

151

• 5. Determine country distribution• Google Play lets you control what countries

and territories your app is distributed to. • For widest reach and the largest potential

customer base, you would normally want to distribute to all available countries and territories.

152

• However, because of business needs, app requirements, or launch dependencies, you might want to exclude one or more countries from your distribution.

• It's important to determine the exact country distribution early, because it can affect:

153

• The need for localized resources in the app• The need for a localized app description in the

Developer Console• Legal requirements for the app that may be

specific to certain countries• Time zone support, local pricing, and so on.

154

• With your country targeting in mind, you should assess what your localization needs are, both in your app and in its Google Play listing details, and start the work of localization well in advance of your launch target date.

• See Localization Checklist for key steps and considerations in the localizing process.

155

• Related resources:• Localization Checklist — Overview of key

steps and considerations for localizing your Android app.

• Supported locations for distributing applications on Google Play. .

156

• 6. Confirm the app's overall size• The overall size of your app can affect its design and

how you publish it on Google Play. • Currently, the maximum size for an APK published

on Google Play is 50 MB. • If your app exceeds that size, or if you want to offer

a secondary download, you can use APK Expansion Files, which Google Play will host for free on its server infrastructure and automatically handle the download to devices.

157

• The maximum size for an APK published on Google Play is 50 MB.

• You can use up to two (2) APK Expansion Files, each up to 2 GB in size, for each APK.

158

• Using APK Expansion files is a convenient, cost-effective method of distributing large apps.

• However, the use of APK Expansion Files requires some changes in your app binary, so you will need to make those changes before creating your release-ready APK.

• To minimize the size of your app binary, make sure that you run the Proguard tool on your code when building your release-ready APK.

159

• Related resources:• APK Expansion Files — Developer

documentation describing APK Expansion Files and how to support them in your app.

• ProGuard — Developer documentation describing how to use ProGuard to shrink, optimize, and obfuscate your code prior to release.

160

• 7. Confirm the app's platform and screen compatibility ranges

• Before publishing, it's important to make sure that your app is designed to run properly on the Android platform versions and device screen sizes that you want to target.

161

• From an app-compatibility perspective, Android platform versions are defined by API level.

• You should confirm the minimum version that your app is compatible with (<minSdkVersion>), as that will affect its distribution to Android devices once it is published.

162

• For screen sizes, you should confirm that the app runs properly and looks good on the range of screen sizes and densities that you want to support.

• You should confirm the minimum screen-size and density support that your app declares (<supports-screens>), since that can affect its distribution to Android devices once it is published.

163

• To get a better understanding of the current device penetration of Android platform versions and screen sizes across all Android devices, see the Device Dashboard charts.

164

• Related resources:• Device Dashboard — A chart showing global

percentages of devices by Android version, screen size, and level of OpenGL ES support.

• Android API Levels — A definition of API Levels and a list of which Android platform versions they are associated with.

165

• 8. Decide whether your app will be free or priced• On Google Play, you can publish apps as free to

download or priced. • Free apps can be downloaded by any Android

user in Google Play. • Paid apps can be downloaded only by users who

have registered a form of payment in Google Play, such as a credit card or Direct Carrier Billing.

166

• Deciding whether you app will be free or paid is important because, on Google Play, free apps must remain free.

• Once you publish your app as a free app, you cannot ever change it to being a priced app.

• However, you can still sell in-app products and subscriptions through Google Play's In-app Billing service.

167

• If you publish your app as a priced app, you can change it at any time to being a free app (but cannot then change it back to priced).

• You can also sell in-app products and subscriptions.

• If your app is be priced, or if you'll be selling in-app products, you need set up a Google Wallet merchant account before you can publish.

168

• Related resources:• In-app Billing — Developer introduction to

Google Play In-app Billing.

169

• 9. Consider using In-app Billing• Google Play In-app Billing lets you sell digital

content in your applications. • You can use the service to sell a wide range of

content, including downloadable content such as media files or photos, and virtual content such as game levels or potions.

170

• In-app Billing service lets you sell one-time purchases and subscriptions from inside your app.

• This can help you to monetize the app over its installed lifetime.

• If your are looking for more ways to monetize your app and build engagement, you should consider In-app Billing.

171

• The service has become very popular with both users and developers.

• To use In-app Billing, you need to make changes to your app binary, so you will need to complete and test your implementation before creating your release-ready APK.

172

• Related resources:• In-app Billing — Developer documentation

describing In-app Billing and how to support it in your app.

173

• 10. Set prices for your products• If your app is priced or you will sell in-app

products, Google Play lets you set prices for your products in a variety of currencies, for users in markets around the world.

• You can set prices individually in different currencies, so you have the flexibility to adjust your price according to market conditions and exchange rates.

174

• Before you publish, consider how you will price your products and what your prices will be in various currencies.

• Later, you can set prices in all available currencies through the Developer Console.

175

• Related resources:• Selling Apps in Multiple Currencies — Help Center

document describing how pricing works in Google Play.• Prices and supported currencies — Help Center

document listing supported currencies for pricing your apps.

• Transaction Fees — Help Center document describing transaction fees for priced apps and in-app products.

• Specifying tax rates — Help Center document describing how to set tax rates for different countries.

176

• 11. Start localization• With your country targeting in mind, it's a

good idea to assess your localization needs and start the work of localizing well in advance of your target launch date.

177

• There are at least three aspects of localization to consider:

• Localizing the strings, images, and other resources in your app

• Localizing your app's store listing details on Google Play

• Localizing the app's graphic assets, screenshots, and videos that accompany your store listing.

• See Localization Checklist for key steps and considerations in the localizing process.

178

• To localize your store listing, first create and finalize your app title, description, and promotional text.

• Collect and send all of these for localization. You can optionally translate the "Recent Changes" text for app updates as well.

• Later you can add your localized listing details in the Developer Console, or you can choose to let Google Play auto-translate your listing details into the languages you support.

179

• A key part of making your app listing attractive to a global customer base is creating localized versions of your promotional graphics, screenshots and videos.

• For example, your app's feature graphic might include text that should be translated, for maximum effectiveness.

• You can create different versions of your promotional graphics for each language and upload them to the Developer Console.

180

• If you offer a promotional video, you can create localized versions of it and then add a link to the correct localized video for each language you support.

• When your translations are complete, move them into your app resources as needed and test that they are loaded properly.

• Save your app's translated listing details for later, when you upload assets and configure your product details.

181

• Related resources:• Localization Checklist — Overview of key

steps and considerations for localizing your Android app.

• Localizing with Resources — Developer guide to localizing resources in your app.

182

• 12. Prepare promotional graphics, screenshots, and videos

• When you publish on Google Play, you can supply a variety of high-quality graphic assets to showcase your app or brand.

• After you publish, these appear on your product details page, in store listings and search results, and elsewhere.

183

• These graphic assets are key parts of a successful product details page that attracts and engages users, so you should consider having a professional produce them for you.

• Screen shots and videos are also very important, because they show what your app looks like, how it's used or played, and what makes it different.

184

• All of your graphic assets should be designed so that they are easy to see and highlight your app or brand in a colorful, interesting way.

• The assets should reference the same logo and icon as users will actually find in the All Apps launcher once they have downloaded the app.

• Your graphic assets should also fit in well with the graphic assets of other apps published by you, which will be also be displayed to users on your product details page.

185

• To help you market your app more effectively to a global audience, Google Play lets you create localized versions of your promotional graphics, screenshots, and videos and upload them to the Developer Console.

• When a user visits your app's store listing, Google Play displays the promotional graphic, screenshots and video that you've provided for the user's language.

186

• To localize your promotional graphics, you can translate any embedded text, use different imagery or presentation, or change your marketing approach to best address the needs of users in specific languages.

• For example, if your feature or promotional graphic includes and embedded product name or tag line, you can translate that text and add it to a localized version of the promotional graphic.

187

• Because your localized graphic assets and videos are so important, you should get started on creating them and localizing them well in advance of your target publishing date.

• Note: Localized promotional graphics and videos are supported only in the new Developer Console design.

188

• Related resources:• Graphic Assets for your Application — Details

about the graphic assets you need to upload before publishing.

• Google Play Featured Image Guidelines — Blog post that highlights key design considerations for your app's featured image.

189

• 13. Build and upload the release-ready APK• When you are satisfied that your app meets

your UI, compatibility, and quality requirements, you can build the release-ready version of the app.

• The release-ready APK is what you you will upload to the Developer Console and distribute to users.

190

• The process for preparing a release-ready APK is the same for all apps, regardless of how they are distributed.

• Generally the process includes basic code cleanup and optimization, building and signing with your release key, and final testing.

• When you are finished preparing your application for release, you'll have a signed APK file that you can upload to the Developer Console for distribution to users.

191

• For complete details on how to create a release-ready version of your app, read Preparing for Release.

• Once you have the release-ready APK in hand, you can upload it to the Developer Console.

• If necessary, you can replace the APK with a more recent version before publishing.

192

• Related resources:• Preparing for Release — Essential information

for preparing and packaging your app properly for distribution.

193

• 14. Plan a beta release• Before launching your app, it's always valuable

to get real-world feedback from users — even more so when you are launching a new app.

• It's highly recommended that you distribute a pre-release version of your app to users across your key markets and provide an easy means for them to provide feedback and report bugs.

194

• Easy beta testing• Google Play now lets you set up groups of

alpha and beta testers, anywhere around the world.

• Check out this powerful feature next time you sign in to the Developer Console.

195

• Google Play can help you set up a beta program for your app.

• After you sign in to the Developer Console and upload your APK, you can set up groups of users for alpha testing and beta testing the app.

• You can start with a small group of alpha testers, then move to a larger group of beta testers.

196

• Once users are added, they access your app's store listing and install the app.

• User feedback from alpha and beta testers goes directly to you and is not posted as public reviews.

• The feedback you receive will help you adjust your UI, translations, and store listing to ensure a great experience for users.

197

• 15. Complete the app's product details• On Google Play, your app's product

information is shown to users on its product details page, the page that users visit to learn more about your app and the page from which they will decide to purchase or download your app, on their Android devices or on the web.

198

• Google Play gives you a variety of ways to promote your app and engage with users on your product details page, from colorful graphics, screenshots, and videos to localized descriptions, release details, and links to your other apps.

• As you prepare to publish your app, make sure that you take advantage of all that your product details page can offer, making your app as compelling as possible to users.

199

• You should begin planning your product page in advance of your target launch date, arranging for localized description, high-quality graphic assets, screenshots and video, and so on.

• As you get near your target publishing date, you should become familiar with all the fields, options, and assets associated with the product details configuration page in the Developer Console.

200

• As you collect the information and assets for the page, make sure that you can enter or upload it to the Developer Console, until the page is complete and ready for publishing.

• After you've set your app's geographic targeting in the Developer Console, remember to add your localized product details, promotional graphics, and so on, for all of the languages that you support.

201

• If your app is targeting tablet devices, make sure to include at least one screen shot of the app running on a tablet, and highlight your app's support for tablets in the app description, release notes, promotional campaigns, and elsewhere.

202

• Related resources:• Category types — Help Center document

listing available categories for apps.• Graphic Assets for your Application — Help

Center document describing the various graphics you can add to your product listing.

203

• 16. Use Google Play badges and links in your promotional campaigns

• Google Play badges give you an officially branded way of promoting your app to Android users.

• Use the Google Play Badge generator to quickly create badges to link users to your products from web pages, ads, reviews, and more.

• You can also use special link formats to link directly to your product details page, to a list of your products, or to search results.

204

• To help your app get traction after launch, it's strongly recommended that you support launch with a promotional campaign that announces your product through many channels as possible, in as many countries as possible.

• For example, you can promote the launch using ad placements, social network or blog posts, video and other media, interviews and reviews, or any other channel available.

205

• Related resources:• Google Play Badges — Generate a badge to

bring users to your app in Google Play.• Linking to Your Products — Link formats that

you can use to bring users to your app in Google Play.

206

• 17. Final checks and publishing• When you think you are ready to publish, sign

in to the Developer Console and take a few moments for a few final checks.

• Make sure that:

207

• Your developer profile has the correct information and is linked to the proper Google Wallet merchant account (if you are selling products).

• You have the right version of the app uploaded.

• All parts of your Product Details are ready, including all graphic assets, screenshots, video, localized descriptions, and so on.

208

• You have set your app's pricing to free or priced. • You have set country (and carrier) targeting and

priced your products (if appropriate) in buyer currencies

• "Compatible devices" shows that your app is actually reaching the devices that you are targeting.

• If not, you should check with your development team on the apps requirements and filtering rules.

209

• You have provided the correct link to your web site and the correct support email address.

• Your app does not violate content policy guidelines.

• You have acknowledged that your app meets the guidelines for Android content on Google Play and also US export laws.

• Your app is now ready to publish!

210

• If you are releasing an update, make sure to read the requirements for publishing updates.

• When you are ready, click the Publish button in the Developer Console.

• Within a few hours, your app will become available to users and your product page will be appear in Google Play for browsing, searching, or linking from your promotional campaigns.

211

• Related resources:• Google Play Developer Program Policies —

Guidelines for what is acceptable conent in Google Play. Please read and understand the policies before publishing.

• Updates — Requirements for app updates in Google Play.

• Developer Support — Support resources that you can use to find answers and report issues.

212

• 18. Support users after launch• After you publish an app or an app update, it's

crucial for you to support your customers. Prompt and courteous support can provide a better experience for users that results in better ratings and more positive reviews for your products.

213

• Users are likely to be more engaged with your app and recommend it if you are responsive to their needs and feedback.

• This is especially true after publishing if you are using a coordinated promotional campaign.

214

• There are a number of ways that you can keep in touch with users and offer them support.

• The most fundamental is to provide your support email address on your product details page.

• Beyond that, you can provide support in any way you choose, such as a forum, mailing list or a Google+ page.

215

• The Google Play team does provide user support for downloading, installing and payments issues, but issues that fall outside of these topics will fall under your domain.

• Examples of issues you can support include: feature requests, questions about using the app and questions about compatibility settings.

• After publishing, plan to:

216

• Check your ratings and reviews frequently on your app's product details page.

• Watch for recurring issues that could signal bugs or other issues.

• Be mindful of new Android platform version launches, as compatibility settings for your apps might need to be updated.

• Put a link to your support resources on your web site and set up any other support such as forums.

217

• Provide an appropriate support email address on your product details page and respond to users when they take the time to email you.

• Beyond the automatic refund window offered by Google Play, be generous with your own refund policy, as satisfied users will be more likely to purchase in the future.

• Acknowledge and fix issues in your app. • It helps to be transparent and list known issues on

your product details page proactively.

218

• Publish updates as frequently as you are able, without sacrificing quality or annoying users with too-frequent updates.

• With each update, make sure to provide a summary of what's changed.

• You can enter this information in the Developer Console.

• Users will read it and appreciate that you are serious about improving the quality of your app.

219

• Related resources:• Supporting your users — Help Center

document describing options for supporting users.

• In-app Billing — Help Center document describing how to correctly set up In-app Billing.

• Issuing Refunds — -- Help Center document describing how to issue refunds.

220

The End