Skip to content
Tua Rua edited this page May 24, 2020 · 38 revisions

Welcome to the Firebase-ANE wiki!

N.B. You must use a Mac to build an iOS app using these ANEs. Windows is NOT supported.

iOS

The latest version (0.12.0) is built against iOS 13.3 SDK and not currently working.

Please register your interest with HARMAN in getting this issue fixed!!

https://github.com/Gamua/Adobe-Runtime-Support/issues/212

You may use the previous version (0.6.0) but be aware this means it cannot be used in conjunction with the latest version of our other ANEs. You will need to use the one with FreSwift 3.1.0.

Prerequisites

You will need

  • AIR 33.0.2.338+
  • Xcode 11.3
  • wget on macOS via brew install wget
  • Powershell on Windows
  • 7-Zip on Windows

Downloading Required Files

Using Terminal on Mac | Command Prompt on Windows

Check out the repo

git clone https://github.com/tuarua/Firebase-ANE.git

Change directory into the example folder eg

cd /MyMac/dev/AIR/Firebase-ANE/example

Run the "get_dependencies" scripts for iOS

bash /MyMac/dev/AIR/Firebase-ANE/example/get_ios_dependencies.sh

Run the "get_dependencies" scripts for Android

bash /MyMac/dev/AIR/Firebase-ANE/example/get_android_dependencies.sh

If using Windows for Android use Powershell

PS get_android_dependencies.ps1

These scripts download the FirebaseANEs and dependencies. eg:

  • example/ios_dependencies/*
  • example/android_dependencies/com.google.firebase.firebase-firestore-17.0.1.ane
  • native_extension/FirestoreANE/ane/FirestoreANE.ane
  • native_extension/AnalyticsANE/ane/AnalyticsANE.ane
  • etc ...

iOS: Packaging Frameworks Dependencies

The iOS FirebaseANEs are written in Swift. We need to package the Swift libraries (along with a couple of dynamic frameworks) with our AIR app

https://raw.githubusercontent.com/wiki/tuarua/Firebase-ANE/images/frameworks-package.png

To find out more about writing Swift based ANEs see FreSwift

Modifications to AIR SDK

We need to patch some files in AIR SDK.

  • Copy the files from AIRSDK_additions into the corresponding folders in your AIRSDK.
  • Create a file called adt.cfg under lib/ with the following contents:

UncompressedExtensions=jpg,jpeg,tflite,lite,emd,pb,tfl,wav,mp3,mp4

AIR 32 & 33

This ANE is built against AIR 33 SDK. If you wish to use with AIR 32 you will need to replace dx.jar in lib/android/bin/ with this one

You should use AIR 32 for iOS builds

IDE Java Memory

If you are including many FirebaseANEs (or many ANEs in general) you may get Memory errors from ADT when compiling your app. Ensure you are allocating a large enough JVM heap size:

For IntelliJ:

https://raw.githubusercontent.com/wiki/tuarua/Firebase-ANE/images/heap-size.png

For Flash Builder:

https://helpx.adobe.com/flash-builder/kb/sluggish-performance-out-memory-errors.html

Clone this wiki locally