jpush_flutter_plugin 0.0.1-alpha.6
jpush_flutter_plugin: ^0.0.1-alpha.6 copied to clipboard
This plugin implements `jpush`'s message push service, supports iOS & Android.
// Copyright (c) 2022, Kimmy
// https://kimmy.me
//
// Use of this source code is governed by an MIT-style
// license that can be found in the LICENSE file or at
// https://opensource.org/licenses/MIT.
import 'package:flutter/material.dart';
import 'package:jpush_flutter_plugin/jpush_flutter_plugin.dart';
Future<void> main() async {
WidgetsFlutterBinding.ensureInitialized();
await setDebugMode(debugMode: true);
await setAuth(auth: true);
await init('3d3593296cc489e91041f7b8', 'app-store', (call) {
print('[method]: ${call.method}');
});
Future.delayed(const Duration(seconds: 5), () async {
await setAlias(0, 'gqwyudagdasgcygewyufdgewyuqgdfqwgf');
});
// await deleteAlias(0);
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({super.key});
@override
Widget build(BuildContext context) {
return const MaterialApp(home: HomePage());
}
}
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
String? _platformName;
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(title: const Text('JpushFlutterPlugin Example')),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
if (_platformName == null)
const SizedBox.shrink()
else
Text(
'Platform Name: $_platformName',
style: Theme.of(context).textTheme.headline5,
),
const SizedBox(height: 16),
ElevatedButton(
onPressed: () async {
try {
final result = await getPlatformName();
setState(() => _platformName = result);
} catch (error) {
ScaffoldMessenger.of(context).showSnackBar(
SnackBar(
backgroundColor: Theme.of(context).primaryColor,
content: Text('$error'),
),
);
}
},
child: const Text('Get Platform Name'),
),
],
),
),
);
}
}