SDK Integration

ByteBrew's lightwieght SDKs are compatible with every game engine and platform you use. Download our SDK's on file_download Github and access your ByteBrew Dashboard here


Unity Integration

free_breakfast Before you start: ByteBrew supports Android 6.0 and above & iOS version 9.0 and above. ByteSyze SDK is compatible with iOS 14 updates.

Step 1: Import ByteBrew Unity SDK to your project
Step 2: Go to and select Windows -> ByteBrew -> Create ByteBrew GameObject

This creates a ByteBrew GameObject with the correct scripts attached.

Important: Place your game object on the first scene of your game. ByteSyze SDK does not support offline event caching.

Step 3: Enable Platforms

Navigate to and select Windows -> ByteBrew -> Select ByteBrew settings

Enable which platforms (iOS & Android) you want to track on the inspector panel.

Step 4: Go to your ByteBrew Dashboard

Go to your game settings on the ByteBrew dashboard and find your game keys listed on the dashboard.

Step 5: Input game keys

Inside Unity, input the game keys from your game into the ByteBrew Unity Panel.

Step 6: Manually initialize ByteBrew

You must manually initialize ByteBrew using the code below at the first scene of your game.


// Initialize ByteBrew
ByteBrew.InitializeByteBrew();

                  
Step 7 (optional iOS only, skip if not needed): Call ByteBrew's ATT(App Tracking Transparency) wrapper

ByteBrew offers the ability to not have to call native code in your unity application, if you are using our attribution please call this before initializing our SDK.

If you do choose to use this please make sure that you do the following in your info.plist:

1. Use the Xcode Property List Editor to add: Privacy - Tracking Usage Description
2. In the value string field enter a sentence or statement for the reason behind you tracking request.

// Call ByteBrew ATT Wrapper
ByteBrew.requestForAppTrackingTransparency((status) =>
{
    //Case 0: ATTrackingManagerAuthorizationStatusAuthorized
    //Case 1: ATTrackingManagerAuthorizationStatusDenied
    //Case 2: ATTrackingManagerAuthorizationStatusRestricted
    //Case 3: ATTrackingManagerAuthorizationStatusNotDetermined
    Debug.Log("ByteBrew Got a status of: " + status);
    ByteBrew.InitializeByteBrew();

    //Initialize any other SDKs
});

                  
Step 8: Exporting iOS Requirements

ByteBrew requires the following three iOS Frameworks:

1. Security.Framework
2. AdSupport.Framework

Implement these in your final xcode project as frameworks.

Tracking Purchases

To track a basic in-app purchase event utilize the below method


  ByteBrew.TrackInAppPruchaseEvent("Apple App Store", "USD", 5.99f, "currencyPack01", "Currencies");

                  
Validate Purchases

To validate and track the in-app purchase utilize the specific platform method.

Make sure the receipts have correct JSON string formatting.


  //JSON Format ex. string json = "{\"firstname\":\"john\", \"lastname\":\"doe\",\"age\":30}";

  //Retrieve the iOS receipt from the purchase event that occurs. We will validate it server side so you can view valid purchases in you dashboard.
  string iosReciept = "...";
  ByteBrew.TrackiOSInAppPruchaseEvent("Apple App Store", "USD", 5.99f, "currencyPack01", "Currencies", iosReciept);

  //Retrieve the Android receipt and Signature from the purchase event that occurs. We will validate it server side so you can view valid purchases in you dashboard.
  string googleReciept = "...";
  string googleSignature = "...";
  ByteBrew.TrackGoogleInAppPruchaseEvent("Google Play Store", "USD", 5.99f, "currencyPack01", "Currencies", googleReciept, googleSignature);

                  

Remote Config

Remote configs help you edit your apps settings and configuration without needed to update your app on the store.

When using Remote Config you first must call for the config to get updated. You can call this whenever you want to update the configs.


  //Call the Action handler 
  ByteBrew.RemoteConfigsUpdated(() =>
  {
      //Do Whatever you want here once the config is updated
  });

                  

Finally once you get the OK that the remote config has been updated call this method.


  //Call to get the key specific value and if the key doesn't exist it will return the default variable specified
  ByteBrew.GetRemoteConfigForKey("dailyWeapon", "goldRevolver");

                  

To view your game's remote configs visit the remote config page on the ByteBrew dashboard.