Publishing Your Applications

Publishing quickview

  • You can publish your application using a hosted service such as Android Market or through a web server.
  • Before you publish, make sure you have prepared your application properly.
  • Android Market makes it easy for users of Android-powered devices to see and download your application.

In this document

  1. Publishing on Android Market
    1. Publishing Updates on Android Market
    2. Using Intents to Launch the Market Application

See also

  1. Preparing to Publish

Interested in publishing your app on Android Market?

Go to Android Market

Publishing an application means testing it, packaging it appropriately, and making it available to users of Android-powered mobile devices for download or sideload.

애플리케이션을 배포한다는 것은 애플리케이션을 적절하게 테스트하고 패키지하며 그것을 안드로이드 모바일 디바이스 사용자들에게 다운로드 또는 사이드로드sideload 할 수 있도록 만드는 것을 의미한다.

If you've followed the steps outlined in Preparing to Publish Your Applications, the result of the process is a compiled .apk that is signed with your release private key. Inside the .apk, the application is properly versioned and any MapView elements reference a Maps API Key that you obtained by registering the MD5 fingerprint of the same certificate used to sign the .apk. Your application is now ready for publishing.

만약 여러분이 17장. “배포를 위한 준비”에서 기술된 단계들을 따랐다면, 그 결과는 여러분의 릴리즈 개인 키private key를 가지고 사인된 컴파일된 .apk 파일이다. 그 .apk 내부에서, 애플리케이션은 정확하게 버전화되어 있으며 임의의 맵뷰MapView 엘리먼트들은 .apk를 사인하기 위해 사용된 것과 동일한 인증서의 MD5 fingerprint를 등록하여 얻은 맵 API 키Key를 레퍼런스한다. 여러분의 애플리케이션은 이제 배포할 준비가 되었다.

The sections below provide information about publishing your Android application to mobile device users.

아래의 섹션들은 모바일 디바이스 사용자들에게 여러분의 안드로이드 애플리케이션을 배포하는 것에 관한 정보를 제공한다.

Publishing on Android Market

Android Market is a hosted service that makes it easy for users to find and download Android applications to their Android-powered devices, and makes it easy for developers to publish their applications to Android users.

안드로이드 마켓은 사용자가 자신들의 안드로이드 디바이스에 안드로이드 애플리케이션을 쉽게 찾아서 다운로드 할 수 있고 개발자들에게는 안드로이드 사용자들에게 애플리케이션을 쉽게 배포할 수 있는 호스트된 서비스이다.

To publish your application on Android Market, you first need to register with the service using your Google account and agree to the terms of service. Once you are registered, you can upload your application to the service whenever you want, as many times as you want, and then publish it when you are ready. Once published, users can see your application, download it, and rate it using the Market application installed on their Android-powered devices.

안드로이드 마켓에 여러분의 애플리케이션을 배포하고자 한다면, 여러분은 먼저 구글 계정을 사용해서 서비스에 등록하고 서비스 규정에 동의해야 한다. 일단 여러분이 마켓에 등록되면, 원할 때면 언제라도 원하는 횟수만큼 서비스에 애플리케이션을 업로드할 수 있으며, 그런 다음에 여러분이 준비될 때 그것을 배포할 수 있다. 일단 배포가 되면, 사용자들은 그들의 안드로이드 디바이스에 설치된 마켓 애플리케이션을 사용해서 애플리케이션을 보고, 다운로드 하고, 평가할 수 있다.

To register as an Android Market developer and get started with publishing, visit the Android Market:

안드로이드 마켓 개발자로 등록하고 배포를 하려고 한다면, 아래의 안드로이드 마켓(Android Marekt)을 방문하라.

http://market.android.com/publish

http://market.android.com/publish

If you plan to publish your application on Android Market, you must make sure that it meets the requirements listed below, which are enforced by the Market server when you upload the application.

만약 여러분이 안드로이드 마켓에 여러분의 애플리케이션을 배포할 계획이라면, 여러분의 애플리케이션이 아래에 나열된 요구 사항들을 만족시키는 지를 확인해야 하며 이 요구사항들은 여러분이 애플리케이션을 업로드할 때 마켓 서버에 의해 강제된다enforced.

