App Registration and Mgmt.

Overview

“App” refers to any application distributed through a “store.” Apps can be registered and managed through the Developer Center.

  • Products are serviced on both 'ONE store' and 'Global platform' depending on the distributed country/region.

    • ONE store: an Android app store that provides services in 'South Korea'.

    • Global Platform: An Android app store available in Countries/Regions other than 'Korea'.

To list products on Global Platform, please review the 'requirements' first.

Register App

To register a new app, go to “Register App” in the “APPS > Applications” menu.

Register App

  • App title: Enter a name that best represents the app’s characteristics.

    • Maximum of 50 characters allowed.

    • Trademarked names or names of existing apps cannot be used.

  • Setting a default language: Select the default language of the app.

  • Package name: Enter a unique ID for the application.

    • This must be the same as the actual package name that will be applied in the future. Changes cannot be made after registration.

    • When operating the same version code, it is recommended to separate the app and package names from other Android markets. Package names can be defined when creating an Android project, and cannot be duplicated.

  • How to check the package names of other Android stores, such as Google Play.

※ Precautions for use of android:authorities

An installation error may occur if the android:authorities value is identical to that of apps registered in other markets. Please be sure to separate the authorities value by package name.

Recently, there have been issues with apps that have applied FacebookContentProvider during installation due to the authorities value not being separated.

FacebookContentProvider does not require the authorities value when using the login and marketing functions. It is only required when using the sharing function, so please keep this in mind during development.

<provider
        android:name="com.facebook.FacebookContentProvider"
        android:exported="true"
        android:authorities="com.facebook.app.FacebookContentProvider1234"/>
  • Service classification: Select the type of product release.

    • 'Beta' products can only be serviced in 'Korea', and settings for 'Crypto application setting' and 'PC distribution setting' are not provided."

    • Service classification options cannot be changed after initial setup, so please choose carefully.

Main Information

This is the main menu with the app’s basic information like title/description, category, collected information & intellectual property rights, etc. Each item can be modified if in a 'In Review' status, and the changes will be either immediately applied or applied after verification, depending on the item. However, the “third party payment method” part cannot be modified.

Title / Description

  • Third party payment method options: Provide payment methods based on the developer’s preference.

    • Please note that payment methods cannot be changed after the initial input.

    • “Use” option: Provide the option of using payment services with PG (Payment Gateway) instead of using ONE store’s in-app payment services.

      • ONE store can impose additional fees on apps sold.

      • Click here for more details on third party payment methods.

    • “Not use” option: Provide ONE store’s in-app payment system (In-App Purchase, IAP).

      • Payment methods, including phone payments, credit cards, Naver pay, telecommunication points etc. are available.

      • User complaints can be settled from the store’s customer service center.

      • To use the in-app purchase from ONE store, follow the directions on “ONE store In-App Purchase SDK."

  • Google Play Package Name: If the app is registered in Google Play, input the exact name appearing in the Google Play package name in the search engine for greater accuracy.

  • Search Keyword: Input the app's title to search within the store or search within Naver’s search engine.

  • Applying Android auto: Please select whether the product is intended for in vehicle application.

    • If 'Yes' is selected, the product will undergo the Terms of Service agreement process and will be applied after verification is completed.

  • Crypto application setting: Please select if the product is a blockchain-utilized game.

    • If the status is set to 'Yes,' you can then select the blockchain network and key features.

    • This can only be set if 'App Type = Game' and 'Country/Region of distribution = Crypto Supported Country/Region'.

      • Crypto Supported Country/Region: Singapore

    • Select the blockchain network that is supported by the product.

      • If there is no supported network listed, please select 'Others'.

    • Please select NFT Support Status and TOKEN Support Status.

      • If it supports TOKEN, please enter the name of the supported TOKEN. (up to 5.)

    • PC distribution setting: Select if you plan to provide EXE binaries as an additional service.

      • After selecting 'Yes' and saving, the 'Manage PC Distribution' menu will be added.

      • The service will be available in global countries/regions only if the 'App Type' is 'Game', excluding South Korea."

    • Ad SDK Intergration status: Select if an In-App advertisement SDK is loaded.

    • Inclusion of Probabilistic Items: Select this if a probabilistic item is included.

      • Capsule Items: Probabilistic items which the type, class, performance, etc. of the item are determined by random elements

      • Enhancement Items: Probabilistic items where a transformation in the type, class, and performance of another item are determined by random elements

      • Merge Items: Probabilistic items where the type, class, and performance are determined by random elements through combining items

