// Copyright (c) 2012-2022 Wojciech Figat. All rights reserved. #pragma once #if PLATFORM_ANDROID || USE_EDITOR #include "Engine/Core/Config/PlatformSettingsBase.h" #include "Engine/Scripting/SoftObjectReference.h" class Texture; /// /// Android platform settings. /// API_CLASS(sealed, Namespace="FlaxEditor.Content.Settings") class FLAXENGINE_API AndroidPlatformSettings : public SettingsBase { DECLARE_SCRIPTING_TYPE_MINIMAL(AndroidPlatformSettings); public: /// /// The application package name (eg. com.company.product). Custom tokens: ${PROJECT_NAME}, ${COMPANY_NAME}. /// API_FIELD(Attributes="EditorOrder(0), EditorDisplay(\"General\")") String PackageName = TEXT("com.${COMPANY_NAME}.${PROJECT_NAME}"); /// /// The application permissions list (eg. android.media.action.IMAGE_CAPTURE). Added to the generated manifest file. /// API_FIELD(Attributes="EditorOrder(100), EditorDisplay(\"General\")") Array Permissions; /// /// Custom icon texture to use for the application (overrides the default one). /// API_FIELD(Attributes="EditorOrder(1030), EditorDisplay(\"Other\")") SoftObjectReference OverrideIcon; public: /// /// Gets the instance of the settings asset (default value if missing). Object returned by this method is always loaded with valid data to use. /// static AndroidPlatformSettings* Get(); // [SettingsBase] void Deserialize(DeserializeStream& stream, ISerializeModifier* modifier) final override { DESERIALIZE(PackageName); DESERIALIZE(Permissions); DESERIALIZE(OverrideIcon); } }; #if PLATFORM_ANDROID typedef AndroidPlatformSettings PlatformSettings; #endif #endif