Requirements enforced by the Android Market server:

안드로이드 마켓 서버에 의해 강제되는 요구사항.

  1. Your application must be signed with a cryptographic private key whose validity period ends after .
  2. Your application must define both an android:versionCode and an android:versionName attribute in the <manifest> element of its manifest. The server uses the android:versionCode as the basis for identifying the application internally and handling updates, and it displays the android:versionName to users as the application's version.
  3. Your application must define both an android:icon and an android:label attribute in the <application> element of its manifest.
  1. 여러분의 애플리케이션은 유효 기간이 2033년 10월 22일 이후에 끝나는 암호화된 개인 키private key로 사인되어야 한다.
  2. 여러분의 애플리케이션은 매니페스트의 <manifest> 엘리먼트에 있는 android:versionCode와 android:versionName 애트리뷰트 모두를 정의해야 한다. 서버는 애플리케이션을 내부적으로 식별하고 업그레이드를 처리하기 위한 근거로 android:versionCode를 사용하고 애플리케이션 버전으로써 사용자에게 android:versionName을 보여준다.
  3. 여러분의 애플리케이션은 매니페스트의 <application> 엘리먼트에 있는 android:icon과 android:label 애트리뷰트 모두를 정의해야 한다.

Publishing Updates on Android Market

At any time after publishing an application on Android Market, you can upload and publish an update to the same application package. When you publish an update to an application, users who have already installed the application will automatically receive a notification that an update is available for the application. They can then choose to update the application to the latest version.

안드로이드 마켓에 애플리케이션을 배포한 이후 언제든지, 여러분은 동일 애플리케이션에 대한 업데이트를 업로드하고 배포할 수 있다. 여러분이 애플리케이션에 대한 업데이트를 배포할 때, 그 애플리케이션을 이미 설치했던 사용자는 해당 애플리케이션에 대한 업데이트가 유용하다는 공지를 자동으로 수신할 것이다. 그 때 사용자는 해당 애플리케이션을 최종 버전으로 업데이트하는 것을 선택할 수 있다.

Before uploading the updated application, be sure that you have incremented the android:versionCode and android:versionName attributes in the <manifest> element of the manifest file. Also, the package name must be the same and the .apk must be signed with the same private key. If the package name and signing certificate do not match those of the existing version, Market will consider it a new application and will not offer it to users as an update.

업데이트된 애플리케이션을 업로드하기 전에, 매니페스트 파일의 <manifest> 에리멘트에 있는 android:versionCode와 android:versionName 애트리뷰트들이 증가되었는지를 확실하게 하라. 또한 패키지 이름이 동일해야 하면, .apk는 동일한 개인 키로 사인되어야 한다. 만약 패키지 이름과 사인하는 인증서가 이미 존재하는 버전의 것들과 일치하지 않는다면, 마켓은 그것을 신규 애플리케이션으로 간주할 것이고, 사용자에게 업데이트 형태로 그것을 제안하지는 않을 것이다.

Using Intents to Launch the Market Application on a Device

Android-powered devices include a preinstalled Market application that gives users access to the Android Market site. From Market, users can browse or search available applications, read ratings and reviews, and download/install applications.

안드로이드 디바이스들은 사용자가 안드로이드 마켓 사이트에 접속할 수 있도록 이미 설치된 마켓Market 애플리케이션을 포함하고 있다. 마켓Market으로 부터, 사용자는 가능한 애플리케이션을 브라우징하거나 찾고 사용자 평가와 리뷰를 읽고 애플리케이션을 다운로드/설치할 수 있다.

You can launch the Market application from another Android application by sending an Intent to the system. You might want to do this, for example, to help the user locate and download an update to an installed application, or to let the user know about related applications that are available for download.

여러분은 시스템에 인텐트를 전송함으로써 다른 안드로이드 애플리케이션에서 마켓 애플리케이션을 런치할 수 있다. 예를 들어 여러분은 사용자가 이미 설치된 애플리케이션에 대한 업그레이드 위치와 다운로드하는 것을 돕기 위해, 또는 사용자가 다운로드 가능한 관련된 애플리케이션에 대해서 알게 하기 위하여 이러한 것을 하고 싶을 수도 있다.

