adwhale_sdk_flutter 2.7.2+2 copy "adwhale_sdk_flutter: ^2.7.2+2" to clipboard
adwhale_sdk_flutter: ^2.7.2+2 copied to clipboard

Adwhale SDK Flutter plugin for integrating Adwhale advertising mediation SDK into Flutter applications.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:adwhale_sdk_flutter/adwhale_sdk_flutter.dart';

import 'guide_sample.dart';
import 'advanced_nativead.dart';
import 'advanced_appopenad.dart';
import 'advanced_banner.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  AdWhaleMediationAds.instance.initialize();
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return const MaterialApp(
      home: MainMenuPage(),
    );
  }
}

/// QA 샘플앱(`activity_main.xml`)의 메인 화면과 동일한 구성을 가진 Flutter 메인 메뉴.
class MainMenuPage extends StatelessWidget {
  const MainMenuPage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.white,
      body: Center(
        child: SingleChildScrollView(
          child: Column(
            mainAxisSize: MainAxisSize.min,
            children: [
              _buildCenterButton(
                context,
                text: '기본 배너, 전면, 보상형, 네이티브, 앱오프닝 테스트',
                onPressed: () {
                  Navigator.of(context).push(
                    MaterialPageRoute(builder: (_) => const GuideSamplePage()),
                  );
                },
              ),
              const SizedBox(height: 12),
              _buildCenterButton(
                context,
                text: '고급 배너 테스트',
                onPressed: () {
                  Navigator.of(context).push(
                    MaterialPageRoute(builder: (_) => const AdvancedBannerPage()),
                  );
                },
              ),
              const SizedBox(height: 12),
              _buildCenterButton(
                context,
                text: '고급 네이티브광고 테스트',
                onPressed: () {
                  Navigator.of(context).push(
                    MaterialPageRoute(builder: (_) => const AdvancedNativeAdPage()),
                  );
                },
              ),
              const SizedBox(height: 12),
              _buildCenterButton(
                context,
                text: '고급 앱오프닝 테스트',
                onPressed: () {
                  Navigator.of(context).push(
                    MaterialPageRoute(builder: (_) => const AdvancedAppOpenAdPage()),
                  );
                },
              ),
              // NOTE: 숨김 처리 (요청: '고급 전면 테스트')
              // _buildCenterButton(...),
              // NOTE: 숨김 처리 (요청: '고급 보상형전면 테스트')
              // _buildCenterButton(...),
              // NOTE: 숨김 처리 (요청: '비UI 스레드 테스트')
              // _buildCenterButton(...),
            ],
          ),
        ),
      ),
    );
  }

  Widget _buildCenterButton(
    BuildContext context, {
    required String text,
    required VoidCallback onPressed,
  }) {
    return ElevatedButton(
      onPressed: onPressed,
      style: ElevatedButton.styleFrom(
        backgroundColor: const Color(0xFF6739F5), // 스크린샷과 비슷한 보라색
        foregroundColor: Colors.white, // 텍스트/아이콘 색상
        padding: const EdgeInsets.symmetric(horizontal: 20, vertical: 12),
        textStyle: const TextStyle(fontSize: 13),
        shape: RoundedRectangleBorder(
          borderRadius: BorderRadius.circular(4),
        ),
      ),
      child: Text(
        text,
        textAlign: TextAlign.center,
      ),
    );
  }
}
0
likes
135
points
4
downloads

Publisher

unverified uploader

Weekly Downloads

Adwhale SDK Flutter plugin for integrating Adwhale advertising mediation SDK into Flutter applications.

Homepage

Documentation

API reference

License

MIT (license)

Dependencies

flutter, meta, plugin_platform_interface, visibility_detector

More

Packages that depend on adwhale_sdk_flutter

Packages that implement adwhale_sdk_flutter