base 0.3.1 copy "base: ^0.3.1" to clipboard
base: ^0.3.1 copied to clipboard

One code, two modes, use cupertino's widgets on ios, use material's widget on android or fuchsia.

example/lib/main.dart

import 'dart:io' show Platform;

import 'package:example/app.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/foundation.dart'
    show debugDefaultTargetPlatformOverride;
import 'package:flutter/material.dart';
import 'package:flutter/services.dart' show DeviceOrientation, SystemChrome;
import 'package:provider/provider.dart';

import 'provider/app_provider.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  _setTargetPlatformForDesktop();
  SystemChrome.setPreferredOrientations(<DeviceOrientation>[
    DeviceOrientation.portraitUp,
    DeviceOrientation.portraitDown
  ]).then((_) {
    runApp(
      ChangeNotifierProvider<AppProvider>.value(
        value: AppProvider(
          brightness: WidgetsBinding.instance.window.platformBrightness,
        ),
        child: App(),
      ),
    );
  });
}

/// 适配桌面客户端,mac用ios,windows,linux用android
void _setTargetPlatformForDesktop() {
  TargetPlatform targetPlatform;
  if (Platform.isMacOS) {
    targetPlatform = TargetPlatform.iOS;
  } else if (Platform.isLinux || Platform.isWindows) {
    targetPlatform = TargetPlatform.android;
  }
  if (targetPlatform != null) {
    debugDefaultTargetPlatformOverride = targetPlatform;
  }
}
1
likes
40
points
54
downloads

Publisher

unverified uploader

Weekly Downloads

One code, two modes, use cupertino's widgets on ios, use material's widget on android or fuchsia.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter

More

Packages that depend on base