You've already forked godot
mirror of
https://github.com/godotengine/godot.git
synced 2025-11-11 13:10:58 +00:00
Android: Style fixes to manifest and build.gradle
This commit is contained in:
@@ -1,12 +1,11 @@
|
|||||||
#!/usr/bin/env python
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
from detect import get_ndk_version
|
||||||
|
from distutils.version import LooseVersion
|
||||||
|
|
||||||
Import('env')
|
Import('env')
|
||||||
|
|
||||||
from distutils.version import LooseVersion
|
|
||||||
from detect import get_ndk_version
|
|
||||||
|
|
||||||
android_files = [
|
android_files = [
|
||||||
|
|
||||||
'os_android.cpp',
|
'os_android.cpp',
|
||||||
'file_access_android.cpp',
|
'file_access_android.cpp',
|
||||||
'audio_driver_opensl.cpp',
|
'audio_driver_opensl.cpp',
|
||||||
@@ -18,7 +17,7 @@ android_files = [
|
|||||||
'java_class_wrapper.cpp',
|
'java_class_wrapper.cpp',
|
||||||
'java_godot_wrapper.cpp',
|
'java_godot_wrapper.cpp',
|
||||||
'java_godot_io_wrapper.cpp',
|
'java_godot_io_wrapper.cpp',
|
||||||
# 'power_android.cpp'
|
#'power_android.cpp'
|
||||||
]
|
]
|
||||||
|
|
||||||
env_android = env.Clone()
|
env_android = env.Clone()
|
||||||
|
|||||||
@@ -32,14 +32,12 @@ def get_opts():
|
|||||||
|
|
||||||
|
|
||||||
def get_flags():
|
def get_flags():
|
||||||
|
|
||||||
return [
|
return [
|
||||||
('tools', False),
|
('tools', False),
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
def create(env):
|
def create(env):
|
||||||
|
|
||||||
tools = env['TOOLS']
|
tools = env['TOOLS']
|
||||||
if "mingw" in tools:
|
if "mingw" in tools:
|
||||||
tools.remove('mingw')
|
tools.remove('mingw')
|
||||||
@@ -50,7 +48,6 @@ def create(env):
|
|||||||
|
|
||||||
|
|
||||||
def configure(env):
|
def configure(env):
|
||||||
|
|
||||||
# Workaround for MinGW. See:
|
# Workaround for MinGW. See:
|
||||||
# http://www.scons.org/wiki/LongCmdLinesOnWin32
|
# http://www.scons.org/wiki/LongCmdLinesOnWin32
|
||||||
if (os.name == "nt"):
|
if (os.name == "nt"):
|
||||||
@@ -90,7 +87,7 @@ def configure(env):
|
|||||||
|
|
||||||
env['SPAWN'] = mySpawn
|
env['SPAWN'] = mySpawn
|
||||||
|
|
||||||
## Architecture
|
# Architecture
|
||||||
|
|
||||||
if env['android_arch'] not in ['armv7', 'arm64v8', 'x86', 'x86_64']:
|
if env['android_arch'] not in ['armv7', 'arm64v8', 'x86', 'x86_64']:
|
||||||
env['android_arch'] = 'armv7'
|
env['android_arch'] = 'armv7'
|
||||||
@@ -137,14 +134,14 @@ def configure(env):
|
|||||||
arch_subpath = "arm64-v8a"
|
arch_subpath = "arm64-v8a"
|
||||||
env.extra_suffix = ".armv8" + env.extra_suffix
|
env.extra_suffix = ".armv8" + env.extra_suffix
|
||||||
|
|
||||||
## Build type
|
# Build type
|
||||||
|
|
||||||
if (env["target"].startswith("release")):
|
if (env["target"].startswith("release")):
|
||||||
if (env["optimize"] == "speed"): #optimize for speed (default)
|
if (env["optimize"] == "speed"): # optimize for speed (default)
|
||||||
env.Append(LINKFLAGS=['-O2'])
|
env.Append(LINKFLAGS=['-O2'])
|
||||||
env.Append(CCFLAGS=['-O2', '-fomit-frame-pointer'])
|
env.Append(CCFLAGS=['-O2', '-fomit-frame-pointer'])
|
||||||
env.Append(CPPDEFINES=['NDEBUG'])
|
env.Append(CPPDEFINES=['NDEBUG'])
|
||||||
else: #optimize for size
|
else: # optimize for size
|
||||||
env.Append(CCFLAGS=['-Os'])
|
env.Append(CCFLAGS=['-Os'])
|
||||||
env.Append(CPPDEFINES=['NDEBUG'])
|
env.Append(CPPDEFINES=['NDEBUG'])
|
||||||
env.Append(LINKFLAGS=['-Os'])
|
env.Append(LINKFLAGS=['-Os'])
|
||||||
@@ -159,7 +156,7 @@ def configure(env):
|
|||||||
env.Append(CPPDEFINES=['_DEBUG', 'DEBUG_ENABLED', 'DEBUG_MEMORY_ENABLED'])
|
env.Append(CPPDEFINES=['_DEBUG', 'DEBUG_ENABLED', 'DEBUG_MEMORY_ENABLED'])
|
||||||
env.Append(CPPFLAGS=['-UNDEBUG'])
|
env.Append(CPPFLAGS=['-UNDEBUG'])
|
||||||
|
|
||||||
## Compiler configuration
|
# Compiler configuration
|
||||||
|
|
||||||
env['SHLIBSUFFIX'] = '.so'
|
env['SHLIBSUFFIX'] = '.so'
|
||||||
|
|
||||||
@@ -204,7 +201,7 @@ def configure(env):
|
|||||||
|
|
||||||
common_opts = ['-fno-integrated-as', '-gcc-toolchain', gcc_toolchain_path]
|
common_opts = ['-fno-integrated-as', '-gcc-toolchain', gcc_toolchain_path]
|
||||||
|
|
||||||
## Compile flags
|
# Compile flags
|
||||||
|
|
||||||
env.Append(CPPFLAGS=["-isystem", env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/include"])
|
env.Append(CPPFLAGS=["-isystem", env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/include"])
|
||||||
env.Append(CPPFLAGS=["-isystem", env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++abi/include"])
|
env.Append(CPPFLAGS=["-isystem", env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++abi/include"])
|
||||||
@@ -259,7 +256,7 @@ def configure(env):
|
|||||||
env.Append(CCFLAGS=target_opts)
|
env.Append(CCFLAGS=target_opts)
|
||||||
env.Append(CCFLAGS=common_opts)
|
env.Append(CCFLAGS=common_opts)
|
||||||
|
|
||||||
## Link flags
|
# Link flags
|
||||||
|
|
||||||
ndk_version = get_ndk_version(env["ANDROID_NDK_ROOT"])
|
ndk_version = get_ndk_version(env["ANDROID_NDK_ROOT"])
|
||||||
if ndk_version != None and LooseVersion(ndk_version) >= LooseVersion("17.1.4828580"):
|
if ndk_version != None and LooseVersion(ndk_version) >= LooseVersion("17.1.4828580"):
|
||||||
@@ -268,7 +265,7 @@ def configure(env):
|
|||||||
env.Append(LINKFLAGS=[env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/libs/" + arch_subpath + "/libandroid_support.a"])
|
env.Append(LINKFLAGS=[env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/libs/" + arch_subpath + "/libandroid_support.a"])
|
||||||
env.Append(LINKFLAGS=['-shared', '--sysroot=' + lib_sysroot, '-Wl,--warn-shared-textrel'])
|
env.Append(LINKFLAGS=['-shared', '--sysroot=' + lib_sysroot, '-Wl,--warn-shared-textrel'])
|
||||||
env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/libs/" + arch_subpath + "/"])
|
env.Append(LIBPATH=[env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/libs/" + arch_subpath + "/"])
|
||||||
env.Append(LINKFLAGS=[env["ANDROID_NDK_ROOT"] +"/sources/cxx-stl/llvm-libc++/libs/" + arch_subpath + "/libc++_shared.so"])
|
env.Append(LINKFLAGS=[env["ANDROID_NDK_ROOT"] + "/sources/cxx-stl/llvm-libc++/libs/" + arch_subpath + "/libc++_shared.so"])
|
||||||
|
|
||||||
if env["android_arch"] == "armv7":
|
if env["android_arch"] == "armv7":
|
||||||
env.Append(LINKFLAGS='-Wl,--fix-cortex-a8'.split())
|
env.Append(LINKFLAGS='-Wl,--fix-cortex-a8'.split())
|
||||||
@@ -287,6 +284,7 @@ def configure(env):
|
|||||||
env.Append(CPPDEFINES=['ANDROID_ENABLED', 'UNIX_ENABLED', 'NO_FCNTL'])
|
env.Append(CPPDEFINES=['ANDROID_ENABLED', 'UNIX_ENABLED', 'NO_FCNTL'])
|
||||||
env.Append(LIBS=['OpenSLES', 'EGL', 'GLESv3', 'GLESv2', 'android', 'log', 'z', 'dl'])
|
env.Append(LIBS=['OpenSLES', 'EGL', 'GLESv3', 'GLESv2', 'android', 'log', 'z', 'dl'])
|
||||||
|
|
||||||
|
|
||||||
# Return NDK version string in source.properties (adapted from the Chromium project).
|
# Return NDK version string in source.properties (adapted from the Chromium project).
|
||||||
def get_ndk_version(path):
|
def get_ndk_version(path):
|
||||||
if path is None:
|
if path is None:
|
||||||
|
|||||||
@@ -4,53 +4,68 @@
|
|||||||
package="com.godot.game"
|
package="com.godot.game"
|
||||||
android:versionCode="1"
|
android:versionCode="1"
|
||||||
android:versionName="1.0"
|
android:versionName="1.0"
|
||||||
android:installLocation="auto"
|
android:installLocation="auto" >
|
||||||
>
|
|
||||||
<supports-screens android:smallScreens="true"
|
<!-- Adding custom text to the manifest is fine, but do it outside the custom USER and APPLICATION BEGIN/END comments, -->
|
||||||
|
<!-- as that gets rewritten. -->
|
||||||
|
|
||||||
|
<supports-screens
|
||||||
|
android:smallScreens="true"
|
||||||
android:normalScreens="true"
|
android:normalScreens="true"
|
||||||
android:largeScreens="true"
|
android:largeScreens="true"
|
||||||
android:xlargeScreens="true"/>
|
android:xlargeScreens="true" />
|
||||||
|
|
||||||
<!--glEsVersion is modified by the exporter, changing this value here has no effect-->
|
<!-- glEsVersion is modified by the exporter, changing this value here has no effect. -->
|
||||||
<uses-feature android:glEsVersion="0x00020000" android:required="true" />
|
<uses-feature
|
||||||
<!--Adding custom text to manifest is fine, but do it outside the custom user and application BEGIN/END regions, as that gets rewritten-->
|
android:glEsVersion="0x00020000"
|
||||||
|
android:required="true" />
|
||||||
|
|
||||||
<!--Custom permissions XML added by add-ons. It's recommended to add them from the export preset, though-->
|
<!-- Custom user permissions XML added by add-ons. It's recommended to add them from the export preset, though. -->
|
||||||
<!--CHUNK_USER_PERMISSIONS_BEGIN-->
|
<!--CHUNK_USER_PERMISSIONS_BEGIN-->
|
||||||
<!--CHUNK_USER_PERMISSIONS_END-->
|
<!--CHUNK_USER_PERMISSIONS_END-->
|
||||||
|
|
||||||
<!--Anything in this line after the icon will be erased when doing custom build. If you want to add tags manually, do before it.-->
|
<!-- Any tag in this line after android:icon will be erased when doing custom builds. -->
|
||||||
<application android:label="@string/godot_project_name_string" android:allowBackup="false" tools:ignore="GoogleAppIndexingWarning" android:icon="@drawable/icon">
|
<!-- If you want to add tags manually, do before it. -->
|
||||||
|
<application
|
||||||
|
android:label="@string/godot_project_name_string"
|
||||||
|
android:allowBackup="false"
|
||||||
|
tools:ignore="GoogleAppIndexingWarning"
|
||||||
|
android:icon="@drawable/icon" >
|
||||||
|
|
||||||
<!--The following values are replaced when Godot exports, modifying them here has no effect. Do these changes in the-->
|
<!-- The following metadata values are replaced when Godot exports, modifying them here has no effect. -->
|
||||||
<!--export preset. Adding new ones is fine.-->
|
<!-- Do these changes in the export preset. Adding new ones is fine. -->
|
||||||
|
|
||||||
<!-- XR mode metadata. This is modified by the exporter based on the selected xr mode. DO NOT CHANGE the values here. -->
|
<!-- XR mode metadata. This is modified by the exporter based on the selected xr mode. DO NOT CHANGE the values here. -->
|
||||||
<meta-data android:name="xr_mode_metadata_name" android:value="xr_mode_metadata_value"/>
|
<meta-data
|
||||||
|
android:name="xr_mode_metadata_name"
|
||||||
|
android:value="xr_mode_metadata_value" />
|
||||||
|
|
||||||
<activity android:name="org.godotengine.godot.Godot"
|
<activity
|
||||||
|
android:name="org.godotengine.godot.Godot"
|
||||||
android:label="@string/godot_project_name_string"
|
android:label="@string/godot_project_name_string"
|
||||||
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
|
android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen"
|
||||||
android:launchMode="singleTask"
|
android:launchMode="singleTask"
|
||||||
android:screenOrientation="landscape"
|
android:screenOrientation="landscape"
|
||||||
android:configChanges="orientation|keyboardHidden|screenSize|smallestScreenSize|density|keyboard|navigation|screenLayout|uiMode"
|
android:configChanges="orientation|keyboardHidden|screenSize|smallestScreenSize|density|keyboard|navigation|screenLayout|uiMode"
|
||||||
android:resizeableActivity="false"
|
android:resizeableActivity="false"
|
||||||
tools:ignore="UnusedAttribute">
|
tools:ignore="UnusedAttribute" >
|
||||||
|
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN" />
|
<action android:name="android.intent.action.MAIN" />
|
||||||
<category android:name="android.intent.category.LAUNCHER" />
|
<category android:name="android.intent.category.LAUNCHER" />
|
||||||
</intent-filter>
|
</intent-filter>
|
||||||
</activity>
|
</activity>
|
||||||
|
|
||||||
<service android:name="org.godotengine.godot.GodotDownloaderService" />
|
<service android:name="org.godotengine.godot.GodotDownloaderService" />
|
||||||
|
|
||||||
<!--Custom application XML added by add-ons-->
|
<!-- Custom application XML added by add-ons. -->
|
||||||
<!--CHUNK_APPLICATION_BEGIN-->
|
<!--CHUNK_APPLICATION_BEGIN-->
|
||||||
<!--CHUNK_APPLICATION_END-->
|
<!--CHUNK_APPLICATION_END-->
|
||||||
|
|
||||||
</application>
|
</application>
|
||||||
|
|
||||||
<instrumentation android:icon="@drawable/icon"
|
<instrumentation
|
||||||
|
android:icon="@drawable/icon"
|
||||||
android:label="@string/godot_project_name_string"
|
android:label="@string/godot_project_name_string"
|
||||||
android:name="org.godotengine.godot.GodotInstrumentation"
|
android:name="org.godotengine.godot.GodotInstrumentation"
|
||||||
android:targetPackage="org.godotengine.game" />
|
android:targetPackage="org.godotengine.game" />
|
||||||
|
|||||||
@@ -1,5 +1,7 @@
|
|||||||
//Gradle project for Godot Engine Android port.
|
// Gradle build config for Godot Engine's Android port.
|
||||||
//Do not modify code between the BEGIN/END sections, as it's autogenerated by add-ons
|
//
|
||||||
|
// Do not remove/modify comments ending with BEGIN/END, they are used to inject
|
||||||
|
// addon-specific configuration.
|
||||||
|
|
||||||
buildscript {
|
buildscript {
|
||||||
repositories {
|
repositories {
|
||||||
@@ -24,7 +26,6 @@ allprojects {
|
|||||||
jcenter()
|
jcenter()
|
||||||
//CHUNK_ALLPROJECTS_REPOSITORIES_BEGIN
|
//CHUNK_ALLPROJECTS_REPOSITORIES_BEGIN
|
||||||
//CHUNK_ALLPROJECTS_REPOSITORIES_END
|
//CHUNK_ALLPROJECTS_REPOSITORIES_END
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -35,35 +36,38 @@ dependencies {
|
|||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
|
|
||||||
lintOptions {
|
|
||||||
abortOnError false
|
|
||||||
disable 'MissingTranslation','UnusedResources'
|
|
||||||
}
|
|
||||||
|
|
||||||
compileSdkVersion 28
|
compileSdkVersion 28
|
||||||
buildToolsVersion "28.0.3"
|
buildToolsVersion "28.0.3"
|
||||||
useLibrary 'org.apache.http.legacy'
|
useLibrary 'org.apache.http.legacy'
|
||||||
|
|
||||||
packagingOptions {
|
|
||||||
exclude 'META-INF/LICENSE'
|
|
||||||
exclude 'META-INF/NOTICE'
|
|
||||||
}
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
minSdkVersion 18
|
minSdkVersion 18
|
||||||
targetSdkVersion 28
|
targetSdkVersion 28
|
||||||
//CHUNK_ANDROID_DEFAULTCONFIG_BEGIN
|
//CHUNK_ANDROID_DEFAULTCONFIG_BEGIN
|
||||||
//CHUNK_ANDROID_DEFAULTCONFIG_END
|
//CHUNK_ANDROID_DEFAULTCONFIG_END
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lintOptions {
|
||||||
|
abortOnError false
|
||||||
|
disable 'MissingTranslation', 'UnusedResources'
|
||||||
|
}
|
||||||
|
|
||||||
|
packagingOptions {
|
||||||
|
exclude 'META-INF/LICENSE'
|
||||||
|
exclude 'META-INF/NOTICE'
|
||||||
|
}
|
||||||
|
|
||||||
// Both signing and zip-aligning will be done at export time
|
// Both signing and zip-aligning will be done at export time
|
||||||
buildTypes.all { buildType ->
|
buildTypes.all { buildType ->
|
||||||
buildType.zipAlignEnabled false
|
buildType.zipAlignEnabled false
|
||||||
buildType.signingConfig null
|
buildType.signingConfig null
|
||||||
}
|
}
|
||||||
|
|
||||||
sourceSets {
|
sourceSets {
|
||||||
main {
|
main {
|
||||||
manifest.srcFile 'AndroidManifest.xml'
|
manifest.srcFile 'AndroidManifest.xml'
|
||||||
java.srcDirs = ['src'
|
java.srcDirs = [
|
||||||
|
'src'
|
||||||
//DIR_SRC_BEGIN
|
//DIR_SRC_BEGIN
|
||||||
//DIR_SRC_END
|
//DIR_SRC_END
|
||||||
]
|
]
|
||||||
@@ -81,7 +85,6 @@ android {
|
|||||||
'assets'
|
'assets'
|
||||||
//DIR_ASSETS_BEGIN
|
//DIR_ASSETS_BEGIN
|
||||||
//DIR_ASSETS_END
|
//DIR_ASSETS_END
|
||||||
|
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
debug.jniLibs.srcDirs = [
|
debug.jniLibs.srcDirs = [
|
||||||
@@ -95,19 +98,14 @@ android {
|
|||||||
//DIR_JNI_RELEASE_END
|
//DIR_JNI_RELEASE_END
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
// No longer used, as it's not useful for build source template
|
|
||||||
// applicationVariants.all { variant ->
|
|
||||||
// variant.outputs.all { output ->
|
|
||||||
// output.outputFileName = "../../../../../../../bin/android_${variant.name}.apk"
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
|
|
||||||
|
// No longer used, as it's not useful for build source template
|
||||||
|
//applicationVariants.all { variant ->
|
||||||
|
// variant.outputs.all { output ->
|
||||||
|
// output.outputFileName = "../../../../../../../bin/android_${variant.name}.apk"
|
||||||
|
// }
|
||||||
|
//}
|
||||||
}
|
}
|
||||||
|
|
||||||
//CHUNK_GLOBAL_BEGIN
|
//CHUNK_GLOBAL_BEGIN
|
||||||
//CHUNK_GLOBAL_END
|
//CHUNK_GLOBAL_END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user