Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hansemannn/titanium-firebase-core
Use the Firebase Core SDK in the Titanium SDK π
https://github.com/hansemannn/titanium-firebase-core
axway firebase firebase-core javascript native titanium titanium-firebase
Last synced: about 2 months ago
JSON representation
Use the Firebase Core SDK in the Titanium SDK π
- Host: GitHub
- URL: https://github.com/hansemannn/titanium-firebase-core
- Owner: hansemannn
- License: other
- Created: 2017-10-18T11:06:47.000Z (over 7 years ago)
- Default Branch: main
- Last Pushed: 2024-04-07T15:47:46.000Z (10 months ago)
- Last Synced: 2024-05-01T20:23:42.021Z (9 months ago)
- Topics: axway, firebase, firebase-core, javascript, native, titanium, titanium-firebase
- Language: Objective-C
- Homepage:
- Size: 161 MB
- Stars: 31
- Watchers: 13
- Forks: 23
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Firebase Core - Titanium Module
Use the native Firebase SDK in Axway Titanium. This repository is part of the [Titanium Firebase](https://github.com/hansemannn/titanium-firebase) project. This module is required for iOS but not needed anymore for Android. Since Ti 9.0.0 gradle will automatically read the configuration (see [Firebase-Core](https://github.com/hansemannn/titanium-firebase#installation))## Supporting this effort
The whole Firebase support in Titanium is developed and maintained by the community (`@hansemannn` and `@m1ga`). To keep
this project maintained and be able to use the latest Firebase SDK's, please see the "Sponsor" button of this repository,
thank you!## Requirements
- [x] Titanium SDK 10.0.0+## Download
- [x] [Stable release](https://github.com/hansemannn/titanium-firebase-core/releases)
- [x] [![gitTio](http://hans-knoechel.de/shields/shield-gittio.svg)](http://gitt.io/component/firebase.core)## Installation
Read the [Firebase-Core](https://github.com/hansemannn/titanium-firebase#installation) install part if you set up a new project.
## API's
### `FirebaseCore`
#### Methods
##### `configure() -> Boolean`
Configure Firebase without additional parameters.
Returns `false` if it was already configured or if there was an error.
##### `configure(parameters)`
Configure Firebase with configuration parameters:
| Name | Type | Component | Platform |
| - | - | - | - |
| `file` | String | | *By passing the `file` property, you can give a location to the Firebase plist file (usually named "GoogleService-Info.plist"), which contains all necessary properties for your Firebase project. This makes all other properties unnecessary. For Android: place the file in `/app/assets/android/` and pass just the filename.
Or you can configure Firebase without a file by passing these parameters:
| Name | Type | Component | Platform |
| - | - | - | - |
| `googleAppID` | String | | *
| `GCMSenderID` | String | Cloud Messaging | *
| `APIKey` | String | Auth | *
| `projectID` | String | | *
| `databaseURL` | String | Real Time Database | *
| `storageBucket` | String | Storage Bucket | *
| `bundleID` | String | | iOS
| `clientID` | String | | iOS
| `trackingID` | String | | iOS
| `androidClientID` | String | | iOS
| `deepLinkURLScheme` | String | | iOS
| `logLevel` | `LOG_LEVEL_* [ERROR\|WARNING\|NOTICE\|INFO\|DEBUG]` | | iOS
| `applicationID` | String | Analytics | Android## Examples
```js
// Require the Firebase Core module
var FirebaseCore = require('firebase.core');// Configure your Firebase API's (only required once for all)
FirebaseCore.configure(); // default google-services.json/GoogleService-Info.plist will be used
// alternative way:
FirebaseCore.configure({
APIKey: "AIYasZBtfJh..........",
projectID: "test-12345",
storageBucket: "test-12345.appspot.com",
applicationID: "1:12345678890:android:abc123efg456"
});// alternative way:
FirebaseCore.configure({
file: "filename.json"
});
```## Build
```js
cd [ios|android]
appc run -p [ios|android] --build-only
```## iOS notes
If you are also using [Ti.GoogleSignIn](https://github.com/hansemannn/titanium-google-signin) you will probably
have a `duplicate symbols` error. Both `Ti.GoogleSignIn` and this module share some common dependencies.
In order to solve this conflict, remove the *GTMSessionFetcher.framework* and *GoogleToolboxForMac.framework* files
from `/modules/iphone/firebase.core//platform` and rebuild your app.## Android notes
check [firebase-core](https://github.com/hansemannn/titanium-firebase#%EF%B8%8F-android-notes) for more information.
## Legal
This module is Copyright (c) 2017-Present by Hans KnΓΆchel. All Rights Reserved.