Android 용 커스텀 빌드

Godot는 커스텀 빌드 Android 템플릿을 사용하기 위한 설정을 제공합니다. Godot와 함께 제공되는 미리 빌드된 템플릿을 사용하는 대신, 실제로 Android Java 프로젝트를 프로젝트 폴더에 설치합니다. Godot는 이제 프로젝트를 빌드하며, 프로젝트를 내보낼 때마다 내보내기 템플릿으로 사용될 것입니다.

이렇게 하고 싶어하는 몇 가지 이유가 있습니다:

  • Modify the project before it's built.
  • Add external SDKs that build with your project.

Configuring the custom build is a more or less straightforward process, but it may take a while to get used to how the Android SDK works.

이 과정을 따르기 위해 가능한 디테일하게 설명하겠습니다.

Set up the custom build environment

프로젝트 메뉴로 갑니다, 그리고 Custom Build 템플릿을 설치합니다:

../../../_images/custom_build_install_template.png

Make sure export templates are downloaded. If not, this menu will help you download them.

This will create an Gradle-based Android project in res://android/build and place a .gdignore file in res://android so the Godot filesystem ignores this folder. Editing these files is not needed unless you want to create your own add-ons, or you really need to modify the project.

Install the Android SDK (command-line version)

These are the steps for installing the Android SDK using command line. The advantage of this approach is the simplicity and small download/install size. It can be more challenging though. The Android Studio approach is easier, but it requires downloading and installing Android Studio (which may require more than 1 GB of storage).

Install a JDK

The Android SDK doesn't come with Java, so it needs to be installed manually. You need to install a Java SDK (not just the runtime or JRE). OpenJDK 8 is recommended. Oracle JDK 8 should also work. Later versions may not work for Android development.

Download the command-line tools

Go to the Android Studio download page. To save disk space, you don't want the full IDE, so don't download it.

주석

If you do want Android Studio, read further down for instructions for doing the same using Android Studio.

Look on that page for the Command line tools only section. Currently, they are listed under Download Options. Scroll down a bit until you see them.

../../../_images/custom_build_command_line.png

Download the ZIP file for your platform, there will be a single tools folder inside:

../../../_images/custom_build_zip.png

약간 혼란스러울 수 있습니다, 그러므로 다음 설명을 주의깊게 따르세요:

Create a new folder anywhere you want named android-sdk (it must be an empty directory). On Windows, the following path is usually good enough:

C:\users\<yourusername>\Documents\android-sdk

Unzip the Android SDK ZIP file you just downloaded there. The only thing in the directory you created in the previous step should be the tools folder with its contents inside, like this:

android-sdk/
android-sdk/tools/
android-sdk/tools/allthefiles

Accepting the licenses

To be able to use the Android SDK tools, Google requires you to accept its licenses.

To do this, the sdkmanager must be executed from the command line with a special argument. Navigate to the tools/bin directory inside the SDK folder (instructions provided for Windows users, as Linux and macOS users are expected to understand how command line navigation works):

../../../_images/custom_build_bin_folder.png

그 후 명령줄 창을 엽니다:

../../../_images/custom_build_open_shell.png

In there, run sdkmanager --licenses:

../../../_images/custom_build_sdkmanager.png

This will ask you to accept several licenses, just write y and press Enter on every of them until it's done.

Afterwards, install the platform tools (this is required to install adb):

../../../_images/custom_build_platform_tools.png

Generating the keystore

Once the platform tools are installed, the last step is to generate a debug keystore (this is needed to build). Go up two folders by writing:

cd ..\..

(or open a new shell in the android-sdk folder).

And you need to input the following line (on Linux and macOS, this should work out of the box, for Windows there are further instructions below):

keytool -keyalg RSA -genkeypair -alias androiddebugkey -keypass android -keystore debug.keystore -storepass android -dname "CN=Android Debug,O=Android,C=US" -validity 9999

