biscotti_cmp 1.1.3
biscotti_cmp: ^1.1.3 copied to clipboard
Biscotti CMP Flutter SDK — native consent management with IAB TCF 2.3 compliance.
Biscotti CMP — Flutter SDK #
Native Flutter consent-management SDK for Biscotti CMP, with IAB TCF 2.3 support (CMP ID 497), consent-gated SDK initialisation, App Tracking Transparency coordination (iOS), offline queueing and consent sync.
- Package:
biscotti_cmp· Platforms: Android, iOS · Dart 3.2+ / Flutter 3.16+
Installation #
# pubspec.yaml
dependencies:
biscotti_cmp: ^1.1.3
flutter pub get
Usage #
import 'package:biscotti_cmp/biscotti_cmp.dart';
// Configure early (e.g. in main()) — configure() is async
await BiscottiCMP.instance.configure(
websiteId: 'YOUR_WEBSITE_ID',
apiKey: 'OPTIONAL',
);
// Show the dialog once a BuildContext exists.
await BiscottiCMP.instance.showConsentDialog(context);
// Gate third-party SDKs behind consent
BiscottiCMP.instance.registerSDK(
name: 'firebase_analytics',
category: ConsentCategory.analytics,
initializer: () => FirebaseAnalytics.instance,
);
// Read consent (synchronous, from local cache)
final granted = BiscottiCMP.instance.hasConsent(ConsentCategory.marketing);
final tcString = BiscottiCMP.instance.getConsentToken();
Temporarily running without IAB TCF in a mobile app #
CMP ID 497 is currently registered for the Web environment. For a native app,
create a separate Mobile App property in the Biscotti dashboard, disable IAB
TCF on that child property, and pass its own website ID to configure(). Do not
disable TCF on the website property used by your web banner: tcfEnabled is
website-scoped and would affect every client using that ID.
There is intentionally no app-side switch that can turn a TCF-enabled server configuration into a non-TCF notice. With TCF disabled on the mobile property, the SDK still collects and syncs the four consent categories, but renders no TCF detail layer, generates no TC String, and removes all IABTCF storage keys.
await BiscottiCMP.instance.configure(
websiteId: 'MOBILE_APP_CHILD_WEBSITE_ID',
language: 'de', // optional
);
TCF 2.3 #
Emits a spec-compliant IAB TC string (CMP ID 497, policy version 5, service-specific) including vendor consents / legitimate interests and the disclosed-vendors segment, derived from your per-site Biscotti configuration.
License #
MIT — see LICENSE.