Documentation Index
Fetch the complete documentation index at: https://docs.gameball.co/llms.txt
Use this file to discover all available pages before exploring further.
Push Notifications
Gameball Flutter SDK supports registering push tokens for Firebase and Huawei devices. Pass the token and provider when initializing the customer.
Register the Push Token
import 'package:gameball_sdk/gameball_sdk.dart';
import 'package:gameball_sdk/models/enums/push_provider.dart';
final request = InitializeCustomerRequestBuilder()
.customerId("customer-123")
.email("john@example.com")
.deviceToken(firebaseToken) // FCM token
.pushProvider(PushProvider.Firebase) // or PushProvider.Huawei
.build();
await GameballApp.getInstance().initializeCustomer(request, (response, error) {
if (error != null) {
print("Failed to register push token: $error");
}
});
deviceToken and pushProvider must be provided together. If one is set, the other is required.
Handle Token Refresh (Firebase example)
import 'package:firebase_messaging/firebase_messaging.dart';
import 'package:gameball_sdk/gameball_sdk.dart';
import 'package:gameball_sdk/models/enums/push_provider.dart';
FirebaseMessaging.instance.onTokenRefresh.listen((token) async {
final refreshRequest = InitializeCustomerRequestBuilder()
.customerId("customer-123")
.deviceToken(token)
.pushProvider(PushProvider.Firebase)
.build();
await GameballApp.getInstance().initializeCustomer(refreshRequest, (res, err) {
if (err != null) {
print("Failed to refresh push token: $err");
}
});
});
Huawei Devices
import 'package:gameball_sdk/gameball_sdk.dart';
import 'package:gameball_sdk/models/enums/push_provider.dart';
final huaweiRequest = InitializeCustomerRequestBuilder()
.customerId("customer-123")
.deviceToken(hmsToken)
.pushProvider(PushProvider.Huawei)
.build();
await GameballApp.getInstance().initializeCustomer(huaweiRequest, (res, err) {
// Handle response
});
Call initializeCustomer after login/registration with the latest token to keep notifications working across devices.