To launch Market, you send an ACTION_VIEW Intent, passing a Market-handled URI string as the Intent data. In most cases, your application would call startActivity() to send the ACTION_VIEW Intent with the Market-handled URI.

마켓을 런치하기 위해서, 여러분은 인텐트 데이터로 마켓이 취급하는 URI 문자열을 전달하는ACTION_VIEW 인텐트를 전송한다. 대부분의 경우에, 여러분의 애플리케이션은 마켓이 취급하는 URI를 가지고 ACTION_VIEW 인텐트를 전송하기 위해 startActivity()를 호출한다.

The URI that you supply with the Intent lets the system route the intent properly and also expresses the type of action that you want Market to perform after launch. Currently, you can have Market take these actions:

인텐트를 사용해서 여러분이 제공하는 URI는 시스템이 적절하게 인텐트를 인도하게route 하며, 또한 여러분이 마켓이 런치 후에 수행하길 원하는 액션의 유형을 설명한다. 현재, 여러분은 마켓이 다음과 같은 액션을 하게 할 수 있다.

  • Initiate a search for applications on Android Market, based on the query parameters that you provide, or
  • Load the Details page for a specific application on Android Market, based on the application's package name.
  • 여러분이 제공하는 쿼리 파라미터에 기반해서 마켓 애플리케이션이 안드로이드 마켓 상의 애플리케이션을 검색한다. 또는
  • 애플리케이션 패키지 이름에 기반해서 안드로이드 마켓상의 특정 애플리케이션에 대한 상세한 페이지를 가져온다.

Initiating a search

Your application can initiate a search on Android Market for applications that match the query parameters that you provide. To do so, your application sends an ACTION_VIEW Intent that includes a URI and query parameters in this format:

여러분은 안드로이드 마켓에서 여러분이 제공하는 쿼리 파라미터와 일치하는 애플리케이션을 검색할 수 있다. 그렇게 하기 위해서, 여러분의 애플리케이션은 다음과 같은 포맷으로 된 URI와 쿼리 파라미터를 포함하는 ACTION_VIEW 인텐트를 발송해야 한다.

market://search?q=<paramtype>:<value>

market://search?q=<paramtype>:<value>

Using this URI format, you can search for applications by:

이 URI 포맷을 사용해서 여러분은 다음과 같은 것으로 애플리케이션을 검색할 수 있다.

  • Package name
  • Developer name
  • String match across application name, developer name, and description, or
  • Any combination of the above
  • 패키지 이름
  • 개발자 이름
  • 애플리케이션 이름, 개발자 이름, 설명 등과 일치되는 문자열
  • 위의 것들에 대한 임의의 조합

The table at the bottom of this page specifies the paramtypes and values that correspond to each of these types of search.

이 페이지의 하단에 있는 테이블은 이러한 각각의 검색 유형에 대응되는 paramtype들과 value들을 명세한다.

When you send an intent to initiate a search for applications, Market sends the search query to the server and displays the result. To the user, the experience is something like this:

여러분이 애플리케이션을 검색하기 위한 인텐트를 발송할 때, 마켓은 서버에 검색 쿼리를 전송하고 그 결과를 보여준다. 사용자에게 있어서, 이러한 경험은 다음과 같은 것들이다.

  1. The user presses a link or button in your application.
  2. The Market application launches and takes control of the screen, displaying a progress indicator labeled "Searching" until it receives the search results.
  3. Market receives the search results and displays them. Depending on the query parameters, the search results may include a list of one or more applications.
  4. From the results page, the user can select an app to go to its Details page, which offers information about the app and lets the user download/purchase the app.
  1. 사용자는 여러분의 애플리케이션에서 링크 또는 버튼을 누른다.
  2. 마켓 애플리케이션이 시작되며, 그것이 검색 결과들을 수신할 때까지 “Searching” 라벨이 붙은 진행상태 지시자를 보여주면서 스크린에 대한 컨트롤을 점유한다.
  3. 마켓은 검색 결과를 수신하며 그것들을 보여준다. 쿼리 파라미터에 기반해서, 검색 결과는 하나 또는 그 이상의 애플리케이션의 목록을 포함할 수 있다.
  4. 결과 페이지에서, 사용자는 애플리케이션의 상세 페이지로 가기 위해 그것을 선택할 수 있다. 그것은 그 애플리케이션에 대한 정보를 제공하며 사용자가 그 애플리케이션을 다운로드/구매하는 것을 가능하게 한다.

