Skip to content
This repository has been archived by the owner on May 17, 2022. It is now read-only.

O.2 Init Functions

Hadi Tavakoli edited this page Jul 8, 2019 · 1 revision

Initialize Firebase Functions

You can initialize the Functions ANE by calling Functions.init(null); As soon as you initialized the firebaseFunctions.ane in your project, you will be able to call the callable functions which are deployed to your Firebase console.

Notice: Before initializing Functions, you must have already successfuly initialized the FirebaseCore.

Cloud Functions locations

Cloud Functions is regional, which means the infrastructure that runs your Cloud Function is located in specific regions and is managed by Google to be redundantly available across all the zones within those regions.

When selecting what regions to run your functions in, your primary considerations should be latency and availability. You can generally select regions close to your users, but you should also consider the location of the other products and services that your app uses. Using services across multiple regions can affect your app's latency, as well as pricing.

Cloud Functions is available in the following regions:

us-central1 (Iowa)
us-east1 (South Carolina)
europe-west1 (Belgium)
europe-west2 (London)
asia-east2 (Hong Kong)
asia-northeast1 (Tokyo)

When initializing the Functions, you can specify the region as follow.

import com.myflashlab.air.extensions.firebase.functions.Functions;

// pass null and the default value, us-central1, will be used
Functions.init("us-central1");

// prepare a JSON-format Object
var obj:Object = {text:"This msg is sent from AIR!"};

Functions.callFunction("helloWorldForAIR", obj, function ($data:String, $error:Error):void
{
  if($error)
  {
    trace($error.errorID + " > " + $error.message);
  }
  else
  {
    trace($data);
  }
});

The helloWorldForAIR is the name of the Function which you have already deployed. To know how functions are written and deployed to server, read here.

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