为Android定制版本

Godot提供了使用定制的Android模板的选项。而不是使用已经预先构建的与Godot一起装运的模板,将实际的Android Java项目安装到项目文件夹中。然后,Godot将构建它,并在每次导出项目时将其用作导出模板。

您可能希望这样做有一些原因:

  • 在项目生成之前修改它

  • 添加与项目一起生成的外部SDK

配置自定义构建或多或少是一个简单的过程,但可能需要一段时间来适应Android SDK的工作方式。

将尽可能详细地提供操作说明。

设置自定义生成环境

转到“项目”菜单,然后安装 自定义生成 模板:

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

确保已下载导出模板。否则,此菜单将帮助您完成此操作。

这将在 "res://android/build" ,并将.gdignore文件放入 "res://android" 所以godot文件系统忽略这个文件夹。不需要编辑这些文件,除非您希望 create your own add-ons 或者你真的需要修改这个项目。

安装Android SDK(命令行版本)

以下是使用命令行安装Android SDK的步骤。这种方法的优点是简单和小的下载/安装大小。不过,这可能更具挑战性。Android Studio方法更简单,但它需要下载和安装Android Studio(可能需要超过1GB的存储空间)。

安装Java

Android SDK与Java无关,因此需要手动安装。安装Java SDK( not 运行时或JRE)。OpenSSDK 8是推荐的,否则Oracle的Java SDK版本8将工作。更高版本可能不适用于Android开发。

下载命令行工具

访问谷歌网站下载Android SDK。搜索将带您到 安卓工作室 下载页面。你不想要它,所以不要下载(如果你真的想要它,请阅读更多关于使用Android Studio做同样事情的说明)。

在那个页面中查找 命令行工具 . 目前,它们列在 下载选项 . 向下滚动一点直到看到它们。

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

下载你平台的zip文件,里面会有一个 工具 文件夹:

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

这可能看起来有点混乱,但请务必仔细遵循以下说明:

  • 在任何需要命名的位置创建新文件夹 android-sdk (IT) must 是一个空目录)。在Windows上,

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

通常足够好。解压 sdk zip文件 你刚下载到那里。在上一步中创建的目录中,只有 工具 文件夹及其内容,如下所示:

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

接受许可证

到目前为止,一切都或多或少是乐观的,但为了做任何事情,谷歌要求你接受它的许可证。

为了做到这一点, SDK经理 必须使用特殊参数从命令行执行。导航到 tools/bin sdk文件夹中的目录(为Windows用户提供的说明,因为Unix用户需要了解命令行导航的工作原理):

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

然后打开命令行窗口:

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

在这里,使用“-licenses”参数手动运行sdkmanager:

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

这将要求您接受几个许可证,只需写 "y" 新闻界 进入 每一个都要一直到完成为止。

然后,安装平台工具(这是安装所需的 adb ):

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

生成密钥库

一次 平台工具 安装后,最后一步是生成调试密钥库(这是构建所需的)。通过以下方式进入两个文件夹:

cd ..\..

(或者打开一个新的外壳 android-sdk 文件夹)。

您需要输入以下行(在Unixes上,这应该是开箱即用的,对于Windows,下面还有进一步的说明):

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

在Windows上,应该提供完整的Java路径(如果需要使用PosikSead,则需要在开始时添加,这对于常规控制台来说是不需要的)。

为了使它更清晰,这里是捕获一个在PosithSek上工作的行(通过添加和完整的Java路径到KEYToo.exe)。同样,请记住,您需要安装Java:

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

(右键单击,如果图像太小,请在新选项卡中打开图像)

设置Godot

编辑器设置 并在 Export -> Android . 确保它们如下所示:

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

(再次单击鼠标右键,如果图像太小,请在新选项卡中打开图像)

可以看到,大多数路径都在 android-sdk 您最初创建的,或者Java安装中的。对于Unix用户, jarsigner 通常在“usr/bin”中。

有了这个,你应该准备好了。

安装Android SDK(Android Studio)

如果您刚刚通过命令行工具完成了sdk的安装,可以完全跳过这一部分。Android Studio路径更简单,但它占用更多的磁盘空间。如果你打算为Android开发Godot(修改Java源代码),或者如果你计划开发插件,这也是有用的。

下载并安装Android Studio

下载最新版本的Android Studio。安装时,注意 android-sdk 目录已创建。

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

注解

这很有趣,它在默认情况下建议的路径包含空白(并且抱怨它)。必须更换。

在任何情况下,最好在用户文件夹中选择不同的路径。推荐的通常是:

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

替换 你的名字 按实际用户名。一旦正确,在同一屏幕中从上面的列表中选择:

  • 安卓模拟器

  • Android SDK平台

其余的不需要,因为构建系统将自己获取它们。选择它们之后,继续安装。

生成密钥库

你以为通过安卓工作室的方式,你可以摆脱密钥库一代,但不是。它回来困扰你。

转到上一步中安装Android SDK的文件夹,使用文件资源管理器并在其中打开命令行工具:

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

要键入的实际命令行如下。在Unixes上,它应该是开箱即用的,但在Windows上,它需要更多的细节(以后继续阅读)。

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

在Windows上,应该提供完整的Java路径(如果需要使用PosikSead,则需要在开始时添加,这对于常规命令行来说是不需要的)。不用担心,至少通过在Windows上使用Android Studio,Java可以与之捆绑在一起。

为了更清楚,这里是一个在PultSek上工作的屏幕截图(通过添加和完整的Java路径到KooTo.EXE,删除和使用常规控制台)。它使用与Android Studio一起的Java版本的路径:

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

(右键单击,如果图像太小,请在新选项卡中打开图像)

设置Godot

编辑器设置 并在 Export -> Android . 确保它们如下所示:

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

(再次单击鼠标右键,如果图像太小,请在新选项卡中打开图像)

可以看到,大多数路径都在 android-sdk 您最初创建的,或者Java安装中的。对于Unix用户, jarsigner 通常在“usr/bin”中。

有了这个,你应该准备好了。

启用自定义生成和导出

在中设置Android项目时 Project -> Export 对话框, 自定义生成 需要启用:

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

从现在开始,尝试导出项目或单击部署将调用 年级学生 生成系统以生成新模板(此窗口将每次出现):

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

之后将自动使用生成的模板,因此不需要进一步配置。