Category

  • App Type: Select the category that will provide the best impact for visibility in the store app.

    • Modifications can be made at will, but changing a category to “game” will require another review process.

    • If the app type does not match the app, the review process may be rejected.

Intellectual Property Rights

  • Intellectual Property Rights: Select whether the app is using another person’s intellectual property right information (app and the app's image, sound, DB connection, information provided, etc.).

  • A “Right to Use document” must be registered if another person’s intellectual property rights are being used.

  • During the app’s review process, the documents can be modified but not deleted.

  • Refer to the Intellectual Property Protection Center and the Korea Copyright Commission for more information regarding Korea’s intellectual property rights.

App Info

This menu is to input the app's necessary information such as title/description, graphic assets, SEO information, customer support contact information, and more. Each item that is not classified as “in review” can be modified and the modifications will be reflected in real-time.

Supported Language and Setting a Default Language

  • Language settings: Set the language provided on the store’s app detail page.

    • Select a language from English, Chinese (Traditional), Chinese (Simplified), Korean.

    • If you are selling products in South Korea, please set the language to Korean. If you are selling products in a country/region other than South Korea, please set the language to English, Chinese (Traditional), or Chinese (Simplified) as appropriate.

  • Setting a default language: Set the language that you need if the language is not provided.

    • If you are selling products in multiple countries/regions, please set English as the default language.

Title / Description

  • App title: Enter a name that best represents the app’s characteristics.

    • Maximum of 50 characters allowed.

    • Trademarked names or names of existing apps cannot be used.

  • Summary: Enter a short description of the app.

    • Maximum of 100 characters allowed.

  • Publisher’s Description: Enter an appealing description to draw users to the app.

    • For example, consider adding the app's special features, story, usage information, tips, events, etc.

    • Maximum of 1,300 characters is allowed.

  • Feature graphic/YouTube URL: Register a YouTube video on the app’s detail page.

    • If you use a YouTube URL, use the “feature graphic” as the preview image for the video.

Graphic Assets

  • Icon: Register an icon image that best symbolizes the app.

  • Promo Video: Register a video to display on the app’s detail page.

    • Maximum of 10 videos can be registered with the “preview image.”

    • Only files in MP4 format, up to 500 MB can be registered (16:9 ratio is recommended).

    • Minimum of 15 seconds to 10 minutes can be registered.

    • Videos may appear in various parts of the store.

  • Screenshots: Register a screenshot image to display on the app’s detail page.

    • Minimum of 2 to a maximum of 8 images can be registered.

    • JPG, PNG files within 1 MB can only be registered.

    • Only sizes under 1,300 x 1,300px can be registered.

      • Recommended (horizontal): 1280 x 720px

      • Recommended (vertical): 720 x 1280px

SEO Information

  • Keyword: Enter the keywords that can draw users to the app.

    • A minimum of 1 to a maximum of 10 keywords can be registered.

    • Keywords with intellectual property rights, spam, sensationalism etc., cannot be used.

Customer Support Contact Information

  • Company Name: Enter the information for the “Customer Support Contact Information” on the details page.

  • E-mail: Enter the information for the details of the “Customer Support Contact Information.”

  • Phone number: Enter the information for the details of the “Customer Support Contact Information.”

    • However, if you are a member of a private business/corporate business, in the “membership information” section, the “representative phone number” will be displayed.

  • Official website: Enter the official website, social media account, URL, etc., in the “official community” part of the details page. ※ If you are a individual business/corporate business member, the “company’s name/representative’s name/representative’s phone number/business address” can be added or changed in “membership information.”

Age Rating

To service the product, set the age rating for the selected country or region of distribution.

Age Rating Verification

  • IARC Certificate

    • If you have received an IARC Certificate from a different store, you may register with an 'IARC Certificate ID'.

    • To receive a new certificate, please complete the 'IARC Questionnaire' to proceed with verification.

    • For details, please refer to the link below.

  • ONE store App Age Rating

    • To service non-game apps in South Korea, you are required to set an additional app age rating.

    • For details, please refer to the link below.

Countries/Regions / App Pricing

This menu is to enter the price information necessary for selling apps. Each item can be modified if it is not in the “in review” or “reserved” status, and the modifications are reflected in real time.

Distribution Information

  • Country/Region of distribution: Select the country/region that will provide the app services.

    • Depending on the country/region of distribution setting, the app will be serviced on “ONE store” or “Global Platform.”

      • ONE store: If “KOREA” is selected

      • Global Platform: If “SINGAPORE”, "TAIWAN" is selected

    • Provide the following information in order to offer services on 'Global Platform'. If you cannot enter the information in Membership Information, please contact 'HELP' or devhelper@onestore.net in the developer center.

      • Individual developer

        • Setting Account > Membership Information > Basic Information: Name (in English)

      • Business operator

        • Setting Account > Membership Information > Basic Information: Company Name and Name (in English)

Price Information

  • Basic price: Determine if the app will be “free” or “paid.”

    • The status (free or paid) can only be changed once a week.

    • To sell paid apps, you must enter the information at Setting Account > Membership Information > Settlement Information and get approval from the operator.

  • App price : Enter the sales price of the product.

    • Maximum of 100,000 KRW allowed, including tax.

    • App prices can only be changed once a week.

  • Local Prices: Please input the sales price for each distribution country/region.

    • The local prices will be displayed when a country/region other than Korea is chosen as the 'Country/Region of distribution'.

    • There are no limitations on the number of changes or duration for 'Local prices' adjustments.

    • Clicking the 'Exchange rate update' button will refresh the price based on the sales price and the current exchange rate.

New Binary

This menu is to newly register the binary of apps that will be serviced, and to set the supported terminal. Binaries registered in this menu will be serviced to the store according to the “start of sales option” after review has been completed.

App Signing Preferences

  • Binary type: Select the type of binary to register (APK/AAB).

    • Binaries selected as APK can be changed to AAB, but binaries selected as AAB cannot be changed to APK.

  • Signing key: Select the signing key option for the binary. For more information on app signatures, click here.

    • ONE store manages and protects app signing keys - ONE store directly generates and stores signing keys. - Apps on sale with an existing APK cannot be updated if the signing key changes, so only newly created apps are used.

    • Use the same key as other apps in this developer account - If you have registered a signing key for another app, use the same signing key as that app. - Only the signing key of other apps in the account can be connected. Use it to link with other apps.

    • Export and upload keys to Java Keystore, export and upload keys (without using Java Keystore) - Register and use signing keys generated yourself. - Encrypt the generated signing key through the PEPK (Play Encrypt Private Key) tool to securely transfer it to ONE store and store it there.

    • Disable app signatures (register signed APKs without registering signing keys). - Managed directly by the developer without registering or generating keys. - If app signatures are not used, the signed APK must be registered. ※Can only be selected if the binary type is APK.

Different binaries can be provided for each supported terminal through “multi-binary.” - Only supported if the binary type is “APK” and the signing key option is “Disable app signature.” - Global Platform does not support “multi-binary.”

  • Add a new binary

    • Up to 2 GB of binary files that fit the binary type (APK/AAB) can be registered.

      • Register commercial binaries using the same signing key.

      • Viruses, package name duplication, signing key, version code, and more are checked. In the event there are any abnormalities, registration fails.

    • There are two ways to update the binary.

      • Click “find file” in “Add a new binary.”

      • Click “Update” next to the binary version in the binary list and select “update file.”

Binary

  • Check the details of the registered binary.

  • List of supported devices

    • Add new devices as supported devices: By selecting this option, when a new device is released and added to the supported device list, the app's support status is automatically set to 'ON'.

    • Exclude support form the amount of RAM on the device: You can choose to exclude devices with insufficient RAM capacity for optimal product performance.

    • Device List: A list of compatible devices is provided, and devices not supported by the product can be set to unsupported (OFF).

      • When registering binary files, the app is automatically sold to all supported devices. If it is only sold to a specific device, the provisioning information and supported devices can be modified.

        • The default configuration of the supported device list is based on the resolution and OS version of the 'manifest.xml' file.

        • Android devices not listed in the device inventory can have their support status configured via the 'All other devices (ANDROID-ETC)' category.

        • The “new binary'' menu does not affect apps on sale, even if the supported device is changed, and modifications are reflected when review is completed.

    • If the binary type is APK

      • Download signed APK: Binaries with the app signature must be downloaded to be tested.

    • If the binary type is AAB

      • Download Universal APK: “Universal APK” is provided to users of devices that do not support AAB. The app can be tested through “download universal APK.”

      • Details: Download the information collected from the user's device as a json file.

        • Provides support ABI, SDK version, Device Feature, and screen density information.

      • Download: The Android version and language information are displayed, and the APK file extracted with the selected information can be downloaded.

        • Multiple languages can be selected. If you select a language that is not supported by the app, an empty APK will be downloaded.

        • The downloaded APK allows you to set up supported devices after conducting a developer test for each device.

If the supported device of an app on sale is OFF, the buyer using the device cannot download it again. In this case, refund processing will be required, so please keep this in mind when changing the supported devices.

  • App Signing Preferences

    • Signing key: Key used for signing for distribution to users’ devices.

    • Upload key: Key used to verify the developer’s identity when registering a binary.

      • When updating binaries, only files signed with the same upload key can be registered.

    • Download the public key information of “signing key” and “upload key” as a der file by clicking “download.”

Published Binary

This menu is where you can check information regarding binaries currently on sale, and supported devices. Binary downloads of commercial binaries and modification of supported devices are possible, and modifications are reflected in real time without review procedures. Modifications of other information must be reviewed through the “New Binary” menu before being distributed.

In-App

This menu allows you to register and manage “in-apps” sold within an app. “In-App” refers to anything that can be purchased additionally within the “application” service. For more information on In-Apps and SDK, refer to the ONE store In-App Purchase API V7 (SDK V21) Guide.

Register In-App

  • To register an in-app, first enter “Setting Account > Membership Information > Settlement Information.”

  • In-apps can be managed individually through “register in-app” or on Excel through “export/import in-app.”

Registering Managed Products

  • In-App ID: This is an unique value within the app. Enter the In-App ID and perform a duplicate check.

  • In-App Title: Enter the title of the In-App product. The title will be displayed to users on the payment screen and in the purchase history.

  • In-App Path: This is the path within the app where In-App products can be purchased. The ONE store verification team utilizes it during the verification process.

  • In-App Basic Price: This refers to the price of the In-App product for sale in Korea. Please ensure that this price is entered, including the value-added tax. Local prices can be adjusted according to the In-App Base Price using the "Update Exchange Rate" button.

  • Local Price: The price of the In-App product for sale in each distribution country/region specified in the pricing and distribution information. By clicking the "Update Exchange Rate" button, the exchange rate will be automatically calculated based on the KRW entered in the In-App Base Price, updating the price. It's also possible to manually adjust the updated price.

  • In-App Title (Multilingual): You can add language-specific titles by clicking the "Add Language" button if you wish to display the title in a language other than the default. Language-specific In-App product titles will be shown to users whose language matches the respective title. (For example, if you add an English In-App product title, it will be displayed to users whose language is set to English.)

App Review

This menu is where you can “request for review” to service the files registered in “new binary” and set provisioning information. You can also check the progress and completed review information. Click “request for review” at the top of the page to submit a request. The “app review” menu is activated when “request for review” is done for the first time.

App information reflected upon the completion of request for review

  • When changing to “yes”

Option for Publishing Apps

  • Immediate publish: Once the review is complete, app sales begin immediately.

  • Manual publish: Once the review is complete and the developer sets the sales, app sales are initiated.

  • Reservation publish: Once the review is complete, the developer selects a specific date to initiate app sales.

Recent Changes

  • Enter the update history of an app to be displayed to users. This will be reflected after review is complete when the app is distributed.

  • This is not reflected when apps are currently being sold, this must be entered before requesting for review.

  • Multilingual input is possible with language codes. Please refer to the multilingual input guide for instructions.

Reference for Review

  • Enter the information that can be referenced for the review process of the requested app.

  • The information entered will help the “review team” to conduct an efficient review process and minimize rejection.

Manage PC Distribution

This menu allows you to register EXE files and product information for the PC version distribution of the item. This menu becomes active when the 'PC distribution setting' option in the Basic Information menu is set to 'Yes'.

App Info

PC distribution is primarily serviced based on the App Info set for the app product, and you can configure any necessary changes or additional inputs.

  • Country/Region PC distribution

    • Since the app product is offered in the same countries/regions as its distribution, the distribution countries/regions specified in the 'Countries/Regions/App Pricing' menu will be automatically applied. However, PC distribution is not supported in 'KOREA', so it will be automatically excluded.

  • Windows Available environment

    • Input the minimum required system information for playing the PC version.

New Binary

This menu is used to register the EXE binary for providing the service in a PC environment.

  • Add a new binary

    • You can upload an EXE file of 2GB or less in size with a filename of up to 100 characters.

    • The registered binary will be integrated into the service after 'Request for Review' and approval, and this information will be reflected in the 'Published Binary'. However, if either the app product or the PC product fails to meet the verification requirements, the verification may be rejected.

    • To apply the payment service, please get in touch with the Developer Center through 'HELP' or at devhelper@onestore.net

Minimum requirements for Global Platform sales

  • For In-App Applied Products

    • IAP SDK v19 or higher (v21 or higher for new apps)

    • Set the 'Signing Key Option' to 'Use the app signature (recommended)' when uploading the binary.

  • For ALC Applied Products

    • ALC SDK V2 or higher

    • Set the 'Signing Key Option' to 'Use the app signature (recommended)' when uploading the binary.

  • Multi-binary products cannot be sold

    • Multi-binary products can be sold after being changed to a single binary.

Notes

'Google Play Protect - Unsafe app blocked' message

If the targetSdkVersion of the app you are trying to install is low, a 'Google Play Protect' popup may appear depending on the Android OS.

In this case, you need to update the app by targeting targetSdkVersion 33 or higher. For detailed Android policies, please check 'here'.

When the “Blocked by Play Protect” pop-up occurs during installation

If an app with a package name that has never been distributed in “Play Store” is distributed in “ONE store” a “Blocked by Play Protect” pop-up is displayed, and installation is blocked.

This occurs when the “Play Store” and the package name or signing key are built and sold differently. Please notify Google in advance to ensure installation is not blocked.

If you are unable to install the app due to this issue, use the following guide for installation.

  1. Run the “Play Store” app

  2. Select the profile on the top right > Select “Play Protect” menu

  3. Select the “Settings” icon on the top right

  4. Change “Inspect apps with Play Protect” to “OFF”

  5. Re-enter the store, download the app, and install it

The product with a target SDK of 30 or higher(Add a guidelines for each IDE)

Apps that target Android 11 (API level 30) that are currently only signed using APK Signature Scheme v1 must now also be signed using APK Signature Scheme v2 or higher. Users can't install or update apps that are only signed with APK Signature Scheme v1 on devices that run Android 11.

So, if your binary use ONEstore's SDK(Inapp v16, v17,v19, ALC), Please make sure to declare the following query on Androidmanifest.xml.

<queries>
    <intent>
        <action android:name="com.onestore.ipc.iap.IapService.ACTION" />
    </intent>
    <intent>
        <action android:name="android.intent.action.VIEW" />
        <data android:scheme="onestore" />
    </intent>
</queries

IDE Response Guidelines

  • If an app developed with Android platform uses a ONEstore in app, the following tasks are required to use the Android 11 <queries>.

    • Java & Kotlin (Android Studio)

      • If TargetSDK is set to 16-29, [Queries] TAG is not required

      • If TargetSDK is set to 30, Add a [Queries] TAG in Android Manifest.

  • Unity

    • Less than 2018.4

      • [Queries] TAG is not required by setting TargetSDK to less than 30.

    • More than 2018.4 ~ Less than 2020.1

    • After than 2020.1

      • If TargetSDK is set to 16-29, [Queries] TAG is not required

      • If TargetSDK is set to 30, Add a [Queries] TAG in Android Manifest [Queries].

  • Unreal

    • Set the Target SDK 16~29. (We'll let you know later.)

  • Other IDE environment

    • Set the Target SDK according to whether or not the Gradle version of the build environment is supported.

    • If the build environment does not support Gradle 5.6.4 : Set the between 16 and 29 targetSDK.

    • If the build environment does support Gradle 5.6.4 : Set the target SDK to 30, and add a [Queries] TAG in AndroidManifest.

When setting Target SDK to 31 or higher (OS12 or higher)

An app with Target SDK set to 31 or higher (OS12) uses the intent filter. However, there are cases where it is not installed because the android:exported property is not explicitly declared.

Refer to the example code below and the behavior changes of Android OS 12 or higher.

<service android:name="com.example.app.backgroundService"
         android:exported="false">
    <intent-filter>
        <action android:name="com.example.app.START_BACKGROUND" />
    </intent-filter>
</service>

Behavior changes of Android OS or higher : https://developer.android.com/about/versions/12/behavior-changes-12

Last updated