Skip to main content

SDK API (Android)

The Azeoo SDK exposes a single entry point, AzeooSDK. After init and connect, you use the same instance to access user, theme, navigation, and the nutrition and training modules.

Entry point​

  • AzeooSDK.init(...) β€” Initialize once with context, API key, and optional config (locale, theme, deep links, safe area).
  • AzeooSDK.shared β€” The singleton instance after init.
  • connect(userId, token, callback) β€” Attach a user; required before using modules or user API.
  • onReady(callback) β€” Callback when Flutter-side initialization is complete.

API surface​

AreaAccessPurpose
UserAzeooSDK.shared.userProfile, getProfile, updateProfile, refreshProfile, etc.
ThemeAzeooSDK.shared.themesetMode, setPrimaryColor, setLightMode, setDarkMode, getCurrentTheme, etc.
NavigationAzeooSDK.shared.navigationto(), back(), backToRoot(), handleDeepLink(), getCurrentRoute()
NutritionAzeooSDK.shared.modules.nutritiongetFragment(), getView(), showDiary(), showPlans(), showScanner(), etc.
TrainingAzeooSDK.shared.modules.traininggetFragment(), getView(), showWorkouts(), showPlans(), showExercises(), etc.

Quick example​

// 1. Init (e.g. in Application)
AzeooSDK.init(context, apiKey, config)

// 2. Connect when user is authenticated
AzeooSDK.shared.connect("user-123", "jwt-token") { result ->
result.onSuccess {
// 3. Use modules
val fragment = AzeooSDK.shared.modules.nutrition.getFragment()
// or: AzeooSDK.shared.modules.nutrition.showDiary(null)

// 4. User API
val profile = AzeooSDK.shared.user.getProfile()

// 5. Theme
AzeooSDK.shared.theme.setDarkMode()
}
}

Next steps​