ipdsdk_android 1.0.80 copy "ipdsdk_android: ^1.0.80" to clipboard
ipdsdk_android: ^1.0.80 copied to clipboard

outdated

IPDSDK Android plugin. Support SplashAd\RewardVideo\InterstitialAd and other contents. Required Flutter version >=3.0.0 and SDK>=2.17.0.

example/lib/main.dart

import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter/scheduler.dart';
import 'dart:async';

import 'package:flutter/services.dart';
import 'package:fluttertoast/fluttertoast.dart';
import 'package:ipdsdk_android/ipd_android.dart';
import 'package:ipdsdk_android/ipd_custom_controller.dart';
import 'package:ipdsdk_android/event/event_action.dart';

import 'data/test_pos_id.dart';
import 'widget/main_list.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  /// 当前IPD版本
  String _sdkVersion = 'Unknown';

  @override
  void initState() {
    super.initState();
    // 获取SDK版本号
    initSdkVersion();
    // 初始化SDK
    SchedulerBinding.instance.addPostFrameCallback((_) => {initSdk()});
  }

  /// 初始化SDK
  void initSdk() {
    IPDAndroid.init(TestPosId.appId,
        customController: IPDCustomController(canUseAndroidId: true),
        initListener: (ret) {
      if (ret.action == IPDEventAction.initSuccess) {
        Fluttertoast.showToast(msg: "初始化成功");
      } else {
        Fluttertoast.showToast(msg: "初始化失败:" + ret.msg!);
        if (kDebugMode) {
          print("${ret.action}:${ret.code}-${ret.extra!}");
        }
      }
    });
  }

  Future<void> initSdkVersion() async {
    String sdkVersion;
    try {
      sdkVersion = await IPDAndroid.sdkVersion ?? 'Unknown ipd version';
    } on PlatformException {
      sdkVersion = 'Failed to get ipd version.';
    }

    if (!mounted) return;

    setState(() {
      _sdkVersion = sdkVersion;
    });
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData(
        visualDensity: VisualDensity.adaptivePlatformDensity,
        appBarTheme: const AppBarTheme(
          backgroundColor: Color(0xFFB22222),
          centerTitle: true,
          titleTextStyle:
              TextStyle(color: Colors.white, fontWeight: FontWeight.bold),
        ),
      ),
      home: Scaffold(
        appBar: AppBar(
          title: const Text('IPD-Demo'),
        ),
        body: Container(
          color: Colors.white,
          child: Column(
            children: [
              const SizedBox(height: 4),
              const Expanded(
                child: MainList(),
              ),
              Text("IPD-Version:$_sdkVersion\n"),
              const SizedBox(height: 20),
            ],
          ),
        ),
      ),
    );
  }
}
0
likes
0
points
24
downloads

Publisher

unverified uploader

Weekly Downloads

IPDSDK Android plugin. Support SplashAd\RewardVideo\InterstitialAd and other contents. Required Flutter version >=3.0.0 and SDK>=2.17.0.

Homepage

License

unknown (license)

Dependencies

flutter

More

Packages that depend on ipdsdk_android

Packages that implement ipdsdk_android