#if !ENABLE_RELEASE #define DISABLE_RELEASE #endif public class Example { public void Log() { #if DISABLE_RELEASE UnityEngine.Debug.Log( "テスト" ); #endif } }
上記の様な、リリースビルド用の ENABLE_RELEASE
シンボルが定義されていなければ
開発ビルド用の DISABLE_RELEASE
シンボルを定義して
スクリプト内の開発ビルド用の処理を有効化する処理を記述していたプロジェクトを
Unity5.5にアップデートしたところ、
ENABLE_RELEASE
を定義していなくても DISABLE_RELEASE
が定義されずに
開発ビルド用の処理がまったく呼び出されない現象に遭遇した
PlayerSettings の Scripting Define Symbols に
明示的に DISABLE_RELEASE
を定義するようにしたら
正常に開発ビルド用の処理が呼び出されるようになった
Unity5.5からは#ifの挙動が変わった?