On Windows, the full path to Java should be provided. You need to add & at the beginning of the line if you use PowerShell; it's not needed for the regular cmd.exe console.

To make it clearer, here is an capture of a line that works on PowerShell (by adding & and the full Java path before keytool.exe). Again, keep in mind that you need Java installed:

../../../_images/custom_build_command_line.png

(right-click and open the image in a new tab if this appears too small)

Godot에서 설정하기

Go to the Editor Settings and set up a few fields in Export > Android. Make sure they look like the following:

../../../_images/custom_build_editor_settings.png

(right-click and open the image in a new tab if this appears too small)

As it can be seen, most paths are inside either the android-sdk folder you originally created, or inside the Java install. For Linux and macOS users, jarsigner is often located in /usr/bin.

이것으로 모두 설정되었습니다.

Android SDK 설치하기 (Android 스튜디오)

If you just finished installing the SDK via the command-line tools, feel free to skip this section entirely. The Android Studio path is easier, but it takes up more disk space. It's also useful if you plan to develop Godot for Android (modify the Java source code) or if you plan to develop add-ons.

Download and install Android Studio

최신 Android 스튜디오를 다운로드합니다. 설치할 때, 어디에 android-sdk 디렉토리가 만들어지는 지 확인하세요.

../../../_images/custom_build_install_android_studio1.png

주석

이게 재밌는 것이, 기본적으로 제안하는 경로에는 공백이 포함됩니다 (그리고 그것에 불평합니다). 이것은 바꾸어야 합니다.

어쨌든, 사용자 폴더 내에서 다른 경로를 선택하는 것이 좋습니다. 추천하는 경로는 보통 이렇습니다:

C:\Users\<yourusername>\Documents\android-sdk

yourusername 부분을 실제 사용자 이름으로 바꿉니다. 올바르면 위와 같은 화면에서 다음을 선택하세요:

  • Android SDK
  • Android SDK Platform

나머지는 필요없습니다, 빌드 시스템이 자체적으로 이들을 가져오기 때문이죠. 선택한 추 설치를 계속하세요.

Generating the keystore

Go to the folder where you installed android-sdk in the previous step, use File Explorer and open a command line tool there:

../../../_images/custom_build_open_shell.png

The actual command line to type is the following. On Linux and macOS, it should work out of the box, but on Windows, it needs additional details (keep reading afterwards).

keytool -keyalg RSA -genkeypair -alias androiddebugkey -keypass android -keystore debug.keystore -storepass android -dname "CN=Android Debug,O=Android,C=US" -validity 9999

On Windows, the full path to Java should be provided (and & needs to be added at the beginning on the line if you use PowerShell, it's not needed for the regular cmd.exe console). Don't worry, at least by using Android Studio on Windows, Java comes bundled with it.

To make it clearer, here is a screen capture of a line that works on PowerShell (by adding & and the full Java Path to keytool.exe; remove & if you use cmd.exe). It uses a path to the Java version that comes with Android Studio:

../../../_images/custom_build_command_line2.png

(right-click and open the image in a new tab if this appears too small)

Godot에서 설정하기

Go to the Editor Settings and set up a few fields in Export > Android. Make sure they look like the following:

../../../_images/custom_build_editor_settings2.png

(right-click and open the image in a new tab if this appears too small)

As it can be seen, most paths are inside either the android-sdk folder you originally created, or inside the Java install. For Linux and macOS users, jarsigner is often located in /usr/bin.

이것으로 모두 설정되었습니다.

Enabling the custom build and exporting

When setting up the Android project in the Project > Export dialog, Custom Build needs to be enabled:

../../../_images/custom_build_enable.png

From now on, attempting to export the project or one-click deploy will call the Gradle build system to generate fresh templates (this window will appear every time):

../../../_images/custom_build_gradle.png

작성된 템플릿은 나중에 자동으로 사용되므로, 더 이상 구성할 필요가 없습니다.