Loading an application's Details page

In Android Market, every application has a Details page that provides an overview of the application for users. For example, the page includes a short description of the app and screen shots of it in use, if supplied by the developer, as well as feedback from users and information about the developer. The Details page also includes an "Install" button that lets the user trigger the download/purchase of the application.

안드로이드 마켓에서, 모든 애플리케이션은 사용자에게 애플리케이션의 개요를 제공하는 상세 페이지를 갖는다. 예를들어, 그 페이지는 애플리케이션에 대한 간단한 설명과 그것이 사용될 때의 스크린 샷들을 포함한다. 만약 개발자에 의해 제공된다면, 사용자에 대한 피드백과 개발자에 대한 정보 또한 포함한다. 또한 그 상세 페이지는 사용자가 애플리케이션을 다운로드/구매를 시작할 수 있게하는 “install” 버튼을 포함한다.

If you want to refer the user to a specific appplication, your application can take the user directly to the application's Details page. To do so, your application sends an ACTION_VIEW Intent that includes a URI and query parameter in this format:

만약 여러분이 사용자가 특정 애플리케이션을 참조하길 원한다면, 여러분의 애플리케이션은 사용자를 직접적으로 그 애플리케이션의 상세 페이지로 가도록 할 수 있다. 그렇게 하기 위해, 여러분의 애플리케이션은 다음과 같은 포맷으로 된 URI와 쿼리 파라미터를 포함하는 ACTION_VIEW 인텐트를 발송한다.

market://details?id=<packagename>

market://details?id=<packagename>

In this case, the packagename parameter is target application's fully qualified package name, as declared in the package attribute of the manifest element in the application's manifest file. For example:

이 경우에, packagename 파라미터는 그 애플리케이션의 매니페스트 파일에 있는 manifest 엘리먼트의 package 애트리뷰트에서 선언된 것과 같은 타겟 애플리케이션의 전체 패키지 이름이다. 예를 들어 다음과 같다.

market://details?id=com.example.android.jetboy

market://details?id=com.example.android.jetboy

Android Market URIs

The table below provides a list of URIs and actions currently supported by the Market application.

아래의 테이블은 현재 마켓Market 애플리케이션에 의해 지원되는 URI와 액션 목록이다.

Note that these URIs work only when passed as Intent data you can't currently load the URIs in a web browser, either on a desktop machine or on the device.

이 URI들은 오직 인텐트 데이터data로 전달될 때만 동작한다는 것에 주의하라 ? 여러분은 데스크탑 머신 또는 디바이스 상의 웹 브라우저에서 현재 그 URI를 로드할 수 없다.

For this Result Pass this URI with the ACTION_VIEW Intent Comments
Display the Details screen for a specific application, as identified by the app's fully qualified package name. http://market.android.com/details?id=<packagename> or
market://details?id=<packagename>
Note that the package name that you specify is not specific to any version of an application. Therefore, Market always displays the Details page for the latest version of the application.
Search for an application by its fully qualified Java package name and display the result. http://market.android.com/search?q=pname:<package> or
market://search?q=pname:<package>
Searches only the Java package name of applications. Returns only exact matches.
Search for applications by developer name and display the results. http://market.android.com/search?q=pub:<DeveloperName> or
market://search?q=pub:<Developer Name>
Searches only the "Developer Name" fields of Market public profiles. Returns exact matches only.
Search for applications by substring and display the results. http://market.android.com/search?q=<substring> or
market://search?q=<substring>
Searches all public fields (application title, developer name, and application description) for all applications. Returns exact and partial matches.
Search using multiple query parameters and display the results. Example:

http://market.android.com/search?q=world pname:com.android.hello pub:Android

Returns a list of applications meeting all the supplied parameters.
↑ Go to top