Skip to content
This repository has been archived by the owner on May 17, 2022. It is now read-only.
Hadi Tavakoli edited this page May 20, 2018 · 16 revisions

Thanks for your interest in our Firebase Air Native Extension. This Wiki includes all the information you would need to setup Firebase services in your Air app. But before talking about the tech side, let's take a few minutes and see why Firebase is such a big deal.

What is firebase and what does it do?

In Google words, Firebase is:

Firebase gives you the tools to develop high-quality apps, grow your user base, and earn more money. We cover the essentials so you can monetize your business and focus on your users.

Firebase gives you the tools to develop high-quality apps, grow your user base, and earn more money. It covers the essentials so you can monetize your business and focus on your users.

We believe that the Firebase project is awesome and will help mobile app developers BIG time. It will cut down the amount of time you would spend on setting up server-side logics and besides that, it ensures that your content will always be available to your users as fast as possible. No matter how large your app would grow, your Firebase server-side configuration can also grow with that and you don't have to worry about server costs and setup troubles.

Moreover, Firebase pricing plan is unbelievably generous! You can start with a free plan and upgrade only if your app is a hit. You pay as you go, risk free! Below is the list of all the current services which Firebase provides that we have developed AIR Native Extensions for.

With the Firebase Air Native Extension, we are providing you with native access to all these Firebase features.

Why should I use Firebase?

You will simply save a lot of time and money if you decide to use Firebase. Just do the calculation! Making the decision to use Firebase is entierly up to you. Though, there are a few kinds of questions you might face soon or later when you are learning more about Firebase which I try to answer them in simple words right here:

  1. GCM is depricated in favour of FCM. Does that mean that I am forced to move to Firebase? No, you're not forced! Our GCM ANE will continue to work as Google has said that. If you are using GCM, and you have already setup your server with that, you can continue working with that with no problem. However, we don't sell the GCM ANE anymore nor we would update it anylonger.
  2. Admob is now part of Firebase. Does it mean that I have to enable the Firebase ANE in my app? No you don't, we have updated our Admob ANE so it can be used with or without Firebase. It's totally optional.
  3. My app is already online working with my own VPS/dedicated server, can I move to Firebase? Of course you can! You just need to make sure you are transferring the data correctly to your Firebase database/storage. It can be a hard transition based on how your app works, but it's doable. besides that, you can move only part of your data to Firebase, for example you can move your server side files only to Firebase and leave the database as it is, or vice versa.
  4. We have many users and my app is sometimes slow for server connections, Does Firebase help with that? Yes, that is one of the main reasons that Firebase was created anyway. It scales automatically no matter how large your audience would be. You don't have to think about CDNs and server farms at all, Firebase infrastructure will take care of all those tasks without you even noticing.

How should I start using Firebase in my Air app?

We have transpiled every Firebase library to ActionScript through our pile of Firebase ANEs. You can use only the ANEs you need. All of our Firebase ANEs will run over the FirebaseCore.ane. For instance, if you wish to use the Firebase Cloud Messaging service, FCM, you would need to embed the Core Firebase ANE first and then embed the FCM ane and then, you will have access to all the features that FCM provides.

To begin with, read the get started section on the right side of this Wiki page. Also you will enjoy watching this introduction video:

Firebase introduction


DISCRIMINATION: Firebase SDKs are developed by Google and they own every copyright to the Firebase "native" projects. However, we have used their "compiled" native SDKs to develop the ActionScript API to be used in Adobe Air mobile projects. Moreover, as far as the documentations, we have copied and when needed has modified the Google documents so it will fit the needs of Adobe Air community. If you wish to see the original documentations in Android/iOS, visit here. But if you are interested to do things in Adobe Air, then you are in the right place.

Introduction to Firebase ANEs collection for Adobe Air apps


Get Started with Firebase Core in AIR

  1. Prerequisites
  2. Add Firebase to your app
  3. Add the Firebase SDK
  4. Init Firebase Core
  5. Available ANEs
  6. Managing Firebase iid

Get Started with Analytics

  1. Add Analytics ANE
  2. Init Analytics ANE
  3. Log Events
  4. Set User Properties

Get Started with Crashlytics

  1. Add Crashlytics ANE
  2. Test Your Implementation
  3. Customize Crash Reports
  4. Upload .dSYM for iOS apps

Get Started with DynamicLinks

  1. Add DynamicLinks ANE
  2. Init DynamicLinks ANE
  3. Create DynamicLinks
  4. Receive DynamicLinks
  5. View Analytics

Get Started with Authentication

  1. Add Authentication
  2. Init Authentication
  3. Manage Users
  4. Phone Number
  5. Custom Auth
  6. Anonymous Auth
  7. State in Email Actions
  8. Email Link Authentication

Get Started with FCM + OneSignal

  1. Add FCM ANE
  2. Init FCM ANE
  3. Send Your 1st Message
  4. Send Msg to Topics
  5. Understanding FCM Messages
  6. init OneSignal

Get Started with Firestore

  1. Add Firestore
  2. Init Firestore
  3. Add Data
  4. Transactions & Batches
  5. Delete Data
  6. Manage the Console
  7. Get Data
  8. Get Realtime Updates
  9. Simple and Compound
  10. Order and Limit Data
  11. Paginate Data
  12. Manage Indexes
  13. Secure Data
  14. Offline Data
  15. Where to Go From Here

Get Started with Realtime Database

  1. Add Realtime Database
  2. Init Realtime Database
  3. Structure Your Database
  4. Save Data
  5. Retrieve Data
  6. Enable Offline Capabilities

Get Started with Remote Config

  1. Parameters and Conditions
  2. Add Remote Config
  3. Init Remote Config

Get Started with Performance

  1. Add Performance ANE
  2. Init & Start Monitoring

Get Started with Storage

  1. Add Storage ANE
  2. Init Storage ANE
  3. Upload Files to Storage
  4. Download Files to Air
  5. Use File Metadata
  6. Delete Files

Get Started with Functions

  1. Write & Deploy Functions
  2. Add Functions ANE
  3. Init Functions
Clone this wiki locally