pnlight_sdk 0.3.4
pnlight_sdk: ^0.3.4 copied to clipboard
Flutter wrapper for PNLight iOS SDK.
PNLight SDK - Flutter Plugin #
A Flutter plugin that provides iOS integration with the PNLight SDK, enabling comprehensive app analytics, purchase tracking, and device motion monitoring.
Features #
- 🚀 Easy iOS SDK integration for Flutter apps
- 📊 Automatic app start and first install tracking
- 💳 In-app purchase validation and tracking
- 📱 Device motion and orientation monitoring
- 🎯 Custom event logging with parameters
- 🔒 Privacy-compliant IDFA collection (with user consent)
- 📈 Real-time analytics and reporting
Installation #
Add this to your package's pubspec.yaml file:
dependencies:
pnlight_sdk: ^0.1.0
Then run:
flutter pub get
iOS Setup #
-
Add the required frameworks to your iOS project in Xcode:
- StoreKit.framework
- CoreMotion.framework
- AdSupport.framework
- AppTrackingTransparency.framework (iOS 14.0+)
-
For iOS 14.0+ apps that need IDFA tracking, add the
NSUserTrackingUsageDescriptionkey to yourInfo.plist:
<key>NSUserTrackingUsageDescription</key>
<string>This app uses device tracking to provide personalized analytics and improve user experience.</string>
Usage #
Initialize the SDK #
Initialize the PNLight SDK with your API key in your app's main function:
import 'package:pnlight_sdk/pnlight_sdk.dart';
void main() async {
WidgetsFlutterBinding.ensureInitialized();
// Initialize PNLight SDK
await PNLightSDK.initialize('YOUR_API_KEY_HERE');
runApp(MyApp());
}
Validate Purchases #
Automatically validate in-app purchases:
bool isValid = await PNLightSDK.validatePurchase();
// Handle validation result
Log Custom Events #
Track custom events with optional parameters:
// Simple event
await PNLightSDK.logEvent('button_tapped');
// Event with parameters
await PNLightSDK.logEvent('purchase_completed', {
'product_id': 'premium_subscription',
'amount': 9.99,
'currency': 'USD',
});
Platform Support #
- ✅ iOS 12.0+
- ❌ Android (iOS only SDK)
Requirements #
- Flutter: >=3.3.0
- Dart: >=2.17.0 <4.0.0
- iOS: 12.0+
License #
This plugin wraps the PNLight SDK. Please refer to the PNLight website for licensing information.
Contributing #
Contributions are welcome! Please feel free to submit a Pull Request.
Support #
For support and questions, visit pnlight.app or create an issue in this repository.