Есть ли в Flash Builder 4.5 способ узнать, для какой платформы (Android или iOs) я создаю проект во время компиляции?

Я хочу создать проект в Flash Builder 4.5 как для Android, так и для iOS. Обе сборки используют один и тот же код, за исключением второстепенного класса: Android использует 1 класс, а iOS — другой.

Вместо того, чтобы менять его вручную каждый раз при компиляции, я хочу найти способ сообщить FB, какой класс включать в каждую из сборок. Я не могу включить оба и выполнить проверку во время выполнения, потому что эти классы имеют метатеги EMBED, которые значительно увеличат размер файла, если я включу оба.

Есть ли способ сделать это?


person Indigon    schedule 28.08.2011    source источник


Ответы (1)


Вы можете использовать переменные компилятора, чтобы сделать это в своем классе:

пример: Пользовательский импорт

OS_CONFIG::ANDROID{
        import com.android.foo;
}

OS_CONFIG::IOS{
        import com.ios.foo;
}

Вы также можете добавить код между {}

И добавьте аргументы компилятора:

Компиляция для андроида

-define+=OS_CONFIG::IOS,false -define+=OS_CONFIG::ANDROID,true

или скомпилировать для ios

-define+=OS_CONFIG::IOS,true -define+=OS_CONFIG::ANDROID,false
person Simon Eyraud    schedule 29.08.2011