diff --git a/apps/ios/EryaoProducts.storekit b/apps/ios/EryaoProducts.storekit
index 1ad1326..94dc4b8 100644
--- a/apps/ios/EryaoProducts.storekit
+++ b/apps/ios/EryaoProducts.storekit
@@ -70,8 +70,8 @@
}
],
"settings" : {
- "_applicationInternalID" : "6738123456",
- "_developerTeamID" : "YOUR_TEAM_ID",
+ "_applicationInternalID" : "6764005221",
+ "_developerTeamID" : "T7H95RR33V",
"_failTransactionsEnabled" : false,
"_lastSynchronizedDate" : 756460800,
"_locale" : "zh_CN",
diff --git a/apps/ios/ExportOptions.plist b/apps/ios/ExportOptions.plist
new file mode 100644
index 0000000..3caf2d3
--- /dev/null
+++ b/apps/ios/ExportOptions.plist
@@ -0,0 +1,14 @@
+
+
+
+
+ method
+ app-store
+ teamID
+ T7H95RR33V
+ uploadSymbols
+
+ signingStyle
+ automatic
+
+
diff --git a/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png b/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png
index 9da19ea..553595e 100644
Binary files a/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png and b/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png differ
diff --git a/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png
index 9da19ea..71545d8 100644
Binary files a/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png and b/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png differ
diff --git a/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png
index 9da19ea..0dc4005 100644
Binary files a/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png and b/apps/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png differ
diff --git a/apps/ios/Runner/Base.lproj/LaunchScreen.storyboard b/apps/ios/Runner/Base.lproj/LaunchScreen.storyboard
index f2e259c..e49c404 100644
--- a/apps/ios/Runner/Base.lproj/LaunchScreen.storyboard
+++ b/apps/ios/Runner/Base.lproj/LaunchScreen.storyboard
@@ -16,7 +16,7 @@
-
+
diff --git a/apps/ios/Runner/Info.plist b/apps/ios/Runner/Info.plist
index c79086c..ef3df0d 100644
--- a/apps/ios/Runner/Info.plist
+++ b/apps/ios/Runner/Info.plist
@@ -32,12 +32,6 @@
需要将头像处理结果保存到您的相册
NSMicrophoneUsageDescription
需要麦克风权限用于语音追问
- NSLocalNetworkUsageDescription
- 用于开发调试时连接本地调试服务。
- NSBonjourServices
-
- _dartobservatory._tcp
-
UIApplicationSceneManifest
UIApplicationSupportsMultipleScenes
diff --git a/apps/ios/Runner/PrivacyInfo.xcprivacy b/apps/ios/Runner/PrivacyInfo.xcprivacy
new file mode 100644
index 0000000..9fcf42e
--- /dev/null
+++ b/apps/ios/Runner/PrivacyInfo.xcprivacy
@@ -0,0 +1,84 @@
+
+
+
+
+ NSPrivacyTracking
+
+ NSPrivacyTrackingDomains
+
+ NSPrivacyCollectedDataTypes
+
+
+ NSPrivacyCollectedDataType
+ NSPrivacyCollectedDataTypePhotosAndVideos
+ NSPrivacyCollectedDataTypeLinked
+
+ NSPrivacyCollectedDataTypeTracking
+
+ NSPrivacyCollectedDataTypePurposes
+
+ NSPrivacyCollectedDataTypePurposeUserCustomization
+
+
+
+ NSPrivacyCollectedDataType
+ NSPrivacyCollectedDataTypeVoiceRecordings
+ NSPrivacyCollectedDataTypeLinked
+
+ NSPrivacyCollectedDataTypeTracking
+
+ NSPrivacyCollectedDataTypePurposes
+
+ NSPrivacyCollectedDataTypePurposeAppFunctionality
+
+
+
+ NSPrivacyCollectedDataType
+ NSPrivacyCollectedDataTypePurchases
+ NSPrivacyCollectedDataTypeLinked
+
+ NSPrivacyCollectedDataTypeTracking
+
+ NSPrivacyCollectedDataTypePurposes
+
+ NSPrivacyCollectedDataTypePurposeAppFunctionality
+
+
+
+ NSPrivacyAccessedAPITypes
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategoryFileTimestamp
+ NSPrivacyAccessedAPITypeReasons
+
+ C617.1
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategorySystemBootTime
+ NSPrivacyAccessedAPITypeReasons
+
+ 35F9.1
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategoryDiskSpace
+ NSPrivacyAccessedAPITypeReasons
+
+ E174.1
+
+
+
+ NSPrivacyAccessedAPIType
+ NSPrivacyAccessedAPICategoryUserDefaults
+ NSPrivacyAccessedAPITypeReasons
+
+ CA92.1
+
+
+
+
+
diff --git a/apps/lib/features/auth/presentation/screens/login_screen.dart b/apps/lib/features/auth/presentation/screens/login_screen.dart
index 629ad8b..1a7f3e5 100644
--- a/apps/lib/features/auth/presentation/screens/login_screen.dart
+++ b/apps/lib/features/auth/presentation/screens/login_screen.dart
@@ -11,8 +11,6 @@ import '../../../settings/presentation/screens/legal_document_screen.dart';
import '../../../settings/presentation/utils/legal_document_assets.dart';
import '../../../../l10n/app_localizations.dart';
import '../../../../shared/theme/design_tokens.dart';
-import '../../../../shared/widgets/app_modal_dialog.dart';
-import '../../../../shared/widgets/gua_icon.dart';
import '../../../../shared/widgets/toast/toast.dart';
import '../../../../shared/widgets/toast/toast_type.dart';
@@ -187,26 +185,6 @@ class _LoginScreenState extends State {
);
}
- void _showPolicyDialog(String title, String content) {
- showDialog(
- context: context,
- builder: (dialogContext) {
- return AppModalDialog(
- title: title,
- message: content,
- iconWidget: const GuaIcon(),
- actions: [
- AppModalDialogAction(
- label: AppLocalizations.of(dialogContext)!.dialogConfirm,
- primary: true,
- onPressed: () => Navigator.of(dialogContext).pop(),
- ),
- ],
- );
- },
- );
- }
-
Future _openLegalDocument(LegalDocumentType type) async {
final l10n = AppLocalizations.of(context)!;
await Navigator.of(context).push(
@@ -410,7 +388,7 @@ class _LoginScreenState extends State {
),
const SizedBox(height: AppSpacing.md),
Row(
- crossAxisAlignment: CrossAxisAlignment.start,
+ crossAxisAlignment: CrossAxisAlignment.center,
children: [
Checkbox(
value: _agreementChecked,
@@ -421,11 +399,7 @@ class _LoginScreenState extends State {
},
),
Expanded(
- child: Padding(
- padding: const EdgeInsets.only(
- top: AppSpacing.sm,
- ),
- child: RichText(
+ child: RichText(
text: TextSpan(
style: Theme.of(context)
.textTheme
@@ -447,9 +421,7 @@ class _LoginScreenState extends State {
.privacyPolicy,
),
),
- TextSpan(
- text: l10n.agreementSeparator,
- ),
+ TextSpan(text: l10n.agreementAnd),
TextSpan(
text: l10n.termsOfService,
style: TextStyle(
@@ -464,27 +436,12 @@ class _LoginScreenState extends State {
.termsOfService,
),
),
- TextSpan(text: l10n.agreementAnd),
- TextSpan(
- text: l10n.disclaimer,
- style: TextStyle(
- color: colors.primary,
- decoration:
- TextDecoration.underline,
- ),
- recognizer: TapGestureRecognizer()
- ..onTap = () => _showPolicyDialog(
- l10n.disclaimer,
- l10n.disclaimerContent,
- ),
- ),
],
),
),
),
- ),
- ],
- ),
+ ],
+ ),
],
),
),