wechat_helper.dart 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. import 'package:flutter/services.dart';
  2. import 'package:flutter/widgets.dart';
  3. import 'package:location/data/consts/web_url.dart';
  4. import 'package:wechat_kit/wechat_kit.dart';
  5. import '../../data/consts/build_config.dart';
  6. class WechatHelper {
  7. WechatHelper._();
  8. static final appId = WechatConfig.wechatAppId;
  9. static final String universalLink = WebUrl.shareUrl;
  10. static Future<void> registerApp() {
  11. return WechatKitPlatform.instance
  12. .registerApp(appId: appId, universalLink: universalLink)
  13. .then((_) {
  14. debugPrint('微信注册成功');
  15. }).catchError((error) {
  16. debugPrint('微信注册失败: $error');
  17. });
  18. }
  19. static Future<void> shareImageToWechat({
  20. required int scene,
  21. Uint8List? imageData,
  22. Uri? imageUri,
  23. }) async {
  24. return WechatKitPlatform.instance.shareImage(
  25. scene: scene,
  26. imageData: imageData,
  27. imageUri: imageUri,
  28. );
  29. }
  30. static Future<void> shareTextToWechat({
  31. required int scene,
  32. required String text,
  33. }) async {
  34. return WechatKitPlatform.instance.shareText(
  35. scene: scene,
  36. text: text,
  37. );
  38. }
  39. static Future<void> shareUrlToWechat({
  40. required int scene,
  41. required String webpageUrl,
  42. String? title,
  43. String? description,
  44. Uint8List? thumbData,
  45. }) async {
  46. return WechatKitPlatform.instance.shareWebpage(
  47. scene: scene,
  48. webpageUrl: webpageUrl,
  49. title: title,
  50. thumbData: thumbData,
  51. description: description);
  52. }
  53. static Future<bool> isInstalled() {
  54. return WechatKitPlatform.instance.isInstalled();
  55. }
  56. }