π Migration guide: 1.0 β 1.1
This guide lists only what changed between the 1.0.0 and 1.1.0 documentation releases.
If you already integrated per 1.0.0 quick-start / initialization docs, you already use initialize β connect / connectUser with JWT + gender + height + weight (no separate userId). You do not need to rework that flow.
Summaryβ
| Area | 1.0.0 docs | 1.1.0 change |
|---|---|---|
| Lifecycle | initialize β connectUser / connect | No change |
| Android imports | com.azeoo.sdk.* | com.azeoo.sdk.core.* + ProGuard |
| Android init | theme, deepLinks, safeArea | + optional environment, connector |
iOS AzeooConfig | locale, analytics, offline, timeout | + logLevel; connector at init |
React Native AzeooProvider | userId, authToken, autoConnect | Removed β call useAzeoo().connect() |
| Flutter embed | buildNutritionMainScreen() in examples | Prefer AzeooSDKContent |
| Flutter module nav | showDiary, showScanner, showSearch | Renamed to actual API methods (see below) |
| New (documented) | β | setClubId, AzeooScreens, AzeooSDKListener |
Androidβ
Update imports and ProGuardβ
1.0.0
import com.azeoo.sdk.AzeooSDK
import com.azeoo.sdk.AzeooConfig
1.1.0
import com.azeoo.sdk.core.AzeooSDK
import com.azeoo.sdk.core.AzeooConfig
ProGuard β replace com.azeoo.sdk.** with:
-keep class com.azeoo.sdk.core.** { *; }
-keep interface com.azeoo.sdk.core.** { *; }
-dontwarn com.azeoo.sdk.core.**
Your initialize / connectUser calls stay the same if they matched the 1.0.0 quick-start.
Optional new init parametersβ
AzeooSDK.initialize(
context = applicationContext,
apiKey = apiKey,
environment = "production", // new β or "staging"
connector = AzeooConnectorConfig.azeoo(clubId = 123L), // new β if your key uses connectors
// β¦ existing config, theme, deepLinks, safeArea
) { error -> /* β¦ */ }
New APIs (optional)β
setClubId(clubId)β switch club for azeoo connector without disconnectAzeooSDK.shared.listenerβAzeooSDKListenerfor Flutter β native eventssdk.modules.screensβ embed standalone screens (recipe, plan, etc.)
iOSβ
AzeooConfig β add logLevelβ
1.0.0
let config = AzeooConfig(
locale: "en",
analyticsEnabled: true,
offlineEnabled: true,
connectionTimeoutSeconds: 30
)
1.1.0
let config = AzeooConfig(
locale: "en",
analyticsEnabled: true,
offlineEnabled: true,
connectionTimeoutSeconds: 30,
logLevel: .warning // new
)
Pass connector: to AzeooSDK.initialize if your API key requires it β see Connectors.
connectUser signature is unchanged from 1.0.0.
Flutterβ
Embedding β prefer AzeooSDKContentβ
1.0.0 quick-start used the example helper:
buildNutritionMainScreen(bottomSafeArea: false);
1.1.0 β use the public embed widget:
import 'package:azeoo_sdk/core/app/azeoo_sdk_content.dart';
Scaffold(body: AzeooSDKContent(bottomSafeArea: false))
initialize, connect, and AzeooSDKModules imperative navigation are unchanged.
Navigation method names (doc corrections)β
If you copied method names from the 1.0.0 Flutter navigation page, update to the real API:
| 1.0.0 doc (incorrect) | 1.1.0 (actual) |
|---|---|
showDiary() | showMainScreen() |
showScanner(β¦) | showBarcodeScanner() / showMobileScanner() |
showSearch() | showNutritionSearch() |
showRecipe(42, β¦) | showRecipe('recipe-id') |
React Nativeβ
This is the main integration change if you used AzeooProvider as documented in 1.0.0.
1.0.0
<AzeooProvider
apiKey={API_KEY}
userId={userId}
authToken={jwt}
autoConnect={true}
β¦
>
1.1.0 β provider initializes only; connect after login:
import { AzeooProvider, useAzeoo } from 'react-native-azeoo-lib';
function LoginScreen() {
const { connect, isInitialized } = useAzeoo();
const onLogin = async (jwt: string) => {
if (!isInitialized) return;
await connect(jwt, gender, height, weight);
};
}
Remove userId, authToken, and autoConnect props from AzeooProvider.
Direct AzeooSDK.initialize + AzeooSDK.connect (1.0.0 quick-start) is unchanged.
Next stepsβ
- Changelog
- 1.1.0 Initialization
- Platform Quick start