> For the complete documentation index, see [llms.txt](https://fullstackindie.gitbook.io/easy-code-for-vivox/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://fullstackindie.gitbook.io/easy-code-for-vivox/related-info/pre-processor-directives.md).

# Pre-Processor Directives

**The code below** is called a **preprocessor directive** and is only valid if the build is for **Android** or **iOS** platform or else the compiler will ignore this code

```csharp
#if PLATFORM_ANDROID
using UnityEngine.Android;
#elif UNITY_IOS
 using UnityEngine.iOS;
#endif
```

[C# preprocessor directives | Microsoft Docs](https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/preprocessor-directives/)

I could make 2 separate scripts, 1 for Windows & 1 for Android, but since most of the code is similar instead of repeating myself I can just implement a preprocessor directive. To see what preprocessor directives are in your Unity Project you can go to ***`File/Build Settings/Player Settings/Player/Other Settings/Scripting Define Symbols`*** *<mark style="color:orange;">**This doesn't list every available preprocessor directive, such as the**</mark>***&#x20;`PLATFORM_ANDROID`&#x20;**<mark style="color:orange;">**shown above**</mark>

![](/files/-MWHXmttmXs0jBPWOxnn)

or

***`Edit/Project Settings/Player/Other Settings/Scripting Define Symbols`***

![](/files/-MWHXmtu5RCm7xMX1NGr)
