|
@@ -7,6 +7,7 @@ import 'package:doublefeel_flutter/data/local/user_account_storage.dart'; |
|
@@ -7,6 +7,7 @@ import 'package:doublefeel_flutter/data/local/user_account_storage.dart'; |
|
7
|
import 'package:doublefeel_flutter/data/local/user_preferences_storage.dart';
|
7
|
import 'package:doublefeel_flutter/data/local/user_preferences_storage.dart';
|
|
8
|
import 'package:doublefeel_flutter/pigeon/health_kit_api.g.dart';
|
8
|
import 'package:doublefeel_flutter/pigeon/health_kit_api.g.dart';
|
|
9
|
import 'package:doublefeel_flutter/pigeon/health_kit_raw_data_api.g.dart';
|
9
|
import 'package:doublefeel_flutter/pigeon/health_kit_raw_data_api.g.dart';
|
|
|
|
10
|
+import 'package:doublefeel_flutter/pigeon/platform_api.g.dart';
|
|
10
|
import 'package:get/get.dart';
|
11
|
import 'package:get/get.dart';
|
|
11
|
import 'package:permission_handler/permission_handler.dart';
|
12
|
import 'package:permission_handler/permission_handler.dart';
|
|
12
|
|
13
|
|
|
@@ -23,6 +24,7 @@ class UserOnboardingController extends GetxController { |
|
@@ -23,6 +24,7 @@ class UserOnboardingController extends GetxController { |
|
23
|
UserOnboardingController(this._userApi);
|
24
|
UserOnboardingController(this._userApi);
|
|
24
|
final UserApi _userApi;
|
25
|
final UserApi _userApi;
|
|
25
|
final HealthKitHostApi _hostApi = HealthKitHostApi();
|
26
|
final HealthKitHostApi _hostApi = HealthKitHostApi();
|
|
|
|
27
|
+ final PlatformHostApi _platformHostApi = PlatformHostApi();
|
|
26
|
|
28
|
|
|
27
|
bool hasSelection(int pageIndex) =>
|
29
|
bool hasSelection(int pageIndex) =>
|
|
28
|
selections[pageIndex]?.isNotEmpty ?? false;
|
30
|
selections[pageIndex]?.isNotEmpty ?? false;
|
|
@@ -275,10 +277,7 @@ class UserOnboardingController extends GetxController { |
|
@@ -275,10 +277,7 @@ class UserOnboardingController extends GetxController { |
|
275
|
}
|
277
|
}
|
|
276
|
|
278
|
|
|
277
|
// 未决定 → 弹出系统授权弹窗
|
279
|
// 未决定 → 弹出系统授权弹窗
|
|
278
|
- final result = await Permission.notification.request();
|
|
|
|
279
|
- AppLogger.d(result.isGranted
|
|
|
|
280
|
- ? 'Notification authorization granted'
|
|
|
|
281
|
- : 'Notification authorization skipped');
|
280
|
+ final result = await _platformHostApi.requestNotificationAuth();
|
|
282
|
} catch (error) {
|
281
|
} catch (error) {
|
|
283
|
AppLogger.e('Notification authorization failed: $error');
|
282
|
AppLogger.e('Notification authorization failed: $error');
|
|
284
|
}
|
283
|
}
|